Products
96SEO 2025-07-17 15:25 1
Kubernetes是一个流行的容器编排系统, 它允许您自动化容器化应用的部署、 和管理。在当今的企业级应用中,Kubernetes已经成为容器编排的事实标准。本文将带领您从入门到实战, 学怎么在CentOS上安装Kubernetes,并解锁企业级容器编排之道。
在开头之前, 请确保您的CentOS系统满足以下要求:
由于Kubernetes依赖于Docker,所以呢先说说需要安装Docker。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable docker
sudo systemctl start docker
一些系统兴许已经预装了Podman,它兴许会与Docker冲突。以下命令用于卸载Podman:
sudo yum remove podman
接下来 我们将安装Kubernetes的组件,包括kubelet、kubeadm和kubectl。
sudo yum install -y kubelet kubeadm kubectl
sudo systemctl enable kubelet
sudo systemctl start kubelet
为了使Kubernetes正常干活,需要关闭SELinux。
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUXdisabled/g' /etc/selinux/config
眼下我们能在Master节点上初始化Kubernetes集群。
sudo kubeadm init --apiserver-advertise-address Master-IP --apiserver-cert-extra-sans Master-IP --image-repository /google_containers --kubernetes-version v1.18.5 --pod-network-cidr 10.244.0.0/16
请注意替换Master-IP为您主机的IP地址。
初始化完成后需要配置kubectl工具以连接到Kubernetes集群。
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $:$ $HOME/.kube/config
为了使容器之间能够传信,需要部署一个Pod网络插件。这里我们用Calico。
sudo kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
如果您的系统中还有Worker节点, 能用以下命令将它们加入集群:
sudo kubeadm join Master-IP:6443 --token token --discovery-token-ca-cert-hash sha256:hash
请替换Master-IP、token和hash为实际值。
再说说检查集群的状态以确保一切正常。
sudo kubectl get nodes
sudo kubectl get pods --all-namespaces
眼下您能用YAML文件定义和部署应用程序。
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
用以下命令应用Deployment文件:
sudo kubectl apply -f nginx-deployment.yaml
本文详细介绍了怎么在CentOS上安装Kubernetes,并进行了容器编排。通过以上步骤,您得能够成功部署Kubernetes集群并管理容器。希望这篇文章能帮您在CentOS上实践Kubernetes的容器编排。
Demand feedback