41 lines
1.1 KiB
Bash
41 lines
1.1 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
# Kubernetes 集群初始化脚本
|
|
# 功能: 在 Master 节点初始化 Kubernetes 集群
|
|
|
|
echo "==== 初始化 Kubernetes 集群 ===="
|
|
|
|
# 1. 初始化集群
|
|
echo "初始化 Kubernetes 集群..."
|
|
sudo kubeadm init \
|
|
--apiserver-advertise-address=172.17.0.15 \
|
|
--control-plane-endpoint=172.17.0.15:6443 \
|
|
--kubernetes-version=v1.32.3 \
|
|
--service-cidr=10.96.0.0/12 \
|
|
--pod-network-cidr=10.244.0.0/16 \
|
|
--image-repository=registry.aliyuncs.com/google_containers \
|
|
--upload-certs \
|
|
--ignore-preflight-errors=Swap
|
|
|
|
# 2. 配置 kubectl
|
|
echo "配置 kubectl..."
|
|
mkdir -p $HOME/.kube
|
|
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
|
|
sudo chown $(id -u):$(id -g) $HOME/.kube/config
|
|
|
|
# 3. 生成节点加入命令
|
|
echo "生成节点加入命令..."
|
|
JOIN_COMMAND=$(kubeadm token create --print-join-command)
|
|
echo "节点加入命令:"
|
|
echo "$JOIN_COMMAND"
|
|
echo "$JOIN_COMMAND" > node-join-command.txt
|
|
|
|
# 4. 验证集群状态
|
|
echo "==== 验证集群状态 ===="
|
|
kubectl get nodes
|
|
kubectl get pods -n kube-system
|
|
|
|
echo "==== 集群初始化完成 ===="
|
|
echo "请保存节点加入命令,稍后用于将 node1 和 node2 加入集群"
|