k8s集群使用calico网络组件

一、前言

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

bash 复制代码
#在大概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虚拟的隧道协议

相关推荐
小猿姐2 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
阿里云云原生3 天前
深入内核:拆解 OpenTelemetry eBPF 探针如何优雅地“透视”多语言微服务?
云原生
2601_961875243 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant
java_cj3 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
程序员老赵3 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
正经教主3 天前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang3 天前
Docker 使用完整指南
运维·docker·容器
正经教主3 天前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
qq_452396233 天前
第十三篇:《K8s 安全基础:RBAC、ServiceAccount、Pod Security》
java·安全·kubernetes
睡不醒男孩0308233 天前
云原生运维实战:高并发架构下的云原生可观测性、韧性降级与自动化干预体系
数据库·kubernetes·高并发·prometheus·devops·sre·缓存调优