概述
集群中很多节点需要统一批量操作,生产环境中的节点数量都是在几十上百个,手动操作非常费时。通过工具批量操作,提效,节省时间。
流程图
代码
#!/usr/bin/env bash
ips=`kubectl get nodes -owide | awk '{if (NR>1){print$6}}'`
for ip in $ips;
do
echo $ip
echo "is installing"
sshpass -p 1234 ssh -o StrictHostKeyChecking=no root@$ip "mkdir -p /offline_rpms/"
sshpass -p 1234 scp -r /scp_rpms/* root@$ip:/offline_rpms/
sshpass -p 1234 ssh -o StrictHostKeyChecking=no root@$ip "rpm -Uvh --force --nodeps /offline_rpms/*rpm"
sshpass -p 1234 ssh -o StrictHostKeyChecking=no root@$ip "free -hm"
if [$? -ne 0] then
echo "wrong"
else
echo "is healthy"
kubectl label node $ip pod=vds
fi
done