温馨提示×

centos上k8s网络如何配置

小樊
63
2025-04-23 01:32:45
栏目: 智能运维

在CentOS上配置Kubernetes(k8s)网络通常涉及以下几个步骤:

  1. 环境准备
  • 关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
  • 关闭SELinux:
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
  • 关闭交换分区:
swapoff -a
sed -i '/swap/ s/^/#/' /etc/fstab
  • 配置静态IP:编辑网络配置文件,例如 /etc/sysconfig/network-scripts/ifcfg-eth0,设置 BOOTPROTOstatic,并添加以下行:
IPADDR  192.168.1.100
NETMASK  255.255.255.0
GATEWAY  192.168.1.1
DNS1  8.8.8.8

然后重启网络服务:

systemctl restart network
  • 配置主机名:使用 hostnamectl 命令设置主机名,例如:
hostnamectl set-hostname k8s-master
  • 配置 /etc/hosts 文件:在每个节点上编辑 /etc/hosts 文件,添加集群中所有节点的IP地址和主机名:
192.168.1.100 k8s-master
192.168.1.101 k8s-node1
192.168.1.102 k8s-node2
  • 时间同步:安装并配置NTP服务以同步时间。
yum install ntpdate
ntpdate time.windows.com
  1. 安装Docker
  • 添加Docker的Yum源:
cat > /etc/yum.repos.d/docker.repo <<EOF
[docker-ce]
name=Docker CE base
baseurl=https://download.docker.com/linux/centos/7/x86_64/stable/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg
EOF
  • 安装Docker CE:
yum install -y docker-ce docker-ce-cli containerd.io
  • 启动Docker并设置开机启动:
systemctl start docker && systemctl enable docker
  1. 安装kubeadm、kubelet和kubectl
  • 添加镜像源:
cat > /etc/yum.repos.d/kubernetes.repo <<EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.ustc.edu.cn/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.ustc.edu.cn/kubernetes/yum/doc/yum-key.gpg https://mirrors.ustc.edu.cn/kubernetes/yum/doc/rpm-package-key.gpg
EOF
  • 安装:
yum install -y kubelet kubeadm kubectl
  • 设置开机启动:
systemctl enable kubelet && systemctl start kubelet
  1. 部署Kubernetes集群
  • 初始化Master节点:
kubeadm init --apiserver-advertise-address 192.168.1.100 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.22.15 --service-cidr 10.96.0.0/12 --pod-network-cidr 10.244.0.0/16
  • 配置kubectl:将Master节点的配置文件复制到本地,并配置 kubectl
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
  • 加入Worker节点:在Master节点上获取Join命令,并在每个Worker节点上运行。
  1. 安装网络插件(以Calico为例):
  • 下载Calico配置文件:
wget https://docs.projectcalico.org/manifests/calico.yaml
  • 应用Calico配置:
kubectl apply -f calico.yaml
  1. 验证网络配置
  • 检查网络连接:
ping 8.8.8.8
ping 114.114.114.114
  • 检查集群状态:
kubectl get nodes
kubectl get pods -n kube-system

0