# 给所有节点装sshpass ansible -i inventory/sample/inventory.ini -a "yum -y install sshpass" -u root -k all
# 脚本分发密钥,将/etc/hosts中的主机全部做互信 ssh-keygen -N '' -f ~/.ssh/id_rsa cat > share_key.sh <<'EOF' #!/bin/bash functioncheck() { if [ $? == 0 ]; then echo -e "\033[32m${1}=======>success\033[0m" else echo -e "\033[31m${1}=======>fail\033[0m" fi } echo"检查依赖" sshpass &>>/dev/null if [ $? != 0 ]; then echo -e "检查失败,未安装sshpass,程序退出" exit 1 fi echo"检查完成"
ip=$(cat /etc/hosts |awk 'NR > 3 {print $1}') for i in$ip; do ping -c 1 -i 1 ${i} &>> /dev/null if [ $? == 0 ]; then sshpass -p1 ssh-copy-id -i ~/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@${i} &>>/dev/null check "${i}免密登录" else echo"${i}主机不在线" fi done wait# 等待并行结束 EOF chmod +x share_key.sh ./share_key.sh
# 节点安全相关 ansible -i inventory/sample/inventory.ini all \ -a "sed -i 's/^SELINUX=.*/SELINUX=disable/g' /etc/selinux/config" ansible -i inventory/sample/inventory.ini all -a "setenforce 0" ansible -i inventory/sample/inventory.ini all -m service \ -a "name=firewalld state=stopped enabled=false"
k8s节点ipv6配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# 集群网络配置 ssh master1 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 1::1/64 && nmcli con up eth1" ssh master2 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 1::2/64 && nmcli con up eth1" ssh master3 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 1::3/64 && nmcli con up eth1" ssh worker1 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 1::4/64 && nmcli con up eth1" ssh worker2 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 1::5/64 && nmcli con up eth1" ssh worker3 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 1::6/64 && nmcli con up eth1"
# 存储网络配置 ssh master1 "nmcli con add con-name eth2 ifname eth2 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::1/64 && nmcli con up eth2" ssh master2 "nmcli con add con-name eth2 ifname eth2 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::2/64 && nmcli con up eth2" ssh master3 "nmcli con add con-name eth2 ifname eth2 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::3/64 && nmcli con up eth2" ssh worker1 "nmcli con add con-name eth2 ifname eth2 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::4/64 && nmcli con up eth2" ssh worker2 "nmcli con add con-name eth2 ifname eth2 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::5/64 && nmcli con up eth2" ssh worker3 "nmcli con add con-name eth2 ifname eth2 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::6/64 && nmcli con up eth2"
# 设置ipv6地址 ssh ceph1 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::11/64 && nmcli con up eth1" ssh ceph2 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::12/64 && nmcli con up eth1" ssh ceph3 "nmcli con add con-name eth1 ifname eth1 type ethernet ipv4.method disabled ipv6.method manual ipv6.addresses 2::13/64 && nmcli con up eth1"
# 安全相关 ansible -i inventory all -a "sed -i 's/^SELINUX=.*/SELINUX=disable/g' /etc/selinux/config" ansible -i inventory all -a "setenforce 0" ansible -i inventory all -m service -a "name=firewalld state=stopped enabled=false"
ansible -i inventory/sample/inventory.ini all -m copy \ -a "src=./environment dest=/etc/environment" ansible -i inventory/sample/inventory.ini all -m shell \ -a "source /etc/environment"
kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE data-ceph-rbd-test-0 Bound pvc-b7e56841-10f6-4826-9482-3565cb5100c8 1Gi RWO csi-rbd-sc <unset> 4m35s