温馨提示×

centos与k8s的集成方式是什么

小樊
63
2025-05-01 03:32:37
栏目: 智能运维

在CentOS上部署Kubernetes(k8s)集群可以通过多种方式实现,其中使用kubeadm是最常见的方法之一。以下是使用kubeadm在CentOS上部署Kubernetes集群的基本步骤:

环境准备

  • 关闭防火墙:systemctl stop firewalldsystemctl disable firewalld
  • 关闭SELinux:setenforce 0sed -i 's/SELINUX.*/SELINUXdisabled/' /etc/selinux/config
  • 禁用交换分区:swapoff -ased -i '/swap/s//#/' /etc/fstab
  • 设置主机名:hostnamectl set-hostname k8s-master
  • 配置hosts文件:编辑 /etc/hosts 文件,添加节点IP和主机名的映射。

安装Docker

  • 添加Docker的YUM源:
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 安装Docker:
yum install -y docker-ce docker-ce-cli containerd.io
  • 启动Docker并设置开机启动:
systemctl start docker && systemctl enable docker
```。

### 设置Kubernetes环境

- 添加Kubernetes源:

```bash
cat > /etc/yum.repos.d/kubernetes.repo <<EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyuncs.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyuncs.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyuncs.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
  • 安装kubelet、kubeadm和kubectl:
yum install -y kubelet kubeadm kubectl
  • 设置开启自启:
systemctl enable kubelet && systemctl start kubelet
```。

### 初始化Master节点

- 在Master节点上执行以下命令:

```bash
kubeadm init --apiserver-advertise-address <master-ip> --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.22.0 --pod-network-cidr 10.244.0.0/16
  • 初始化完成后,会输出一个join命令,将此命令复制并在所有node节点上执行。

添加Worker节点

  • 在Master节点获取Join命令:
kubeadm token create --print-join-command
  • 在所有Worker节点执行Join命令:
kubeadm join <master-ip>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
```。

### 部署CNI容器网络插件(如Calico)

- 在Master节点部署Calico:

```bash
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
  • 验证安装:
kubectl get pods -n kube-system
```。

以上步骤涵盖了在CentOS上部署Kubernetes集群的基本流程。请根据实际需求和环境调整细节和版本信息。

0