代码拉取完成,页面将自动刷新
同步操作将从 凯沃网络科技/k8s配置 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
## 创建脚本:init.kubeadm.config.sh
#!/bin/sh
vhost=(k8s-master1 k8s-master2 k8s-master3)
vhostIP=(192.168.1.201 192.168.1.202 192.168.1.203)
domain=api.k8s.cn
## etcd 初始化 m01 m02 m03 集群配置
etcdInitCluster=(
k8s-master1=https://192.168.1.201:2380
k8s-master1=https://192.168.1.201:2380,k8s-master2=https://192.168.1.202:2380
k8s-master1=https://192.168.1.201:2380,k8s-master2=https://192.168.1.202:2380,k8s-master3=https://192.168.1.203:2380
)
## etcd 初始化时,m01 m02 m03 分别的初始化集群状态
initClusterStatus=(
new
existing
existing
)
## 2.遍历 master 主机名和对应 IP
## 生成对应的 kubeadmn 配置文件
for i in `seq 0 $((${#vhost[*]}-1))`
do
h=${vhost[${i}]}
ip=${vhostIP[${i}]}
echo "--> $h - $ip"
## 生成 kubeadm 配置模板
cat <<EOF > kubeadm-config.$h.yaml
apiVersion: kubeadm.k8s.io/v1beta1
kind: InitConfiguration
localAPIEndpoint:
advertiseAddress: $ip
bindPort: 6443
---
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
kubernetesVersion: v1.13.1
# 指定阿里云镜像仓库
imageRepository: registry.aliyuncs.com/google_containers
# apiServerCertSANs 填所有的 masterip、lbip、其它可能需要通过它访问 apiserver 的地址、域名或主机名等,
# 如阿里fip,证书中会允许这些ip
# 这里填一个自定义的域名
apiServer:
certSANs:
- "$domain"
controlPlaneEndpoint: "$domain:6443"
## Etcd 配置
etcd:
local:
extraArgs:
listen-client-urls: "https://127.0.0.1:2379,https://$ip:2379"
advertise-client-urls: "https://$ip:2379"
listen-peer-urls: "https://$ip:2380"
initial-advertise-peer-urls: "https://$ip:2380"
initial-cluster: "${etcdInitCluster[${i}]}"
initial-cluster-state: ${initClusterStatus[${i}]}
serverCertSANs:
- $h
- $ip
peerCertSANs:
- $h
- $ip
networking:
podSubnet: "10.244.0.0/16"
EOF
echo "kubeadm-config.$h.yaml created ... ok"
## 3. 分发到其他 master 机器
scp kubeadm-config.$h.yaml root@$h:~
echo "scp kubeadm-config.$h.yaml ... ok"
done
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。