温馨提示×

centos k8s网络配置指南

小樊
40
2025-02-25 03:08:47
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS上配置Kubernetes(k8s)网络是一个关键步骤,以下是详细的指南:

环境准备

  1. 硬件和网络要求
  • 三台操作系统为CentOS 7的虚拟机(VM),分别代替master、node1、node2。
  • 硬件配置:2GB或更多内存,2个CPU或更多,30GB或更多硬盘空间。
  • 最好能访问外网,以防后续部署CNI网络插件报错。
  • Docker版本:docker-ce-18.06.1.ce-3.el7。
  • Kubernetes版本:1.18.0开始搭建。
  1. 网络配置
  • 配置静态IP

    • 例如,master节点的IP设置为192.168.8.106,node1为192.168.8.107,node2为192.168.8.108。

    • 编辑/etc/sysconfig/network-scripts/ifcfg-ens33文件,设置如下:

      TYPE="Ethernet"
      PROXY_METHOD="none"
      BROWSER_ONLY="no"
      BOOTPROTO="static"
      DEFROUTE="yes"
      IPV4_FAILURE_FATAL="no"
      IPV6INIT="yes"
      IPV6_AUTOCONF="yes"
      IPV6_DEFROUTE="yes"
      IPV6_FAILURE_FATAL="no"
      IPV6_ADDR_GEN_MODE="stable-privacy"
      NAME="ens33"
      UUID="d90cbc3c-ba5e-4a72-8f7e-a5ae8c48158a"
      DEVICE="ens33"
      ONBOOT="yes"
      IPADDR=192.168.8.106
      IPADDR2=192.168.8.107
      IPADDR3=192.168.8.108
      PREFIX=24
      GATEWAY=192.168.8.1
      DNS1=8.8.8.8
      DNS2=114.114.114.114
      
    • 设置完后重启网络服务:

      systemctl restart network
      
    • 检查网络配置:

      ip addr show ens33
      

集群搭建

  1. 系统初始化
  • 关闭防火墙:

    systemctl stop firewalld
    systemctl disable firewalld
    
  • 禁用SELinux:

    setenforce 0
    sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
    
  • 关闭交换分区:

    swapoff -a
    sed -i '/swap/ s/^/#/' /etc/fstab
    
  • 修改主机名:

    hostnamectl set-hostname k8s-master
    hostnamectl set-hostname k8s-node1
    hostnamectl set-hostname k8s-node2
    
  • 配置hosts文件:

    cat <<EOF > /etc/hosts
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.8.106 k8s-master
    192.168.8.107 k8s-node1
    192.168.8.108 k8s-node2
    EOF
    
  1. 安装Docker和kubeadm
  • 安装Docker:

    yum install -y yum-utils device-mapper-persistent-data lvm2
    yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    yum install -y docker-ce docker-ce-cli containerd.io
    systemctl enable --now docker
    systemctl start docker
    
  • 安装kubeadm、kubelet和kubectl:

    yum install -y kubelet kubeadm kubectl
    systemctl enable --now kubelet
    systemctl start kubelet
    
  1. 初始化集群
  • 在master节点上初始化集群:

    kubeadm init
    
  • 配置kubectl:

    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
  1. 安装网络插件(如Flannel):
  • 安装Flannel网络插件:

    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    
  1. 添加节点到集群
  • 在其他节点上运行kubeadm join命令,加入集群:

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

以上步骤涵盖了在CentOS 7上配置Kubernetes集群的基本网络设置。根据具体需求,可能还需要进行更多的网络配置和优化。建议参考Kubernetes官方文档以获取最新的配置指南和最佳实践。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:centos上k8s网络配置指南

0