Openshif对集群的扩容与缩容
- Openshift是一个云平台,它是以集群的方式提供服务。前面已经介绍了,业务都跑在Openshift的Node节点上。随着业务的不断变化,扩展或者消亡,我们的Node提供的服务需求也会不断变化。这时就需要对Node节点进行增删管理。
- 本篇只介绍CentOS7下管理Node节点。
- Openshift使用Ansible playbook来实现扩容与缩容
1. oc命令查看当前Node节点的状态
1 | 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
1 | hostnamectl --static set-hostname infra1.example.com |
集群中的DNS中添加新加主机的域名与ip的解析
1 | #/etc/dnsmasq.d/more.conf |
设置新增加主机的默认DNS
1 | # /etc/resolv.conf |
补充
,如果是使用/etc/hosts的方式来设置域名与IP的,需要为每台主机添加hosts条目,同时重启dnsmasq。
配置ansible Hosts文件,添加新增的主机
1 | #/etc/ansible/hosts |
执行扩容脚本
1 | ansible-playbook playbooks/openshift-node/scaleup.yml |
将new_nodes中的主机移到nodes组中移除
1 | #/etc/ansible/hosts |
给新增的节点配置/etc/origin/node/node-config.yaml
1 | kubeletArguments: |
重启origin-node服务
1 | systemctl restart origin-node |
查看集群中的主机情况进行确认
1 | oc get node --show-labels |
3.从集群中移除Node节点
设置需要移除的Node为不可调度
1 | oadm manage-node <node1> --schedulable=false |
迁移node上已有的容器
1 | oadm manage-node <node1> --evacuate |
在集群中删除指定的node节点
1 | oc delete node infra1.example.com |
删除在Ansible hosts文件中的主机配置
1 | ... |
查看集群中的主机情况进行确认
1 | oc get node --show-labels |
**[可选]**新建一个hosts文件,作为ansible-playbook的inventory,只需要写需要删除的node节点
1 | [OSEv3:children] |
**[可选]**执行清理脚本uninstall.yml
1 | ansible-playbook -i hosts openshift-ansible/playbooks/adhoc/uninstall.yml |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Michael Blog!
评论