centos k8s部署网络如何配置

767
2025/4/15 0:32:24
栏目: 智能运维
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS上部署Kubernetes集群时,网络的配置是一个关键步骤。以下是一个基本的指南,帮助你配置网络。

1. 关闭防火墙

在所有节点上关闭防火墙,并禁止其开机自启。

systemctl stop firewalld
systemctl disable firewalld

2. 关闭SELinux

关闭SELinux可以避免一些权限问题。

  • 永久关闭

    sed -i 's/enforcing/disabled/' /etc/selinux/config
    reboot
    
  • 临时关闭

    setenforce 0
    

3. 关闭交换分区

为了保证kubelet正常工作,必须禁用交换分区。

  • 永久关闭

    sed -ri 's/.*swap.*/#&/' /etc/fstab
    reboot
    
  • 临时关闭

    swapoff -a
    

4. 配置网络参数

在每个节点上添加以下网络参数,以允许桥接的IPv4流量传递到iptables的链,并启用IP转发。

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
vm.swappiness = 0
EOF

# 加载br_netfilter模块
modprobe br_netfilter

# 查看是否加载
lsmod | grep br_netfilter

# 生效sysctl
sysctl --system

5. 配置主机名

设置每个节点的主机名,并在/etc/hosts文件中添加主机名和IP地址的对应关系。

hostnamectl set-hostname k8s-master
hostnamectl set-hostname k8s-node1
hostnamectl set-hostname k8s-node2

cat >> /etc/hosts << EOF
192.168.10.100 k8s-master
192.168.10.101 k8s-node1
192.168.10.102 k8s-node2
EOF

6. 时间同步

在所有节点上安装ntpdate并进行时间同步。

yum install ntpdate
ntpdate time.windows.com

7. 配置containerd

安装containerd并配置相关文件。

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y containerd.io cri-tools

cat > /etc/containerd/config.toml << EOF
disabled_plugins = ["restart"]
[plugins.linux]
shim_debug = true
[plugins.cri.registry.mirrors."docker.io"]
endpoint = ["https://frz7i079.mirror.aliyuncs.com"]
plugins.cri.sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.2"
EOF

systemctl enable containerd && systemctl start containerd

cat > /etc/modules-load.d/containerd.conf << EOF
overlaybr_netfilter
EOF

8. 初始化集群

在master节点上初始化集群。

kubeadm init

9. 加入节点

将node节点加入到集群中。

kubeadm join <master节点的IP和端口>

以上步骤涵盖了在CentOS上部署Kubernetes集群时的基本网络配置。请根据你的具体环境和需求进行相应的调整。

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

推荐阅读: Node.js在CentOS上如何配置