All checks were successful
Build Docker Image / Explore-Gitea-Actions (push) Successful in 15s
90 lines
2.0 KiB
Bash
90 lines
2.0 KiB
Bash
#!/bin/bash
|
|
|
|
current_ip=$(hostname -I | awk '{print $1}')
|
|
|
|
# 镜像加速
|
|
cat <<EOF > /etc/rancher/k3s/registries.yaml
|
|
mirrors:
|
|
docker.io:
|
|
registry.k8s.io:
|
|
endpoint:
|
|
- https://docker.martin98.com/v2/docker
|
|
https://registry.k8s.io:
|
|
https://k8s.gcr.io:
|
|
endpoint:
|
|
- https://docker.martin98.com/v2/k8s
|
|
https://gcr.io:
|
|
endpoint:
|
|
- https://docker.martin98.com/v2/gcr
|
|
https://ghcr.io:
|
|
endpoint:
|
|
- https://docker.martin98.com/v2/ghcr
|
|
https://quay.io:
|
|
endpoint:
|
|
- https://docker.martin98.com/v2/quay
|
|
EOF
|
|
|
|
|
|
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - \
|
|
--cluster-cidr $pod_subnet \
|
|
--service-cidr $service_subnet \
|
|
--node-external-ip=$vip_ip
|
|
|
|
# 安装 keepalived
|
|
apt install -y keepalived
|
|
|
|
# 检查是否为 Master-01
|
|
if [ "$current_ip" == "$master" ]; then
|
|
state=MASTER
|
|
priority=100
|
|
else
|
|
state=BACKUP
|
|
priority=100
|
|
fi
|
|
|
|
# 初始化 VIP
|
|
cat <<EOF | sudo tee /etc/keepalived/keepalived.conf
|
|
vrrp_instance VI_1 {
|
|
state $state
|
|
interface eth0
|
|
virtual_router_id 51
|
|
priority $priority
|
|
advert_int 1
|
|
virtual_ipaddress {
|
|
$vip
|
|
}
|
|
}
|
|
EOF
|
|
sudo systemctl restart keepalived
|
|
systemctl status keepalived &
|
|
echo "初始化 master VIP[$state] $current_ip 成功"
|
|
|
|
|
|
#cat /var/lib/rancher/k3s/server/node-token
|
|
#
|
|
#
|
|
#
|
|
#curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | \
|
|
# INSTALL_K3S_MIRROR=cn \
|
|
# K3S_URL=https://myserver:6443 \
|
|
# K3S_TOKEN=mynodetoken sh -
|
|
#cat <<EOF
|
|
#------------------------------------------------------------------------------------
|
|
#初始化 master $current_ip 成功
|
|
#$OUTPUT
|
|
#
|
|
## master 加入
|
|
#kubeadm join $vip_ip:6443 \\
|
|
# --token $TOKEN \\
|
|
# --discovery-token-ca-cert-hash $TOKEN_HASH \\
|
|
# --control-plane --certificate-key $CERTS
|
|
#
|
|
## worker 加入
|
|
#kubeadm join $vip_ip:6443 \\
|
|
# --token $TOKEN \\
|
|
# --discovery-token-ca-cert-hash $TOKEN_HASH
|
|
#
|
|
#------------------------------------------------------------------------------------
|
|
#EOF
|
|
#
|
|
#kubectl get nodes |