TF+K8s部署指南丨容器的多网络接口(multi-net)功能支持

本文介绍了从5.1版本开始,Tungsten Fabric支持为Kubernetes容器分配多个网络接口(multi-net),允许容器连接到多个网络。这种支持基于Kubernetes的多网模型,无需修改Kubernetes API。创建多网络接口涉及创建网络对象模型、建立网络和将网络分配给pod。同时,文章提到了一些限制和注意事项,包括不能在pod运行时添加或删除sidecar网络,以及TF CNI插件不支持Kubernetes的委托插件规范。
摘要由CSDN通过智能技术生成

从4.0版开始,Tungsten Fabric为使用Kubernetes编排器的容器提供网络支持。你可以使用标准容器网络接口(CNI插件)为创建的每个容器分配一个网络接口。有关Tungsten Fabric容器联网的更多信息,请参阅已发表文章

从5.1版本开始,Tungsten Fabric支持为容器分配多个网络接口(multi-net),使容器能够连接到多个网络,并且可以指定容器能连接到的网络。网络接口可以是物理接口,也可以是虚拟接口,并连接到Linux网络命名空间。网络命名空间是Linux内核中的网络栈。一个以上的容器可以共享同一个网络命名空间。

Tungsten Fabric多网络支持是基于Kubernetes多网模型的。Kubernetes多网模型有特定的设计和结构,可以扩展到TF多网络等非kubernetes的模型当中。TF多网模型不需要修改Kubernetes API和Kubernetes CNI驱动。TF多网模型与Kubernetes多网模型一样,也不改变已有的集群范围网络行为。

创建多网络接口时,请注意以下限制和注意事项:

  • 当pod仍在运行时,不能添加或删除sidecar 网络。
  • 在从Kubernetes API服务器中删除网络附件定义之前,由管理员负责删除相应的TF pod。
  • 除了自定义网络外,TF还创建了一个默认的cluster-wide-network。
  • TF CNI插件不是一个委托插件。它不支持Kubernetes Network Custom Resource Definition De
    Facto Standard Version 1中提供的委托插件规范。有关更多信息,请从以下页面中查看:

https://github.com/K8sNetworkPlumbingWG/multi-net-spec

创建多网络接口

按照这些步骤来创建多网络接口。

1 创建网络对象模型

如果集群不支持网络对象模型,你就创建一个网络对象模型。

容器编排平台的对象模型表示网络,并将网络连接到容器。如果模型默认不支持网络对象,你可以使用扩展来表示网络。

使用Kubernetes NetworkAttachmentDefinition CRD对象创建网络对象模型。

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  # name must match the spec fields below, and be in the form: <plural>.<group>
  name: network-attachment-definitions.k8s.cni.cncf
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值