前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >高级功能 | Kube-OVN VIP 预留设置

高级功能 | Kube-OVN VIP 预留设置

作者头像
灵雀云
发布2023-02-27 09:56:15
5540
发布2023-02-27 09:56:15
举报

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

在一些场景下我们希望动态的预留一部分 IP 但是并不分配给 Pod 而是分配给其他的基础设施启用,例如:

  • Kubernetes 嵌套 Kubernetes 的场景中上层 Kubernetes 使用 Underlay 网络会占用底层 Subnet 可用地址。
  • LB 或其他网络基础设施需要使用一个 Subnet 内的 IP,但不会单独起 Pod。

创建随机地址 VIP

如果只是为了预留若干 IP 而对 IP 地址本身没有要求可以使用下面的 yaml 进行创建:

代码语言:javascript
复制
apiVersion: kubeovn.io/v1
kind: Vip
metadata:
  name: vip-dynamic-01
spec:
  subnet: ovn-default
  • subnet: 将从该 Subnet 中预留 IP。

创建成功后查询该 VIP:

代码语言:javascript
复制
# kubectl get vip
NAME             V4IP         PV4IP   MAC                 PMAC   V6IP   PV6IP   SUBNET        READY
vip-dynamic-01   10.16.0.12           00:00:00:F0:DB:25                         ovn-default   true

可见该 VIP 被分配了10.16.0.12的 IP 地址,该地址可以之后供其他网络基础设施使用。

创建固定地址 VIP

如对预留的 VIP 的 IP 地址有需求可使用下面的 yaml 进行固定分配:

代码语言:javascript
复制
apiVersion: kubeovn.io/v1
kind: Vip
metadata:
  name: static-vip01
spec:
  subnet: ovn-default 
  v4Ip: "10.16.0.121"
  • subnet: 将从该 Subnet 中预留 IP。
  • v4Ip: 固定分配的 IP 地址,该地址需在subnet的 CIDR 范围内。

创建成功后查询该 VIP:

代码语言:javascript
复制
# kubectl get vipNAME             V4IP         PV4IP   MAC                 PMAC   V6IP   PV6IP   SUBNET        READYstatic-vip01   10.16.0.121           00:00:00:F0:DB:26                         ovn-default   true

可见该 VIP 被分配了所预期的 IP 地址。

Pod 使用 VIP 来固定 IP

该功能目前只在 master 分支支持。

可以使用 annotation 将某个 VIP 分配给一个 Pod:

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: static-ip
  annotations:
    ovn.kubernetes.io/vip: vip-dynamic-01 # 指定 vip
  namespace: default
spec:
  containers:
    - name: static-ip
      image: nginx:alpine

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


Kube-OVN 项目资料

官网:

https://www.kube-ovn.io

GitHub:

https://github.com/kubeovn/kube-ovn

Slack:

https://kube-ovn-slackin.herokuapp.com

关于Kube-OVN

Kube-OVN 是一款由灵雀云自主研发的企业级云原生 Kubernetes 容器网络编排系统,它通过将 OpenStack 领域成熟的网络功能平移到 Kubernetes,极大增强了 Kubernetes 容器网络的安全性、可运维性、管理性和性能,为 Kubernetes 生态的落地带来了独特的价值。

2021年初,Kube-OVN成为全球范围内首个被CNCF纳入托管的开源CNI网络项目,也是中国容器公司首次将独立设计研发的项目成功贡献进入CNCF基金会,同时,它也是木兰社区旗下的明星项目之一。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建随机地址 VIP
  • 如果只是为了预留若干 IP 而对 IP 地址本身没有要求可以使用下面的 yaml 进行创建:
  • 创建固定地址 VIP
  • Pod 使用 VIP 来固定 IP
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档