前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >高级功能 | Kube-OVN集成Cilium

高级功能 | Kube-OVN集成Cilium

作者头像
灵雀云
发布于 2022-11-29 08:02:20
发布于 2022-11-29 08:02:20
1K00
代码可运行
举报
运行总次数:0
代码可运行

" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"

【Cilium 】[1] 是一款基于 eBPF 的网络和安全组件,Kube-OVN 利用其中的 【CNI Chaining】[2] 模式来对已有功能进行增强。用户可以同时使用 Kube-OVN 丰富的网络抽象能力和 eBPF 带来的监控和安全能力。

通过集成 Cilium,Kube-OVN 用户可以获得如下增益:

  • 更丰富高效的安全策略。
  • 基于 Hubble 的监控视图。

前提条件

  1. Linux 内核版本高于 4.19 或其他兼容内核以获得完整 eBPF 能力支持。
  2. 提前部署 Helm 为安装 Cilium 做准备,部署 Helm 请参考 【Installing Helm】[3]

配置 Kube-OVN

为了充分使用 Cilium 的安全能力,需要关闭 Kube-OVN 内的 networkpolicy 功能,并调整 CNI 配置优先级。

install.sh 脚本里修改下列变量:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ENABLE_NP=false
CNI_CONFIG_PRIORITY=10

若已部署完成,可通过修改 kube-ovn-controller 的启动参数进行调整 networkpolicy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
args:
- --enable-np=false

修改 kube-ovn-cni 启动参数调整 CNI 配置优先级:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
args:
- --cni-conf-name=10-kube-ovn.conflist

在每个节点调整 Kube-OVN 配置文件名称,以便优先使用 Cilium 进行操作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mv /etc/cni/net.d/01-kube-ovn.conflist /etc/cni/net.d/10-kube-ovn.conflist

部署 Cilium

创建 chaining.yaml 配置文件,使用 Cilium 的 generic-veth 模式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apiVersion: v1kind: ConfigMapmetadata:  name: cni-configuration  namespace: kube-systemdata:  cni-config: |-    {"name": "generic-veth","cniVersion": "0.3.1","plugins": [        {"type": "kube-ovn","server_socket": "/run/openvswitch/kube-ovn-daemon.sock","ipam": {"type": "kube-ovn","server_socket": "/run/openvswitch/kube-ovn-daemon.sock"          }        },        {"type": "portmap","snat": true,"capabilities": {"portMappings": true}        },        {"type": "cilium-cni"        }      ]    }

安装配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
kubectl apply -f chaining.yaml

使用 Helm 部署 Cilium:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
helm repo add cilium https://helm.cilium.io/
helm install cilium cilium/cilium --version 1.11.6 \
    --namespace kube-system \
    --set cni.chainingMode=generic-veth \
    --set cni.customConf=true \
    --set cni.configMap=cni-configuration \
    --set tunnel=disabled \
    --set enableIPv4Masquerade=false \
    --set enableIdentityMark=false

确认 Cilium 安装成功:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# cilium  status
    /¯¯\
 /¯¯\__/¯¯\    Cilium:         OK
 \__/¯¯\__/    Operator:       OK
 /¯¯\__/¯¯\    Hubble:         disabled
 \__/¯¯\__/    ClusterMesh:    disabled
    \__/

DaemonSet         cilium             Desired: 2, Ready: 2/2, Available: 2/2
Deployment        cilium-operator    Desired: 2, Ready: 2/2, Available: 2/2
Containers:       cilium             Running: 2
                  cilium-operator    Running: 2
Cluster Pods:     8/11 managed by Cilium
Image versions    cilium             quay.io/cilium/cilium:v1.10.5@sha256:0612218e28288db360c63677c09fafa2d17edda4f13867bcabf87056046b33bb: 2
                  cilium-operator    quay.io/cilium/operator-generic:v1.10.5@sha256:2d2f730f219d489ff0702923bf24c0002cd93eb4b47ba344375566202f56d972: 2

文章链接

1、Cilium:https://cilium.io/

2、CNI Chaining:https://docs.cilium.io/en/stable/gettingstarted/cni-chaining/

3、Installing Helm:https://helm.sh/docs/intro/install/

更多功能介绍,请见Kube-OVN 最新中文文档(点击阅读原文):https://kubeovn.github.io/docs/v1.10.x/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-11-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云原生技术社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Cilium 系列-2-Cilium 快速安装
•Cilium 1.13.4•K3s v1.26.6+k3s1•OS•Debian 10, Kernel 4.19.232, arm64•Ubuntu 23.04, Kernel 6.2, x86
东风微鸣
2023/09/01
8820
Cilium 系列-2-Cilium 快速安装
使用 k3s 搭建 cilium + istio 实验环境
以下步骤运行在 oracle cloud ARM Ampere A1 实例上,实例配置为:4C24G,操作系统为:ubuntu 22.04 LTS
tanmx
2023/10/18
1.2K0
云原生 | 在 Kubernetes 中使用 Cilium 替代 Calico 网络插件实践指南!
Cilium 是一款开源软件,它基于一种名为eBPF的新的Linux内核技术提供动力,用于透明地保护使用 Docker 和 Kubernetes 等Linux 容器管理平台中部署的应用程序服务之间的网络连接,Cilium 主要使用场景是在 Kubernetes 中,但 Cilium 的优势并不仅限于 Kubernetes 环境。
全栈工程师修炼指南
2024/09/10
1.4K0
云原生 | 在 Kubernetes 中使用 Cilium 替代 Calico 网络插件实践指南!
Kube-OVN 高级功能 | DPDK 支持
" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"
灵雀云
2023/02/27
9460
Kube-OVN 高级功能 | DPDK 支持
eBPF Cilium实战(1) - 基于团队的网络隔离
在 Rainbond 集群中,每个团队对应于底层 Kubernetes 的一个 Namespace ,由于之前使用的底层网络无法进行 Namespace 级别的网络管理,所以在 Rainbond 同一集群下的不同团队间,所以组件可以自由的进行互相访问,用户无法对此做出任何限制,这也导致了底层网络的安全隐患一直存在。现在由 cilium 提供网络服务的 Kubernetes 集群可以很好的解决这一问题,用户可以根据自己的需求,制定针对每个团队、每个组件的网络策略,加强底层网络管理,实现网络层的安全把控。
Rainbond开源
2022/04/06
9340
Cilium 容器网络的落地实践
随着越来越多的企业采用 Kubernetes,围绕多云、安全、可见性和可扩展性等新要求,可编程数据平面的需求用例范围越来越广。此外,服务网格和无服务器等新技术对 Kubernetes 底层提出了更多的定制化要求。这些新需求都有一些共同点:它们需要一个更可编程的数据平面,能够在不牺牲性能的情况下执行 Kubernetes 感知的网络数据操作。
用户5166556
2023/03/18
6860
Cilium 容器网络的落地实践
Kube-OVN1.9.0新版本发布|支持集成 Cilium 策略,支持优先级QoS,VPC的网络能力增强等
1月12日,Kube-OVN 1.9.0 版本正式发布,感谢社区小伙伴们在这段时间来的贡献和支持!
灵雀云
2022/03/03
9990
Kube-OVN1.9.0新版本发布|支持集成 Cilium 策略,支持优先级QoS,VPC的网络能力增强等
Kube-OVN 高级功能 | OpenStack 集成
" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"
灵雀云
2023/02/27
1.2K0
Kube-OVN 高级功能 | OpenStack 集成
Cilium系列-4-Cilium本地路由
在前文[2]中我们提到, cilium install 默认安装后, Cilium 功能启用和禁用情况如下:
东风微鸣
2023/09/01
5810
Cilium系列-4-Cilium本地路由
Cilium install
现代数据中心应用程序的开发已经转向微服务,微服务应用程序往往是高度动态的,高度不稳定的容器生命周期让传统的 Linux 网络安全方法(例如 iptables)应付不断更新的负载均衡表和访问控制列表劣势显现出来。
后端云
2022/11/25
9210
Cilium 系列-3-Cilium 的基本组件和重要概念
如上所述,安装 Cilium 时,会安装几个运行组件(有些是可选组件), 它们各是什么用途?
东风微鸣
2023/09/01
5950
Cilium 系列-3-Cilium 的基本组件和重要概念
Kube-OVN 混合网络场景最佳实践
在近期的技术分享中,Kube-OVN作者刘梦馨与现场网络专家深入探讨了Kube-OVN在混合网络场景下的最佳实践。本次分享详细介绍了Overlay和Underlay网络的特点及其在实际应用中的混用场景,并展示了Kube-OVN项目如何通过自身的解决方案应对混合网络的挑战。以下是本次分享的详细内容回顾。
灵雀云
2024/07/30
3430
Kube-OVN 混合网络场景最佳实践
高级功能 | 了解Kube-OVN性能调优能力
" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"
灵雀云
2022/11/23
1.4K0
高级功能 | 了解Kube-OVN性能调优能力
最受关注的 Cilium Service Mesh 到底怎么玩? - 上手实践
Cilium 是一个基于 eBPF 技术,用于为容器工作负载间提供安全且具备可观测性的网络连接的开源软件。
Jintao Zhang
2021/12/26
1.1K0
最受关注的 Cilium Service Mesh 到底怎么玩? - 上手实践
Kube-OVN高级功能 | 支持 BGP
" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"
灵雀云
2023/03/27
1K0
Kube-OVN高级功能  |  支持 BGP
Cilium系列-5-Cilium替换KubeProxy
将 Kubernetes 的 CNI 从其他组件切换为 Cilium, 已经可以有效地提升网络的性能. 但是通过对 Cilium 不同模式的切换/功能的启用, 可以进一步提升 Cilium 的网络性能. 具体调优项包括不限于:
东风微鸣
2023/09/01
4640
Cilium系列-5-Cilium替换KubeProxy
再谈自研开源Kube-OVN, 设计思路及实现原理
关于 OVN 和 OVS 的介绍可以参考之前的分享《灵雀云开源Kube-OVN网络组件,增强Kubernetes网络功能》。目前Kube-OVN已经在GitHub开源 https://github.com/alauda/kube-ovn,欢迎大家 star 做贡献。
灵雀云
2019/07/30
7.3K0
再谈自研开源Kube-OVN, 设计思路及实现原理
Cilium使用 (Cilium 3)
Cilium要求的内核版本比较高,需要对内核进行升级,否则会运行失败。错误日志如minimal supported kernel version is 4.8.0; kernel version that is running is: 3.10.0"
charlieroro
2020/04/24
2.4K0
高级功能 | Kube-OVN 外部网关设置
" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"
灵雀云
2023/02/27
8740
高级功能 | Kube-OVN 外部网关设置
二进制安装Kubernetes(k8s) v1.27.3 IPv4/IPv6双栈 可脱离互联网
https://github.com/cby-chen/Kubernetes 开源不易,帮忙点个star,谢谢了
小陈运维
2023/08/18
2K0
二进制安装Kubernetes(k8s) v1.27.3 IPv4/IPv6双栈 可脱离互联网
相关推荐
Cilium 系列-2-Cilium 快速安装
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验