CentOS 7 安装 kubernetes 版本1.27.2

该文指导如何在CentOS系统中安装Docker和Kubernetes,包括添加仓库,更新,安装docker-ce,设置containerd,启用kubelet,配置网络和防火墙规则,以及初始化Kubernetes集群,使用Calico作为网络插件。
摘要由CSDN通过智能技术生成
  1. su
  2. sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo|yum check-update
  3. yum install docker-ce-18.03.1.ce  (yum list docker-ce --showduplicates|sort –r)
  4. cat <<EOF > /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
    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
  5. sudo yum install -y kubelet kubeadm kubectl containerd
    1. Please try update your /etc/contained/conf.toml to the next:

      version = 2
      [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
        runtime_type = "io.containerd.runc.v2"
        [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
          SystemdCgroup = true
      

      And restart the contained service.

  6. systemctl enable containerd   systemctl start containerd

  7. systemctl enable kubelet systemctl start kubelet

  8. sudo hostnamectl set-hostname master-node

  9. sudo vi /etc/hosts 加入  master-node

  10. sudo firewall-cmd --permanent --add-port=6443/tcp
    sudo firewall-cmd --permanent --add-port=2379-2380/tcp
    sudo firewall-cmd --permanent --add-port=10250/tcp
    sudo firewall-cmd --permanent --add-port=10251/tcp
    sudo firewall-cmd --permanent --add-port=10252/tcp
    sudo firewall-cmd --permanent --add-port=10255/tcp
    sudo firewall-cmd --reload

    or
    sudo stop firewalld
    sudo disable firewalld

  11. cat <<EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF
    sysctl --system

  12. sudo setenforce 0 sudo sed -i ‘s/^SELINUX=enforcing$/SELINUX=permissive/’ /etc/selinux/config

  13. sudo sed -i '/swap/d' /etc/fstab sudo swapoff -a

  14. cat << EOF | tee /etc/cni/net.d/10-containerd-net.conflist
    {
     "cniVersion": "1.0.0",
     "name": "containerd-net",
     "plugins": [
       {
         "type": "bridge",
         "bridge": "cni0",
         "isGateway": true,
         "ipMasq": true,
         "promiscMode": true,
         "ipam": {
           "type": "host-local",
           "ranges": [
             [{
               "subnet": "10.88.0.0/16"
             }],
             [{
               "subnet": "2001:db8:4860::/64"
             }]
           ],
           "routes": [
             { "dst": "0.0.0.0/0" },
             { "dst": "::/0" }
           ]
         }
       },
       {
         "type": "portmap",
         "capabilities": {"portMappings": true},
         "externalSetMarkChain": "KUBE-MARK-MASQ"
       }
     ]
    }
    EOF
  15. sudo kubeadm init --pod-network-cidr=10.254.0.0/16  

    --pod-network-cidr=x.x.x.x/12 --apiserver-advertise-address=0.0.0.0 --apiserver-cert-extra-sans=0.0.0.0
  16. sudo kubeadm reset
    sudo rm /etc/cni/net.d/10-calico.conflist
    sudo rm /etc/cni/net.d/calico-kubeconfig
    
    export CALICO_IPV4POOL_CIDR=172.16.0.0
    export MASTER_IP=192.168.100.122
    sudo kubeadm init --pod-network-cidr=$CALICO_IPV4POOL_CIDR/12 --apiserver-advertise-address=$MASTER_IP --apiserver-cert-extra-sans=$MASTER_IP
    
    mkdir -p $HOME/.kube
    sudo rm -f $HOME/.kube/config
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    sudo chown $(id -u):$(id -g) /etc/kubernetes/kubelet.conf
    
    wget https://docs.projectcalico.org/v3.8/manifests/calico.yaml -O calico.yaml
    sudo sed -i "s/192.168.0.0\/16/$CALICO_IPV4POOL_CIDR\/12/g" calico.yaml
    sudo sed -i "s/192.168.0.0/$CALICO_IPV4POOL_CIDR/g" calico.yaml
    kubectl apply -f calico.yaml

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


To start using your cluster, you need to run the following as a regular user:

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

Alternatively, if you are the root user, you can run:

  export KUBECONFIG=/etc/kubernetes/admin.conf

You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
  https://kubernetes.io/docs/concepts/cluster-administration/addons/

参考链接
How to Install Kubernetes on CentOS 7 (Step by Step)

Installing kubeadm | Kubernetes

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值