centos

centos上如何成功部署k8s

小樊
33
2025-04-10 23:19:31
栏目: 智能运维

在CentOS上成功部署Kubernetes(k8s)可以分为几个步骤,包括环境准备、安装Docker、配置网络、初始化Master节点以及加入Worker节点。以下是详细的步骤指南:

环境准备

  1. 关闭防火墙

    systemctl stop firewalld && systemctl disable firewalld
    
  2. 关闭swap

    swapoff -a && sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
    
  3. 关闭SELinux

    setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
    
  4. 设置时区

    timedatectl set-timezone Asia/Shanghai
    
  5. 时间同步

    yum -y install ntp
    ntpdate time.windows.com
    hwclock --systohc
    
  6. 配置网络: 编辑 /etc/sysctl.d/k8s.conf 文件:

    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    

    使配置生效:

    sysctl --system
    

安装Docker

  1. 添加镜像源

    curl https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo
    
  2. 安装Docker

    yum list docker-ce --showduplicates | sort -r
    yum install -y docker-ce-20.10.6-3.el7
    systemctl start docker
    systemctl enable docker
    
  3. 配置Docker镜像加速: 编辑 /etc/docker/daemon.json 文件:

    cat << EOF
    {
        "registry-mirrors": ["https://wnsrsn9i.mirror.aliyuncs.com"]
    }
    EOF
    systemctl restart docker
    

安装kubeadm、kubelet和kubectl

  1. 添加镜像源

    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
    repo_gpgcheck=0
    gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
    EOF
    
  2. 安装kubeadm、kubelet和kubectl

    yum list kubelet --showduplicates | sort -r
    yum install -y kubelet-1.22.0 kubeadm-1.22.0 kubectl-1.22.0
    systemctl enable kubelet
    systemctl start kubelet
    

单机部署

  1. 设置主机名

    hostnamectl set-hostname k8s-master
    
  2. 初始化Master节点

    kubeadm init --apiserver-advertise-address=192.168.0.159 --image-repository registry.aliyuncs.com/google_containers
    
  3. 配置kubectl

    mkdir -p $HOME/.kube
    cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
  4. 加入Worker节点: 在Worker节点上执行:

    kubeadm join 192.168.0.159:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
    

集群部署(多节点)

  1. 设置主机名

    hostnamectl set-hostname k8s-node1
    hostnamectl set-hostname k8s-node2
    
  2. 配置hosts文件: 编辑 /etc/hosts 文件,添加Master节点和Worker节点的IP和主机名。

  3. 初始化Master节点

    kubeadm init --apiserver-advertise-address=192.168.0.51 --image-repository registry.aliyuncs.com/google_containers
    
  4. 配置kubectl

    mkdir -p $HOME/.kube
    cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
  5. 加入Worker节点: 在Worker节点上执行:

    kubeadm join 192.168.0.51:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
    

通过以上步骤,你可以在CentOS上成功部署一个Kubernetes集群。请根据你的实际需求和环境调整配置。

0
看了该问题的人还看了