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
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦