温馨提示×

centos k8s部署怎么入门

小樊
38
2026-09-12 06:32:28
栏目: 智能运维

下面给你一条从零到能跑起来的 CentOS + Kubernetes(k8s)入门路线,偏实战,不堆概念。


一、前置准备(很重要)

1. 系统要求

  • CentOS 7 / 8(推荐 CentOS 7.9
  • 2 核 4G 以上(学习建议 3 台虚拟机)
  • 能联网

2. 机器规划(示例)

角色 IP 主机名
master 192.168.10.10 k8s-master
node1 192.168.10.11 k8s-node1
node2 192.168.10.12 k8s-node2

学习阶段:1 master + 2 node 最合适


二、系统基础配置(所有节点)

# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

# 关闭 SELinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

# 关闭 swap
swapoff -a
sed -i '/swap/s/^/#/' /etc/fstab

# 设置主机名
hostnamectl set-hostname k8s-master   # 各节点不同

# hosts 解析
cat >> /etc/hosts <<EOF
192.168.10.10 k8s-master
192.168.10.11 k8s-node1
192.168.10.12 k8s-node2
EOF

三、安装容器运行时(Docker)

yum install -y yum-utils
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce

systemctl enable docker
systemctl start docker

四、安装 Kubernetes(kubeadm 方式,最推荐)

1. 配置 yum 源

cat > /etc/yum.repos.d/kubernetes.repo <<EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
EOF

2. 安装组件

yum install -y kubelet kubeadm kubectl
systemctl enable kubelet

五、初始化 Master 节点

kubeadm init \
  --apiserver-advertise-address=192.168.10.10 \
  --image-repository registry.aliyuncs.com/google_containers \
  --pod-network-cidr=10.244.0.0/16

初始化成功后:

mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

六、安装网络插件(Flannel)

kubectl apply -f https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml

查看状态:

kubectl get nodes

七、Node 节点加入集群

在 master 初始化输出中会有:

kubeadm join 192.168.10.10:6443 --token xxx --discovery-token-ca-cert-hash xxx

在 node 节点执行即可。


八、验证集群

kubectl get nodes
kubectl get pods -n kube-system

九、跑一个测试应用

kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort
kubectl get svc

浏览器访问:

http://节点IP:端口

十、入门学习建议

  1. 先搞懂:Pod / Deployment / Service
  2. 学会写简单 YAML
  3. 再学:ConfigMap、Ingress、PV/PVC
  4. 工具推荐:
    • kubectl
    • Lens(图形化)
    • Helm(包管理)

如果你愿意,我可以:

  • 给你 一键脚本
  • 教你 用 Containerd 替代 Docker
  • 或按 生产环境标准 帮你规划

你现在是 纯学习 还是 准备上生产

0