k8s集群使用calico网络组件

本文介绍了如何在K8s1.23.10版本中部署calico网络组件,包括配置calico.yaml文件,特别是IP_AUTODETECTION_METHOD和CALICO_IPV4POOL_IPIP的设置,以及如何验证和切换bgp模式以优化性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言

    k8s的网络组件可以使用flannel或者calico两种,flannel的配置比较简单,但是性能还是calico会更高一点,所以现在来介绍以下calico网络组件的部署

二、部署

    k8s集群版本对calico的版本也有对应要求,k8s 1.23.0版本要求对应calico v3.24.0左右的版本

    我这里的是1.23.10版本的k8s,calico使用v3.24.6版本

    在github上下载对应版本的calico.yaml文件,calico.yaml文件也是每个版本都有区别的

    参考:https://github.com/projectcalico/calico/tree/v3.24.6/manifests

    

 创建存放calico yaml文件目录

mkdir /opt/calico && cd /opt/calico

编辑calico yaml文件配置

vi calico.yaml

#在大概4551行的位置编辑以下配置
4551             - name: CALICO_IPV4POOL_CIDR 
4552               value: "10.244.0.0/16"    #填写为配置k8s集群时,设置的pod网络地址段
4553             - name: IP_AUTODETECTION_METHOD
4554               value: "interface=ens192" #宿主机的网卡信息,这项配置是要手动加入的,calico原本没有

#在大概4521行的位置编辑以下配置
4521             # Enable IPIP
4522             - name: CALICO_IPV4POOL_IPIP
4523               value: "Never"    #默认配置为Always,配置为Always时使用的时IPIP模式,更改为Never时使用的是bgp模式,使用bgp模式性能更高

创建calico服务

kubectl apply -f calico.yaml

查看是否创建完成

kubectl get pod -n kube-system

 查看bgp模式是否生效

route -n

当显示的是实际网卡时说明为bgp模式,默认的IPIP模式是显示的TUNL虚拟的隧道协议

可以在运行中的calico修改模式

kubectl edit ippool

将Always改为Never就是bgp模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值