×
描述

AdminNetworkPolicy 是集群级资源,它是 AdminNetworkPolicy API 的一部分。

类型

对象

必需
  • 元数据

  • spec

规范

属性 类型 描述

apiVersion

字符串

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

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。采用驼峰式命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

元数据

ObjectMeta

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

spec

对象

AdminNetworkPolicy 的期望行为规范。

status

对象

Status 是实现要报告的状态。

.spec

描述

AdminNetworkPolicy 的期望行为规范。

类型

对象

必需
  • priority

  • subject

属性 类型 描述

egress

数组

Egress 是要应用于选定 Pod 的 Egress 规则列表。每个 ANP 实例最多允许 100 条规则。单个 ANP 对象中 egress 规则的相对优先级(所有这些规则共享优先级)将由编写规则的顺序决定。因此,出现在 egress 规则顶部的规则将具有最高的优先级。没有 egress 规则的 ANP 不会影响 egress 流量。

支持:核心

egress[]

对象

AdminNetworkPolicyEgressRule 描述对源自 AdminNetworkPolicy 的 Subject 字段选择的 Pod 的特定流量采取的操作。<network-policy-api:experimental:validation>

ingress

数组

入口规则 (Ingress) 是应用于所选 Pod 的入口规则列表。每个 ANP 实例最多允许 100 条规则。单个 ANP 对象内入口规则的相对优先级(所有规则共享相同的优先级)由规则的写入顺序决定。因此,出现在入口规则顶部的规则优先级最高。没有入口规则的 ANP 不会影响入口流量。

支持:核心

ingress[]

对象

AdminNetworkPolicyIngressRule 描述对目标指向由 AdminNetworkPolicy 的 Subject 字段选择的 Pod 的特定流量采取的操作。

priority

整数

优先级是一个 0 到 1000 的值。优先级值越低的规则优先级越高,会在优先级值更高的规则之前进行检查。所有 AdminNetworkPolicy 规则都比 NetworkPolicy 或 BaselineAdminNetworkPolicy 规则优先级更高。如果两个 ANP 对象具有相同的优先级,则行为未定义。

支持:核心

subject

对象

Subject 定义此 AdminNetworkPolicy 应用到的 Pod。请注意,主机网络 Pod 不包含在主题选择中。

支持:核心

.spec.egress

描述

Egress 是要应用于选定 Pod 的 Egress 规则列表。每个 ANP 实例最多允许 100 条规则。单个 ANP 对象中 egress 规则的相对优先级(所有这些规则共享优先级)将由编写规则的顺序决定。因此,出现在 egress 规则顶部的规则将具有最高的优先级。没有 egress 规则的 ANP 不会影响 egress 流量。

支持:核心

类型

数组

.spec.egress[]

描述

AdminNetworkPolicyEgressRule 描述对源自 AdminNetworkPolicy 的 Subject 字段选择的 Pod 的特定流量采取的操作。<network-policy-api:experimental:validation>

类型

对象

必需
  • 动作

  • 目标

属性 类型 描述

动作

字符串

Action 指定此规则对匹配流量的影响。目前支持以下操作:Allow:允许选定的流量(即使它本来会被 NetworkPolicy 拒绝);Deny:拒绝选定的流量;Pass:指示选定的流量跳过任何剩余的 ANP 规则,然后将执行传递给选择该 Pod 的任何 NetworkPolicy。如果 Pod 没有被任何 NetworkPolicy 选择,则执行将传递给选择该 Pod 的任何 BaselineAdminNetworkPolicy。

支持:核心

名称

字符串

Name 是此规则的标识符,长度不得超过 100 个字符。实现应使用此字段来帮助改进任何已应用 AdminNetworkPolicy 的可观察性、可读性和错误报告。

支持:核心

端口

数组

Ports 允许基于端口和协议匹配流量。此字段是出站 egress 流量的目标端口列表。如果未设置 Ports,则规则不会通过端口过滤流量。

支持:核心

ports[]

对象

AdminNetworkPolicyPort 描述如何选择 pod(s) 上的网络端口。必须设置且只能设置一个字段。

目标

数组

To 是此规则适用的流量目标列表。如果任何 AdminNetworkPolicyEgressPeer 与出站流量的目标匹配,则应用指定的动作。此字段必须定义且必须包含至少一个项目。

支持:核心

to[]

对象

AdminNetworkPolicyEgressPeer 定义允许流量到达的节点。对于给定的节点,必须设置且只能设置一个选择器指针。如果使用者观察到其所有字段均未设置,则必须假定已指定未知选项并关闭失败。

.spec.egress[].ports

描述

Ports 允许基于端口和协议匹配流量。此字段是出站 egress 流量的目标端口列表。如果未设置 Ports,则规则不会通过端口过滤流量。

支持:核心

类型

数组

.spec.egress[].ports[]

描述

AdminNetworkPolicyPort 描述如何选择 pod(s) 上的网络端口。必须设置且只能设置一个字段。

类型

对象

属性 类型 描述

命名端口

字符串

NamedPort 基于名称选择 pod(s) 上的端口。

支持:扩展

<network-policy-api:experimental>

端口号

对象

Port 基于编号选择 pod(s) 上的端口。

支持:核心

端口范围

对象

PortRange 基于提供的起始值和结束值选择 pod(s) 上的端口范围。

支持:核心

.spec.egress[].ports[].portNumber

描述

Port 基于编号选择 pod(s) 上的端口。

支持:核心

类型

对象

必需
  • 端口

  • 协议

属性 类型 描述

端口

整数

Number 定义网络端口值。

支持:核心

协议

字符串

Protocol 是流量必须匹配的网络协议 (TCP、UDP 或 SCTP)。如果未指定,则此字段默认为 TCP。

支持:核心

.spec.egress[].ports[].portRange

描述

PortRange 基于提供的起始值和结束值选择 pod(s) 上的端口范围。

支持:核心

类型

对象

必需
  • 结束

  • 开始

属性 类型 描述

结束

整数

End 定义一个网络端口,它是端口范围的结束,End 值必须大于 Start。

支持:核心

协议

字符串

Protocol 是流量必须匹配的网络协议 (TCP、UDP 或 SCTP)。如果未指定,则此字段默认为 TCP。

支持:核心

开始

整数

Start 定义一个网络端口,它是端口范围的开始,Start 值必须小于 End。

支持:核心

.spec.egress[].to

描述

To 是此规则适用的流量目标列表。如果任何 AdminNetworkPolicyEgressPeer 与出站流量的目标匹配,则应用指定的动作。此字段必须定义且必须包含至少一个项目。

支持:核心

类型

数组

.spec.egress[].to[]

描述

AdminNetworkPolicyEgressPeer 定义允许流量到达的节点。对于给定的节点,必须设置且只能设置一个选择器指针。如果使用者观察到其所有字段均未设置,则必须假定已指定未知选项并关闭失败。

类型

对象

属性 类型 描述

命名空间

对象

Namespaces 定义一种选择一组 Namespaces 中所有 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

网络

数组 (字符串)

Networks 定义了一种通过 CIDR 块选择对等端的方法。这旨在表示存在于集群外部的实体,这些实体不能通过 Pod、Namespaces 和 Nodes 对等端进行选择,但请注意,集群内部流量也会针对该规则进行检查。因此,如果您允许或拒绝对"0.0.0.0/0"的流量,这也将允许或拒绝所有 IPv4 Pod 到 Pod 的流量。如果您不希望这样做,请在 Networks 规则之前添加一个允许所有 Pod 流量的规则。

Networks 中的每个项目都应以 CIDR 格式提供,并且应为 IPv4 或 IPv6,例如“10.0.0.0/8”或“fd00::/8”。

Networks 最多可以指定 25 个 CIDR。

支持:扩展

<network-policy-api:experimental>

节点

对象

Nodes 定义了一种选择集群中一组节点的方法。此字段遵循标准标签选择器语义;如果存在但为空,则选择所有节点。

支持:扩展

<network-policy-api:experimental>

Pod

对象

Pods 定义了一种选择一组 Namespaces 中一组 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

.spec.egress[].to[].namespaces

描述

Namespaces 定义一种选择一组 Namespaces 中所有 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.egress[].to[].namespaces.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.egress[].to[].namespaces.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.egress[].to[].nodes

描述

Nodes 定义了一种选择集群中一组节点的方法。此字段遵循标准标签选择器语义;如果存在但为空,则选择所有节点。

支持:扩展

<network-policy-api:experimental>

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.egress[].to[].nodes.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.egress[].to[].nodes.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.egress[].to[].pods

描述

Pods 定义了一种选择一组 Namespaces 中一组 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

类型

对象

必需
  • 命名空间选择器

  • Pod选择器

属性 类型 描述

命名空间选择器

对象

NamespaceSelector 遵循标准标签选择器语义;如果为空,则选择所有 Namespaces。

Pod选择器

对象

PodSelector 用于显式选择命名空间中的 Pod;如果为空,则选择所有 Pod。

.spec.egress[].to[].pods.namespaceSelector

描述

NamespaceSelector 遵循标准标签选择器语义;如果为空,则选择所有 Namespaces。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.egress[].to[].pods.namespaceSelector.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.egress[].to[].pods.namespaceSelector.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.egress[].to[].pods.podSelector

描述

PodSelector 用于显式选择命名空间中的 Pod;如果为空,则选择所有 Pod。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.egress[].to[].pods.podSelector.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.egress[].to[].pods.podSelector.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.ingress

描述

入口规则 (Ingress) 是应用于所选 Pod 的入口规则列表。每个 ANP 实例最多允许 100 条规则。单个 ANP 对象内入口规则的相对优先级(所有规则共享相同的优先级)由规则的写入顺序决定。因此,出现在入口规则顶部的规则优先级最高。没有入口规则的 ANP 不会影响入口流量。

支持:核心

类型

数组

.spec.ingress[]

描述

AdminNetworkPolicyIngressRule 描述对目标指向由 AdminNetworkPolicy 的 Subject 字段选择的 Pod 的特定流量采取的操作。

类型

对象

必需
  • 动作

  • 来源

属性 类型 描述

动作

字符串

Action 指定此规则对匹配流量的影响。目前支持以下操作:Allow:允许选定的流量(即使它本来会被 NetworkPolicy 拒绝);Deny:拒绝选定的流量;Pass:指示选定的流量跳过任何剩余的 ANP 规则,然后将执行传递给选择该 Pod 的任何 NetworkPolicy。如果 Pod 没有被任何 NetworkPolicy 选择,则执行将传递给选择该 Pod 的任何 BaselineAdminNetworkPolicy。

支持:核心

来源

数组

From 是此规则适用的流量来源列表。如果任何 AdminNetworkPolicyIngressPeer 与传入流量的来源匹配,则应用指定的动作。此字段必须定义且必须包含至少一个项目。

支持:核心

from[]

对象

AdminNetworkPolicyIngressPeer 定义了允许来自集群内对等体的流量。对于给定的对等体,必须设置一个且只有一个选择器指针。如果使用者观察到其所有字段均未设置,则必须假设已指定未知选项并关闭。

名称

字符串

Name 是此规则的标识符,长度不得超过 100 个字符。实现应使用此字段来帮助改进任何已应用 AdminNetworkPolicy 的可观察性、可读性和错误报告。

支持:核心

端口

数组

Ports 允许根据端口和协议匹配流量。此字段是一个端口列表,应根据为此策略选择的 Pod(即策略的主题)进行匹配。因此,它匹配传入流量的目标端口。如果未设置 Ports,则规则不会通过端口过滤流量。

支持:核心

ports[]

对象

AdminNetworkPolicyPort 描述如何选择 pod(s) 上的网络端口。必须设置且只能设置一个字段。

.spec.ingress[].from

描述

From 是此规则适用的流量来源列表。如果任何 AdminNetworkPolicyIngressPeer 与传入流量的来源匹配,则应用指定的动作。此字段必须定义且必须包含至少一个项目。

支持:核心

类型

数组

.spec.ingress[].from[]

描述

AdminNetworkPolicyIngressPeer 定义了允许来自集群内对等体的流量。对于给定的对等体,必须设置一个且只有一个选择器指针。如果使用者观察到其所有字段均未设置,则必须假设已指定未知选项并关闭。

类型

对象

属性 类型 描述

命名空间

对象

Namespaces 定义一种选择一组 Namespaces 中所有 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

Pod

对象

Pods 定义了一种选择一组 Namespaces 中一组 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

.spec.ingress[].from[].namespaces

描述

Namespaces 定义一种选择一组 Namespaces 中所有 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.ingress[].from[].namespaces.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.ingress[].from[].namespaces.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.ingress[].from[].pods

描述

Pods 定义了一种选择一组 Namespaces 中一组 Pod 的方法。请注意,主机网络 Pod 不包含在此类型的节点中。

支持:核心

类型

对象

必需
  • 命名空间选择器

  • Pod选择器

属性 类型 描述

命名空间选择器

对象

NamespaceSelector 遵循标准标签选择器语义;如果为空,则选择所有 Namespaces。

Pod选择器

对象

PodSelector 用于显式选择命名空间中的 Pod;如果为空,则选择所有 Pod。

.spec.ingress[].from[].pods.namespaceSelector

描述

NamespaceSelector 遵循标准标签选择器语义;如果为空,则选择所有 Namespaces。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.ingress[].from[].pods.namespaceSelector.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.ingress[].from[].pods.namespaceSelector.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.ingress[].from[].pods.podSelector

描述

PodSelector 用于显式选择命名空间中的 Pod;如果为空,则选择所有 Pod。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.ingress[].from[].pods.podSelector.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.ingress[].from[].pods.podSelector.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.ingress[].ports

描述

Ports 允许根据端口和协议匹配流量。此字段是一个端口列表,应根据为此策略选择的 Pod(即策略的主题)进行匹配。因此,它匹配传入流量的目标端口。如果未设置 Ports,则规则不会通过端口过滤流量。

支持:核心

类型

数组

.spec.ingress[].ports[]

描述

AdminNetworkPolicyPort 描述如何选择 pod(s) 上的网络端口。必须设置且只能设置一个字段。

类型

对象

属性 类型 描述

命名端口

字符串

NamedPort 基于名称选择 pod(s) 上的端口。

支持:扩展

<network-policy-api:experimental>

端口号

对象

Port 基于编号选择 pod(s) 上的端口。

支持:核心

端口范围

对象

PortRange 基于提供的起始值和结束值选择 pod(s) 上的端口范围。

支持:核心

.spec.ingress[].ports[].portNumber

描述

Port 基于编号选择 pod(s) 上的端口。

支持:核心

类型

对象

必需
  • 端口

  • 协议

属性 类型 描述

端口

整数

Number 定义网络端口值。

支持:核心

协议

字符串

Protocol 是流量必须匹配的网络协议 (TCP、UDP 或 SCTP)。如果未指定,则此字段默认为 TCP。

支持:核心

.spec.ingress[].ports[].portRange

描述

PortRange 基于提供的起始值和结束值选择 pod(s) 上的端口范围。

支持:核心

类型

对象

必需
  • 结束

  • 开始

属性 类型 描述

结束

整数

End 定义一个网络端口,它是端口范围的结束,End 值必须大于 Start。

支持:核心

协议

字符串

Protocol 是流量必须匹配的网络协议 (TCP、UDP 或 SCTP)。如果未指定,则此字段默认为 TCP。

支持:核心

开始

整数

Start 定义一个网络端口,它是端口范围的开始,Start 值必须小于 End。

支持:核心

.spec.subject

描述

Subject 定义此 AdminNetworkPolicy 应用到的 Pod。请注意,主机网络 Pod 不包含在主题选择中。

支持:核心

类型

对象

属性 类型 描述

命名空间

对象

Namespaces 用于通过命名空间选择器选择 Pod。

Pod

对象

Pods 用于通过命名空间和 Pod 选择器选择 Pod。

.spec.subject.namespaces

描述

Namespaces 用于通过命名空间选择器选择 Pod。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.subject.namespaces.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.subject.namespaces.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.subject.pods

描述

Pods 用于通过命名空间和 Pod 选择器选择 Pod。

类型

对象

必需
  • 命名空间选择器

  • Pod选择器

属性 类型 描述

命名空间选择器

对象

NamespaceSelector 遵循标准标签选择器语义;如果为空,则选择所有 Namespaces。

Pod选择器

对象

PodSelector 用于显式选择命名空间中的 Pod;如果为空,则选择所有 Pod。

.spec.subject.pods.namespaceSelector

描述

NamespaceSelector 遵循标准标签选择器语义;如果为空,则选择所有 Namespaces。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.subject.pods.namespaceSelector.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.subject.pods.namespaceSelector.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.spec.subject.pods.podSelector

描述

PodSelector 用于显式选择命名空间中的 Pod;如果为空,则选择所有 Pod。

类型

对象

属性 类型 描述

匹配表达式

数组

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

matchExpressions[]

对象

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

匹配标签

对象 (字符串)

matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,操作符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。

.spec.subject.pods.podSelector.matchExpressions

描述

matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。

类型

数组

.spec.subject.pods.podSelector.matchExpressions[]

描述

标签选择器要求是一个包含值、键和将键和值关联起来的操作符的选择器。

类型

对象

必需
  • 操作符

属性 类型 描述

字符串

key 是选择器应用到的标签键。

操作符

字符串

operator 表示键与一组值的关系。有效操作符为 In、NotIn、Exists 和 DoesNotExist。

数组 (字符串)

values 是字符串值的数组。如果操作符为 In 或 NotIn,则 values 数组必须非空。如果操作符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并修补程序期间被替换。

.status

描述

Status 是实现要报告的状态。

类型

对象

必需
  • conditions

属性 类型 描述

conditions

数组

conditions[]

对象

Condition 包含此 API 资源当前状态的一个方面的详细信息。--- 此结构旨在直接用作字段路径 .status.conditions 中的数组。例如:

type FooStatus struct{ // 表示 foo 当前状态的观察结果。 // 已知的 .status.conditions.type 为:“Available”、“Progressing”和“Degraded” // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"

// 其他字段 }

.status.conditions

描述
类型

数组

.status.conditions[]

描述

Condition 包含此 API 资源当前状态的一个方面的详细信息。--- 此结构旨在直接用作字段路径 .status.conditions 中的数组。例如:

type FooStatus struct{
    // Represents the observations of a foo's current state.
    // Known .status.conditions.type are: "Available", "Progressing", and "Degraded"
    // +patchMergeKey=type
    // +patchStrategy=merge
    // +listType=map
    // +listMapKey=type
    Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
    // other fields
}
类型

对象

必需
  • lastTransitionTime

  • message

  • reason

  • status

  • type

属性 类型 描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一种状态转换到另一种状态的最后时间。这应该是底层条件发生变化的时间。如果不知道,则使用 API 字段发生变化的时间是可以接受的。

message

字符串

message 是一个易于理解的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 表示设置条件的 .metadata.generation。例如,如果 .metadata.generation 当前为 12,但 .status.conditions[x].observedGeneration 为 9,则该条件相对于实例的当前状态已过期。

reason

字符串

reason 包含一个编程标识符,指示条件最后转换的原因。特定条件类型的生产者可以为此字段定义预期的值和含义,以及这些值是否被视为有保证的 API。该值应为驼峰式命名字符串。此字段不能为空。

status

字符串

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

type

字符串

条件的类型,使用驼峰式命名或 foo.example.com/CamelCase。--- 许多 .condition.type 值在资源(如 Available)之间是一致的,但由于任意条件可能很有用(参见 .node.status.conditions),因此消除冲突的能力非常重要。它匹配的正则表达式为 (dns1123SubdomainFmt/)?(qualifiedNameFmt)

API 端点

提供以下 API 端点

  • /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies

    • DELETE:删除 AdminNetworkPolicy 集合

    • GET:列出 AdminNetworkPolicy 类型的对象

    • POST:创建 AdminNetworkPolicy

  • /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}

    • DELETE:删除 AdminNetworkPolicy

    • GET:读取指定的 AdminNetworkPolicy

    • PATCH:部分更新指定的 AdminNetworkPolicy

    • PUT:替换指定的 AdminNetworkPolicy

  • /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}/status

    • GET:读取指定的 AdminNetworkPolicy 的状态

    • PATCH:部分更新指定的 AdminNetworkPolicy 的状态

    • PUT:替换指定的 AdminNetworkPolicy 的状态

/apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies

HTTP 方法

DELETE

描述

删除 AdminNetworkPolicy 集合

表 1. HTTP 响应
HTTP 代码 响应体

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法

GET

描述

列出 AdminNetworkPolicy 类型的对象

表 2. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicyList 模式

401 - Unauthorized

HTTP 方法

POST

描述

创建 AdminNetworkPolicy

表 3. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只会保留任何重复字段中的最后一个。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 4. 主体参数
参数 类型 描述

body

AdminNetworkPolicy 模式

表 5. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

201 - 已创建

AdminNetworkPolicy 模式

202 - 已接受

AdminNetworkPolicy 模式

401 - Unauthorized

/apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}

表 6. 全局路径参数
参数 类型 描述

名称

字符串

AdminNetworkPolicy 的名称

HTTP 方法

DELETE

描述

删除 AdminNetworkPolicy

表 7. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

表 8. HTTP 响应
HTTP 代码 响应体

200 - OK

Status 模式

202 - 已接受

Status 模式

401 - Unauthorized

HTTP 方法

GET

描述

读取指定的 AdminNetworkPolicy

表 9. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

401 - Unauthorized

HTTP 方法

PATCH

描述

部分更新指定的 AdminNetworkPolicy

表 10. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只会保留任何重复字段中的最后一个。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 11. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

401 - Unauthorized

HTTP 方法

PUT

描述

替换指定的 AdminNetworkPolicy

表 12. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只会保留任何重复字段中的最后一个。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 13. 请求体参数
参数 类型 描述

body

AdminNetworkPolicy 模式

表 14. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

201 - 已创建

AdminNetworkPolicy 模式

401 - Unauthorized

/apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}/status

表 15. 全局路径参数
参数 类型 描述

名称

字符串

AdminNetworkPolicy 的名称

HTTP 方法

GET

描述

读取指定的 AdminNetworkPolicy 的状态

表 16. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

401 - Unauthorized

HTTP 方法

PATCH

描述

部分更新指定的 AdminNetworkPolicy 的状态

表 17. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只会保留任何重复字段中的最后一个。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 18. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

401 - Unauthorized

HTTP 方法

PUT

描述

替换指定的 AdminNetworkPolicy 的状态

表 19. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只会保留任何重复字段中的最后一个。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 20. 请求体参数
参数 类型 描述

body

AdminNetworkPolicy 模式

表 21. HTTP 响应
HTTP 代码 响应体

200 - OK

AdminNetworkPolicy 模式

201 - 已创建

AdminNetworkPolicy 模式

401 - Unauthorized