# -*- coding: utf-8 -*- # !/usr/bin/python # 更新k8s系統 # https://github.com/kubernetes/kubernetes/releases # 下载新的二进制包 # 參考: http://www.cnblogs.com/iors/p/9803015.html # 适用于版本跨度不大,最好在第一个节点上先装一次,然后再批量操作 # 如果感到有用务必点个赞,如果遇到问题可以在此留言 import paramiko import threading def ssh2(ip, username, passwd, cmd): try: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip, 22, username, passwd, timeout=5) for m in cmd: stdin, stdout, stderr = ssh.exec_command(m) # stdin.write("Y") #简单交互,输入 ‘Y’ out = stdout.readlines() # 屏幕输出 for o in out: print(o), print('%s\tOK\n' % (ip)) ssh.close() except: print('%s\tError\n' % (ip)) def upgrade_k8s_master(): cmd = ['echo hello!', "systemctl stop kube-apiserver", "systemctl stop kube-scheduler", "systemctl stop kube-controller-manager", "sleep 10", "wget -O /usr/local/kubernetes/bin/kube-apiserver http://10.110.18.92:8090/kube-apiserver", "wget -O /usr/local/kubernetes/bin/kube-controller-manager http://10.110.18.92:8090/kube-controller-manager", "wget -O /usr/local/kubernetes/bin/kube-scheduler http://10.110.18.92:8090/kube-scheduler", "wget -O /usr/local/kubernetes/bin/kubectl http://10.110.18.92:8090/kubectl", "sleep 10", "systemctl start kube-apiserver", "systemctl start kube-scheduler", "systemctl start kube-controller-manager", "systemctl status kube-apiserver", "systemctl status kube-scheduler", "systemctl status kube-controller-manager", ] # 你要执行的命令列表 username = "root" # 用户名 passwd = "123456" # 密码 print("Begin......") for i in range(12,19): ip = '10.10.10.' + str(i) a = threading.Thread(target=ssh2, args=(ip, username, passwd, cmd)) a.start() def upgrade_k8s_client(): cmd = ['echo hello!', "systemctl stop kubelet", "systemctl stop kube-proxy", "sleep 10", "wget -O /usr/local/kubernetes/bin/kubelet http://10.110.18.92:8090/kubelet", "wget -O /usr/local/kubernetes/bin/kube-proxy http://10.110.18.92:8090/kube-proxy", "sleep 10", "systemctl start kubelet", "systemctl start kube-proxy", "systemctl status kubelet", "systemctl status kube-proxy" ] # 你要执行的命令列表 username = "root" # 用户名 passwd = "654321" # 密码 print("Begin......") for i in range(132, 197): if i in [141, 143, 133]: continue ip = '10.10.10.' + str(i) print(ip) a = threading.Thread(target=ssh2, args=(ip, username, passwd, cmd)) a.start() if __name__ == '__main__': upgrade_k8s_master() upgrade_k8s_client()
更新k8s版本
为什么80%的码农都做不了架构师?>>>...
·
转载于:https://my.oschina.net/ois/blog/2878924
更多推荐
已为社区贡献466条内容
所有评论(0)