手记

Openshif对集群的扩容与缩容

  • Openshift是一个云平台,它是以集群的方式提供服务。前面已经介绍了,业务都跑在Openshift的Node节点上。随着业务的不断变化,扩展或者消亡,我们的Node提供的服务需求也会不断变化。这时就需要对Node节点进行增删管理。

  • 本篇只介绍CentOS7下管理Node节点。

  • Openshift使用Ansible playbook来实现扩容与缩容

1. oc命令查看当前Node节点的状态

oc get node --show-labels

2. 添加Node节点到已存在的集群

准备好需要添加的主机

节点类型说明
Nodes
物理主机或者虚拟机
系统:Fedora 21, CentOS 7.3, 7.4或者7.5
NetworkManager版本1.0以上
最少1vCPU
最少8GB内存
/var/最少15GB空间
/usr/local/bin最少1GB空间
容器临时目录最少1GB空间
 

设置主机的hostname

hostnamectl --static sethostname infra1.example.com

集群中的DNS中添加新加主机的域名与ip的解析

#/etc/dnsmasq.d/more.confaddress=/infra1.example.com/192.168.0.8systemctl restart dnsmasq

设置新增加主机的默认DNS

# /etc/resolv.confnameserver 192.168.0.2

配置ansible Hosts文件,添加新增的主机

#/etc/ansible/hosts[OSEv3:children]
masters
nodes
new_nodes
...
[new_nodes]
infra1.example.com openshift_node_labels="{'region': 'primary', 'zone': 'default', 'node-role.kubernetes.io/infra': 'true'}"

执行扩容脚本

ansible-playbook playbooks/openshift-node/scaleup.yml

将new_nodes中的主机移到nodes组中移除

#/etc/ansible/hosts[OSEv3:children]
masters
nodes
new_nodes
...
[nodes]
infra1.example.com openshift_node_labels="{'region': 'primary', 'zone': 'default', 'node-role.kubernetes.io/infra': 'true'}"[new_nodes]

给新增的节点配置/etc/origin/node/node-config.yaml

kubeletArguments:
  system-reserved:
  - cpu=200m
  - memory=1G
  kube-reserved:
  - cpu=200m
  - memory=1G

重启origin-node服务

systemctl restart origin-node

查看集群中的主机情况进行确认

oc get node --show-labels

3.从集群中移除Node节点

设置需要移除的Node为不可调度

oadm manage-node <node1> --schedulable=false

迁移node上已有的容器

oadm manage-node <node1> --evacuate

在集群中删除指定的node节点

oc delete node infra1.example.com

删除在Ansible hosts文件中的主机配置

...[nodes]

查看集群中的主机情况进行确认

oc get node --show-labels

[可选]新建一个hosts文件,作为ansible-playbook的inventory,只需要写需要删除的node节点

[OSEv3:children]
nodes
 
[OSEv3:vars]
ansible_ssh_user=root
openshift_deployment_type=origin
 
[nodes]
infra1.example.com

[可选]执行清理脚本uninstall.yml

ansible-playbook -i hosts openshift-ansible/playbooks/adhoc/uninstall.yml



作者:潘晓华Michael
链接:https://www.jianshu.com/p/bffe221d53b2


0人推荐
随时随地看视频
慕课网APP