添加/删除节点


参考

kubespray

[ Kube 65.3 ] Kubespray - Adding & Removing Kubernetes nodes



添加节点

配置ansible访问新节点(192.168.1.203)

vi /etc/ansible/hosts
[k8s]

192.168.1.200 ansible_ssh_user=root
192.168.1.201 ansible_ssh_user=root
192.168.1.202 ansible_ssh_user=root
192.168.1.203 ansible_ssh_user=root
  • 测试
ansible k8s -m ping

新增node4

vi inventory/mycluster/hosts.yaml
all:
  hosts:
    node1:
      ansible_host: 192.168.1.200
      ip: 192.168.1.200
      access_ip: 192.168.1.200
    node2:
      ansible_host: 192.168.1.201
      ip: 192.168.1.201
      access_ip: 192.168.1.201
    node3:
      ansible_host: 192.168.1.202
      ip: 192.168.1.202
      access_ip: 192.168.1.202
    node4:
      ansible_host: 192.168.1.203
      ip: 192.168.1.203
      access_ip: 192.168.1.203
  children:
    kube-master:
      hosts:
        node1:
        node2:
    kube-node:
      hosts:
        node1:
        node2:
        node3:
        node4:
    etcd:
      hosts:
        node1:
        node2:
        node3:
    k8s-cluster:
      children:
        kube-master:
        kube-node:
    calico-rr:
      hosts: {}

下载依赖

  • 假设node1与node4为同系统 将node1 /tmp/releases copy至node4 /tmp/releases即可避免node4再次下载k8s依赖组件
scp /tmp/releases root@192.168.1.203:/tmp/releases
  • 确定依赖已完善
ansible-playbook -i inventory/mycluster/hosts.yaml  --become --become-user=root cluster.yml --tags container_engine

ansible-playbook -i inventory/mycluster/hosts.yaml  --become --become-user=root cluster.yml --tags download

添加节点

ansible-playbook -i inventory/mycluster/hosts.yaml scale.yml


移除节点

ansible-playbook -i inventory/mycluster/hosts.yaml remove-node.yml --extra-vars "node=node4"
上一页
下一页