centos

centos k8s应用如何部署

小樊
93
2025-02-12 02:05:18
栏目: 智能运维

在CentOS上部署Kubernetes(K8s)集群可以通过多种方式实现,以下是使用kubeadm工具进行部署的详细步骤:

环境准备

  1. 关闭防火墙
    systemctl stop firewalld
    systemctl disable firewalld
    
  2. 关闭SELinux
    sed -i 's/enforcing/disabled/' /etc/selinux/config
    setenforce 0
    
  3. 禁用swap
    swapoff -a
    sed -ri 's/.*swap./#&/' /etc/fstab
    
  4. 配置主机名
    hostnamectl set-hostname master-node-ip
    
  5. 配置IP地址:将所有节点的IP地址设置为静态IP,并在master节点上配置hosts文件。

安装Docker

  1. 添加Docker的YUM源
    cat <<EOF | sudo tee /etc/yum.repos.d/docker.repo
    [docker-ce]
    name=Docker CE
    baseurl=https://download.docker.com/linux/centos/docker-ce/stable
    gpgcheck=1
    enabled=1
    gpgkey=https://download.docker.com/linux/centos/gpg
    EOF
    
  2. 安装Docker
    yum install -y docker-ce docker-ce-cli containerd.io
    systemctl enable docker
    systemctl start docker
    

安装Kubeadm、Kubelet和Kubectl

  1. 添加Kubernetes的YUM源
    cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
    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
    EOF
    
  2. 安装Kubeadm、Kubelet和Kubectl
    yum install -y kubelet kubeadm kubectl
    systemctl enable kubelet
    systemctl start kubelet
    

初始化Master节点

在master节点上执行以下命令:

kubeadm init --apiserver-advertise-address=master-node-ip --image-repository registry.aliyuncs.com/google_containers --kubernetes-version=1.22.15 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=false

初始化完成后,会输出一个join命令,将此命令复制并在所有node节点上执行。

部署网络插件(如Calico)

在master节点上执行以下命令:

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

验证集群状态

在master节点上执行以下命令:

kubectl get nodes

确保所有节点状态为Ready。

通过以上步骤,你可以在CentOS上成功部署一个Kubernetes集群。请根据实际环境调整细节和版本信息。

0
看了该问题的人还看了