在CentOS上部署Kubernetes(K8s)集群可以通过多种方式实现,以下是使用kubeadm工具进行部署的详细步骤:
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/enforcing/disabled/' /etc/selinux/config
setenforce 0
swapoff -a
sed -ri 's/.*swap./#&/' /etc/fstab
hostnamectl set-hostname master-node-ip
cat <<EOF | sudo tee /etc/yum.repos.d/docker.repo
[docker-ce]
name=Docker CE
baseurl=https://download.docker.com/linux/centos/docker-ce/stable
gpgcheck=1
enabled=1
gpgkey=https://download.docker.com/linux/centos/gpg
EOF
yum install -y docker-ce docker-ce-cli containerd.io
systemctl enable docker
systemctl start docker
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet
systemctl start kubelet
在master节点上执行以下命令:
kubeadm init --apiserver-advertise-address=master-node-ip --image-repository registry.aliyuncs.com/google_containers --kubernetes-version=1.22.15 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=false
初始化完成后,会输出一个join命令,将此命令复制并在所有node节点上执行。
在master节点上执行以下命令:
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
在master节点上执行以下命令:
kubectl get nodes
确保所有节点状态为Ready。
通过以上步骤,你可以在CentOS上成功部署一个Kubernetes集群。请根据实际环境调整细节和版本信息。