在CentOS上安装Kubernetes(K8s)可以分为几个主要步骤:
系统环境配置
- 关闭防火墙:
systemctl stop firewalld systemctl disable firewalld firewall-cmd --state
- 禁用SELinux:
setenforce 0 sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
- 关闭swap:
swapoff -a sed -i 's/.*swap.*/#&/g' /etc/fstab
- 时间同步:
yum install -y ntpdate ntpdate ntp.aliyun.com echo "*/3 * * * * /usr/sbin/ntpdate ntp.aliyun.com &> /dev/null" > /tmp/crontab crontab /tmp/crontab
- 设置主机名和hosts文件:
hostnamectl set-hostname master cat >> /etc/hosts << EOF 192.168.0.100 master 192.168.0.101 node1 192.168.0.102 node2 EOF
- 修改内核参数:
cat << EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF sysctl -p /etc/sysctl.d/k8s.conf
安装Docker
- 安装依赖包:
yum install -y yum-utils device-mapper-persistent-data lvm2
- 配置Docker源:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum clean all yum makecache
- 安装Docker:
yum install -y docker-ce docker-ce-cli containerd.io systemctl start docker systemctl enable docker
安装Kubernetes组件
- 添加Kubernetes源:
cat << EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg EOF
- 安装kubelet、kubeadm和kubectl:
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
- 初始化Master节点:
kubeadm init --pod-network-cidr=10.244.0.0/16
- 配置kubectl:
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
验证安装
- 检查节点状态:
kubectl get nodes
- 部署示例应用:
kubectl run myk8s-pod --image=nginx --replicas=2 --port=80 kubectl get pods
以上步骤涵盖了在CentOS上安装Kubernetes的基本流程,确保系统环境准备充分,并正确安装和配置所有必要的组件。