第 31 章 UserDefinedNetwork [k8s.ovn.org/v1]


描述
UserDefinedNetwork 描述 Namespace 的网络请求。
类型
object
必填
  • spec

31.1. 规格

Expand
属性类型描述

apiVersion

string

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

UserDefinedNetworkSpec 定义 UserDefinedNetworkSpec 的所需状态。

status

object

UserDefinedNetworkStatus 包含 UserDefinedNetwork 的观察状态。

31.1.1. .spec

描述
UserDefinedNetworkSpec 定义 UserDefinedNetworkSpec 的所需状态。
类型
object
必填
  • topology
Expand
属性类型描述

layer2

object

Layer2 是 Layer2 拓扑配置。

layer3

object

Layer3 是 Layer3 拓扑配置。

topology

string

拓扑描述了网络配置。

允许的值是 "Layer3", "Layer2"。Layer3 拓扑会为每个节点创建一个第 2 层段,各自有不同的子网。第 3 层路由用于互连节点子网。Layer2 拓扑创建一个供所有节点共享的逻辑交换机。

31.1.2. .spec.layer2

描述
Layer2 是 Layer2 拓扑配置。
类型
object
必填
  • role
Expand
属性类型描述

ipam

object

IPAM 部分包含与网络相关的 IPAM 配置。

joinSubnets

数组(字符串)

JoinSubnets 在 OVN 网络拓扑中使用。

双栈集群可以设置 2 个子网(每个 IP 系列一个),否则只允许 1 个子网。此字段仅允许"Primary"网络。不建议在不明确需要和了解 OVN 网络拓扑的情况下设置此字段。省略时,平台将选择一个合理的默认值,该默认值可能会随时间变化。

mtu

整数

MTU 是网络的最大传输单元。如果没有提供 MTU,则 OVN-Kubernetes 中全局配置的值(默认为 1400)用于网络。

role

string

Role 描述了 pod 中的 network 角色。

允许的值是 "Secondary"。二级网络只分配给使用 k8s.v1.cni.cncf.io/networks 注解来选择给定网络的 pod。

subnets

数组(字符串)

子网用于集群中的 pod 网络。双栈集群可以设置 2 个子网(每个 IP 系列一个),否则只允许 1 个子网。

格式应该与标准 CIDR 表示法匹配(例如 "10.128.0.0/16")。如果 ipam.modeDisabled,则必须省略此字段。

31.1.3. .spec.layer2.ipam

描述
IPAM 部分包含与网络相关的 IPAM 配置。
类型
object
Expand
属性类型描述

生命周期

string

生命周期控制 IP 地址管理生命周期。

唯一允许的值是 Persistent。设置后,OVN Kubernetes 分配的 IP 地址将保留在 ipamclaims.k8s.cni.cncf.io 对象中。如果请求,其他 pod 将重复使用这些 IP 地址。仅在 启用 模式时支持。

模式

string

模式 控制 OVN 管理 IP 配置的数量。启用 意味着 OVN-Kubernetes 会将 IP 配置应用到 SDN 基础架构,它还会将 IP 从所选子网分配给单个 pod。禁用 意味着 OVN-Kubernetes 将只分配 MAC 地址并提供第 2 层通信,允许用户为 pod 配置 IP 地址。disabled 仅适用于二级网络。禁用 IPAM 后,任何依赖于 IP 选择 pod 的 Kubernetes 功能将不再起作用(如网络策略、服务等)。此外,附加到这个网络的接口也会禁用 IP 端口安全性。默认为 已启用

31.1.4. .spec.layer3

描述
Layer3 是 Layer3 拓扑配置。
类型
object
必填
  • role
  • subnets
Expand
属性类型描述

joinSubnets

数组(字符串)

JoinSubnets 在 OVN 网络拓扑中使用。

双栈集群可以设置 2 个子网(每个 IP 系列一个),否则只允许 1 个子网。此字段仅允许"Primary"网络。不建议在不明确需要和了解 OVN 网络拓扑的情况下设置此字段。省略时,平台将选择一个合理的默认值,该默认值可能会随时间变化。

mtu

整数

MTU 是网络的最大传输单元。

如果没有提供 MTU,则 OVN-Kubernetes 中全局配置的值(默认为 1400)用于网络。

role

string

Role 描述了 pod 中的 network 角色。

允许的值是 "Primary" 和 "Secondary"。主网络会自动分配给在同一命名空间中创建的每个 pod。二级网络只分配给使用 k8s.v1.cni.cncf.io/networks 注解来选择给定网络的 pod。

subnets

数组

子网用于集群中的 pod 网络。

双栈集群可以设置 2 个子网(每个 IP 系列一个),否则只允许 1 个子网。给定子网被分成较小的子网。

subnets[]

object

 

31.1.5. .spec.layer3.subnets

描述

子网用于集群中的 pod 网络。

双栈集群可以设置 2 个子网(每个 IP 系列一个),否则只允许 1 个子网。给定子网被分成较小的子网。

类型
数组

31.1.6. .spec.layer3.subnets[]

描述
类型
object
必填
  • cidr
Expand
属性类型描述

cidr

string

CIDR 指定 L3Subnet,每个节点被分成较小的子网。

hostSubnet

整数

HostSubnet 指定每个节点的子网大小。

如果没有设置,则会自动分配。

31.1.7. .status

描述
UserDefinedNetworkStatus 包含 UserDefinedNetwork 的观察状态。
类型
object
Expand
属性类型描述

conditions

array

 

conditions[]

object

condition 包含此 API 资源当前状态的一个方面的详细信息。

31.1.8. .status.conditions

描述
类型
array

31.1.9. .status.conditions[]

描述
condition 包含此 API 资源当前状态的一个方面的详细信息。
类型
object
必填
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat