在CentOS上运行Kubernetes容器化应用需要经过以下几个步骤:
准备工作
-
更新系统:
sudo yum update -y
-
安装Docker:
sudo yum install -y docker
-
配置Kubernetes源:
创建
/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 https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
-
安装Kubernetes组件:
sudo yum install -y kubeadm kubelet kubectl
-
启动Kubernetes服务:
sudo systemctl start docker sudo systemctl enable docker sudo systemctl start kubelet sudo systemctl enable kubelet
-
配置时间同步:
安装
chrony
并配置时间同步:sudo yum install -y chrony sudo vi /etc/chrony.conf # 删除所有的 server 配置 server 0.centos.pool.ntp.org iburst server 192.168.1.1
-
关闭防火墙和SELinux:
sudo systemctl stop firewalld sudo systemctl disable firewalld sudo setenforce 0 sed -i 's/SELINUXenforcing/SELINUXdisabled/' /etc/selinux/config
初始化Master节点
-
配置主机名:
修改主机名,例如将
master
改为ks-master-1
:hostnamectl set-hostname ks-master-1
-
配置DNS:
编辑
/etc/resolv.conf
文件:echo "nameserver 8.8.8.8" > /etc/resolv.conf
-
配置服务器时区:
配置服务器时区为
asia/shanghai
:timedatectl set-timezone asia/shanghai
-
初始化Kubernetes集群:
使用
kubeadm
初始化Master节点:sudo kubeadm init
初始化过程中会输出一些信息,包括加入集群所需的
kubeadm join
命令和初始的kubectl
配置,请妥善保存这些信息。 -
配置kubectl:
将
kubeadm
初始化输出的初始kubectl
配置添加到~/.kube/config
文件中:mkdir -p $HOME/.kube cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
-
部署网络插件:
以Flannel为例,安装Flannel网络插件:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
添加Worker节点
在其他节点上重复以下步骤,使用 kubeadm join
命令将其他节点加入到集群中:
# 替换为实际的Master节点IP地址和端口 kubeadm join: --token --discovery-token-ca-cert-hash
至此,Kubernetes容器编排平台已经在CentOS上安装和配置完成,你可以使用 kubectl
命令来管理和操作Kubernetes集群。