在CentOS上部署Kubernetes(k8s)集群通常涉及以下步骤:
准备工作:
设置主机名和hosts文件:
/etc/hosts文件中添加其他节点的主机名和IP地址映射。关闭SELinux(如果需要):
SELINUX=disabled来临时关闭它。配置防火墙:
安装Kubernetes组件:
验证集群状态:
下面是一个简化的示例流程:
在主节点上执行:
# 关闭swap
sudo swapoff -a
# 设置主机名
sudo hostnamectl set-hostname master-node
# 安装Docker
sudo yum install -y docker
# 启动Docker并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 配置Docker镜像加速(可选)
# 编辑 /etc/docker/daemon.json 文件,添加镜像加速配置
# 安装kubeadm, kubelet, kubectl
sudo yum install -y kubeadm kubelet kubectl
# 启动kubelet并设置开机自启
sudo systemctl start kubelet
sudo systemctl enable kubelet
# 初始化主节点
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
# 设置kubectl的默认命名空间为kube-system
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
# 安装网络插件(例如Flannel)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
在工作节点上执行:
# 关闭swap
sudo swapoff -a
# 设置主机名
sudo hostnamectl set-hostname worker-node
# 设置主机名和IP映射
echo "master-node worker-node" | sudo tee -a /etc/hosts
# 安装Docker
sudo yum install -y docker
# 启动Docker并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
# 配置Docker镜像加速(可选)
# 编辑 /etc/docker/daemon.json 文件,添加镜像加速配置
# 安装kubeadm, kubelet, kubectl
sudo yum install -y kubeadm kubelet kubectl
# 启动kubelet并设置开机自启
sudo systemctl start kubelet
sudo systemctl enable kubelet
# 使用主节点上的token加入集群
sudo kubeadm join master-node:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
注意:上述步骤中的master-node和worker-node需要替换为你的实际主机名,<token>和<hash>需要替换为kubeadm init命令输出的实际值。
完成这些步骤后,你的Kubernetes集群应该已经部署完成,并且可以通过kubectl工具进行管理。记得在生产环境中考虑更多的安全性和高可用性配置。