在CentOS上部署Kubernetes(k8s)集群是一个复杂但非常有价值的过程,以下是一些建议和步骤,帮助你实现这一目标:
准备工作
- 硬件要求:确保每个节点至少有2个CPU核心和4GB RAM。
- 网络配置:每个节点应配置静态IP地址,并设置正确的网关和DNS。
- 软件包:安装Docker、kubeadm、kubelet和kubectl。
安装Docker
yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install -y docker-ce docker-ce-cli containerd.io systemctl start docker systemctl enable docker
配置Docker使用systemd作为cgroup驱动
cat <修改iptables以启用br_netfilter模块
cat <关闭SELinux和swap分区
sed -i 's/enforcing/disabled/' /etc/selinux/config swapoff -a sudo sed -i 's/.*swap.*/#&/' /etc/fstab配置主机名和hosts文件
hostnamectl set-hostnamecat >> /etc/hosts < EOF 安装kubeadm、kubelet和kubectl
cat </etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg EOF yum install -y kubelet-1.26.0 kubeadm-1.26.0 kubectl-1.26.0 systemctl enable kubelet systemctl start kubelet 初始化Master节点
kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=安装网络插件(如Flannel)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml加入Node节点到集群
kubeadm join:6443 --token= --discovery-token-ca-cert-hash sha256: 验证集群状态
kubectl get nodes kubectl get pods --all-namespaces -o wide