Ingress 包含关于 Ingress 的集群范围信息,包括用于路由的默认 Ingress 域名。规范名称是 cluster
。兼容性级别 1:在主要版本内至少稳定 12 个月或 3 个次要版本(以较长者为准)。
Ingress 包含关于 Ingress 的集群范围信息,包括用于路由的默认 Ingress 域名。规范名称是 cluster
。兼容性级别 1:在主要版本内至少稳定 12 个月或 3 个次要版本(以较长者为准)。
对象
spec
属性 | 类型 | 描述 |
---|---|---|
|
|
APIVersion 定义了对象的此表示形式的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
|
Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰式大小写。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
|
|
spec 包含用户可设置的配置值 |
|
|
status 包含来自集群的观察值。它们不能被覆盖。 |
spec 包含用户可设置的配置值
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
appsDomain 是一个可选域名,在创建 Route 时未指定显式主机的情况下,可以用它代替 domain 字段中指定的域名。如果 appsDomain 非空,则使用此值生成 Route 的默认主机值。与 domain 不同,appsDomain 可以在安装后修改。这假设已使用通配符证书设置了新的 ingresscontroller。 |
|
|
componentRoutes 是由 OpenShift 组件管理的路由可选列表,集群管理员可以为此配置主机名和服务证书。此列表中每个路由的命名空间和名称应与 status.componentRoutes 列表中的现有条目匹配。要确定可配置路由的集合,请查看 .status.componentRoutes 列表中条目的命名空间和名称,参与的运营商会在其中写入可配置路由的状态。 |
|
|
ComponentRouteSpec 允许配置路由的主机名和服务证书。 |
|
|
当路由的主机名为空时,domain 用于生成路由的默认主机名。生成的主机名将遵循以下模式:“<route-name>.<route-namespace>.<domain>”。它也用作 ingress 的默认通配符域名后缀。默认 ingresscontroller 域名将遵循此模式:“*.<domain>”。设置后,目前不支持更改 domain。 |
|
|
loadBalancer 包含一般的负载均衡器详细信息,这些详细信息不仅特定于当前集群的基础设施提供程序,而且是 Ingress Controller 在 OpenShift 上工作所必需的。 |
|
|
requiredHSTSPolicies 指定需要设置在新建或更新的路由上的 HSTS 策略,这些路由与策略中指定的 domainPattern/s 和 namespaceSelector/s 匹配。每个 requiredHSTSPolicy 必须至少具有一个 domainPattern 和一个 maxAge 以验证路由 HSTS 策略路由批注,并影响路由准入。如果候选路由具有 HSTS 策略路由批注:“haproxy.router.openshift.io/hsts_header”,则会检查其 HSTS 策略。例如 haproxy.router.openshift.io/hsts_header: max-age=31536000;preload;includeSubDomains - 对于每个候选路由,如果它与 requiredHSTSPolicy domainPattern 和可选的 namespaceSelector 匹配,则 maxAge、preloadPolicy 和 includeSubdomainsPolicy 必须有效才能被准入。否则,路由将被拒绝。- 按照 RequiredHSTSPolicies 的顺序,domainPattern 和可选的 namespaceSelector 的第一次匹配将决定路由的准入状态。- 如果候选路由与任何 requiredHSTSPolicy domainPattern 和可选的 namespaceSelector 不匹配,则它可以使用任何 HSTS 策略批注。可以在已经创建路由后更改 HSTS 策略配置。如果更新后的路由不符合更新的 HSTS 策略配置,则先前已准入的路由的更新可能会失败。但是,更改 HSTS 策略配置不会导致已准入的路由停止工作。请注意,如果没有 RequiredHSTSPolicies,则路由上的任何 HSTS 策略批注都是有效的。 |
|
|
componentRoutes 是由 OpenShift 组件管理的路由可选列表,集群管理员可以为此配置主机名和服务证书。此列表中每个路由的命名空间和名称应与 status.componentRoutes 列表中的现有条目匹配。要确定可配置路由的集合,请查看 .status.componentRoutes 列表中条目的命名空间和名称,参与的运营商会在其中写入可配置路由的状态。
数组
ComponentRouteSpec 允许配置路由的主机名和服务证书。
对象
hostname
name
namespace
属性 | 类型 | 描述 |
---|---|---|
|
|
hostname 是路由应使用的主机名。 |
|
|
name 是要自定义的路由的逻辑名称。如果要自定义路由,则此 componentRoute 的命名空间和名称必须与 status.componentRoutes 列表中的相应条目匹配。 |
|
|
namespace 是要自定义的路由的命名空间。如果要自定义路由,则此 componentRoute 的命名空间和名称必须与 status.componentRoutes 列表中的相应条目匹配。 |
|
|
servingCertKeyPairSecret 是对 openshift-config 命名空间中类型为 |
servingCertKeyPairSecret 是对 openshift-config 命名空间中类型为 kubernetes.io/tls
的密钥的引用。服务证书/密钥对必须匹配,并将由运营商用于实现使用此名称进行服务的目的。如果自定义主机名使用集群的默认路由后缀,则不需要服务证书的 Secret 规范。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
name 是引用的密钥的 metadata.name |
loadBalancer 包含一般的负载均衡器详细信息,这些详细信息不仅特定于当前集群的基础设施提供程序,而且是 Ingress Controller 在 OpenShift 上工作所必需的。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
platform 包含 ingress 负载均衡器的底层基础设施提供程序的特定配置。省略此项表示用户没有意见,平台将选择合理的默认值。这些默认值可能会随着时间的推移而发生变化。 |
platform 包含 ingress 负载均衡器的底层基础设施提供程序的特定配置。省略此项表示用户没有意见,平台将选择合理的默认值。这些默认值可能会随着时间的推移而发生变化。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
aws 包含特定于 Amazon Web Services 基础设施提供程序的设置。 |
|
|
type 是集群的基础设施提供程序。允许的值为“AWS”、“Azure”、“BareMetal”、“GCP”、“Libvirt”、“OpenStack”、“VSphere”、“oVirt”、“KubeVirt”、“EquinixMetal”、“PowerVS”、“AlibabaCloud”、“Nutanix”和“None”。各个组件可能不支持所有平台,如果它们不支持该平台,则必须将无法识别的平台处理为 None。 |
aws 包含特定于 Amazon Web Services 基础设施提供程序的设置。
对象
type
属性 | 类型 | 描述 |
---|---|---|
|
|
type 允许用户设置负载均衡器类型。设置此字段时,将使用指定的 LBType 创建默认 ingresscontroller。如果未设置此字段,则将创建 LBType 为 Classic 的默认 ingress controller。有效值为:* “Classic”:一个经典负载均衡器,它在传输层 (TCP/SSL) 或应用层 (HTTP/HTTPS) 进行路由决策。有关更多详细信息,请参阅以下内容:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#clb * “NLB”:一个网络负载均衡器,它在传输层 (TCP/SSL) 进行路由决策。有关更多详细信息,请参阅以下内容:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#nlb |
requiredHSTSPolicies 指定需要设置在新建或更新的路由上的 HSTS 策略,这些路由与策略中指定的 domainPattern/s 和 namespaceSelector/s 匹配。每个 requiredHSTSPolicy 必须至少具有一个 domainPattern 和一个 maxAge 以验证路由 HSTS 策略路由批注,并影响路由准入。如果候选路由具有 HSTS 策略路由批注:“haproxy.router.openshift.io/hsts_header”,则会检查其 HSTS 策略。例如 haproxy.router.openshift.io/hsts_header: max-age=31536000;preload;includeSubDomains - 对于每个候选路由,如果它与 requiredHSTSPolicy domainPattern 和可选的 namespaceSelector 匹配,则 maxAge、preloadPolicy 和 includeSubdomainsPolicy 必须有效才能被准入。否则,路由将被拒绝。- 按照 RequiredHSTSPolicies 的顺序,domainPattern 和可选的 namespaceSelector 的第一次匹配将决定路由的准入状态。- 如果候选路由与任何 requiredHSTSPolicy domainPattern 和可选的 namespaceSelector 不匹配,则它可以使用任何 HSTS 策略批注。可以在已经创建路由后更改 HSTS 策略配置。如果更新后的路由不符合更新的 HSTS 策略配置,则先前已准入的路由的更新可能会失败。但是,更改 HSTS 策略配置不会导致已准入的路由停止工作。请注意,如果没有 RequiredHSTSPolicies,则路由上的任何 HSTS 策略批注都是有效的。
数组
对象
domainPatterns
属性 | 类型 | 描述 |
---|---|---|
|
|
domainPatterns 是需要所需 HSTS 批注的域列表。如果指定了 domainPatterns,并且创建的路由的 spec.host 与其中一个域匹配,则路由必须指定匹配的 RequiredHSTSPolicy 中描述的 HSTS 策略组件。允许使用通配符,如下所示:.foo.com 匹配 foo.com 下的所有内容。foo.com 只匹配 foo.com,因此要涵盖 foo.com 及其下的所有内容,必须*同时*指定两者。 |
|
|
includeSubDomainsPolicy 表示 HSTS 策略应应用于主机域名下的任何子域。因此,对于主机 bar.foo.com,如果 includeSubDomainsPolicy 设置为 RequireIncludeSubDomains:- 主机 app.bar.foo.com 将继承 bar.foo.com 的 HSTS 策略 - 主机 bar.foo.com 将继承 bar.foo.com 的 HSTS 策略 - 主机 foo.com 将不会继承 bar.foo.com 的 HSTS 策略 - 主机 def.foo.com 将不会继承 bar.foo.com 的 HSTS 策略 |
|
|
maxAge 是以秒为单位的时间差范围,在此范围内主机被视为 HSTS 主机。如果设置为 0,则会抵消其效果,主机将被移除 HSTS 主机身份。如果设置为 0 并且指定了 includeSubdomains,则该主机的所有子域也将被移除 HSTS 主机身份。maxAge 是生存时间值,如果客户端未刷新此策略,则 HSTS 策略最终会在该客户端过期。 |
|
|
namespaceSelector 指定标签选择器,以便策略仅应用于名称空间中与选择器匹配的标签的路由,并且位于 DomainPatterns 之一中。默认为空 LabelSelector,匹配所有内容。 |
|
|
preloadPolicy 指导客户端将其主机添加到其主机预加载列表中,以便它永远不需要进行初始加载来获取 HSTS 标头(请注意,这未在 RFC 6797 中定义,因此取决于客户端实现)。 |
maxAge 是以秒为单位的时间差范围,在此范围内主机被视为 HSTS 主机。如果设置为 0,则会抵消其效果,主机将被移除 HSTS 主机身份。如果设置为 0 并且指定了 includeSubdomains,则该主机的所有子域也将被移除 HSTS 主机身份。maxAge 是生存时间值,如果客户端未刷新此策略,则 HSTS 策略最终会在该客户端过期。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
RequiredHSTSPolicy max-age 的最大允许值(以秒为单位)。此值可以不指定,在这种情况下,不强制执行上限。 |
|
|
RequiredHSTSPolicy max-age 的最小允许值。设置 max-age=0 允许从主机中删除现有的 HSTS 标头。这是管理员快速纠正错误的必要工具。此值可以不指定,在这种情况下,不强制执行下限。 |
namespaceSelector 指定标签选择器,以便策略仅应用于名称空间中与选择器匹配的标签的路由,并且位于 DomainPatterns 之一中。默认为空 LabelSelector,匹配所有内容。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些运算符将键和值关联起来。
对象
key
operator
属性 | 类型 | 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
status 包含来自集群的观察值。它们不能被覆盖。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
componentRoutes 是参与运算符放置当前路由状态的位置,这些路由的主机名和服务证书可以由集群管理员自定义。 |
|
|
ComponentRouteStatus 包含允许配置路由的主机名和服务证书的信息。 |
|
|
defaultPlacement 在安装时设置,用于控制哪些节点默认情况下将承载入口路由 Pod。选项是控制平面节点或工作节点。此字段通过指示集群入口操作员在创建相应的 Deployment 时如何考虑 IngressController 资源中未设置的副本和 nodePlacement 字段来工作。有关更多信息,请参阅 IngressController 副本和 nodePlacement 字段的文档。省略时,默认值为 Workers。 |
ComponentRouteStatus 包含允许配置路由的主机名和服务证书的信息。
对象
defaultHostname
name
namespace
relatedObjects
属性 | 类型 | 描述 |
---|---|---|
|
|
conditions 用于传达 componentRoutes 条目的状态。支持的条件包括 Available、Degraded 和 Progressing。如果 available 为 true,则用户可以访问路由提供的内容。这包括在集群管理员指定的自定义路由正在配置时,默认值可能继续提供内容的情况。如果 Degraded 为 true,则表示在尝试处理 componentRoutes 条目时出现错误。currentHostnames 字段可能有效也可能无效。如果 Progressing 为 true,则表示组件正在执行与 componentRoutes 条目相关的某些操作。 |
|
|
Condition 包含此 API 资源当前状态的一个方面的详细信息。--- 此结构旨在直接用作字段路径 .status.conditions 中的数组。例如,类型 FooStatus struct{ // 表示 foo 当前状态的观察结果。 // 已知的 .status.conditions.type 为:“Available”、“Progressing”和“Degraded” // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition |
|
|
consumingUsers 是需要对 servingCertKeyPairSecret 密钥拥有读取权限的服务帐户的切片。 |
|
|
currentHostnames 是路由当前使用的名称列表。通常,此列表应包含单个主机名,但如果路由支持多个主机名,则操作员可能会在此列表中写入多个条目。 |
|
|
defaultHostname 是自定义之前的此路由的主机名。 |
|
|
name 是要自定义的路由的逻辑名称。它不必是路由资源的实际名称,但不能重命名。如果要自定义路由,则此 componentRoute 的名称空间和名称必须与 spec.componentRoutes 列表中的相应条目匹配。 |
|
|
namespace 是要自定义的路由的名称空间。它必须是真实的名称空间。使用实际的名称空间可确保不会出现两个组件冲突,并且可以多次安装相同的组件。如果要自定义路由,则此 componentRoute 的名称空间和名称必须与 spec.componentRoutes 列表中的相应条目匹配。 |
|
|
relatedObjects 是在调试或检查 spec.componentRoutes 如何应用时有用的资源列表。 |
|
|
ObjectReference 包含足够的信息,可让您检查或修改引用的对象。 |
conditions 用于传达 componentRoutes 条目的状态。支持的条件包括 Available、Degraded 和 Progressing。如果 available 为 true,则用户可以访问路由提供的内容。这包括在集群管理员指定的自定义路由正在配置时,默认值可能继续提供内容的情况。如果 Degraded 为 true,则表示在尝试处理 componentRoutes 条目时出现错误。currentHostnames 字段可能有效也可能无效。如果 Progressing 为 true,则表示组件正在执行与 componentRoutes 条目相关的某些操作。
数组
Condition 包含此 API 资源当前状态的一个方面的详细信息。--- 此结构旨在直接用作字段路径 .status.conditions 中的数组。例如,类型 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"
// 其他字段 }
对象
lastTransitionTime
message
reason
status
type
属性 | 类型 | 描述 |
---|---|---|
|
|
lastTransitionTime 是条件从一种状态转换为另一种状态的最后时间。这应该是底层条件发生变化的时间。如果不知道,则使用 API 字段发生变化的时间是可以接受的。 |
|
|
message 是一个易于理解的消息,指示有关转换的详细信息。这可能是一个空字符串。 |
|
|
observedGeneration 表示根据其设置条件的 .metadata.generation。例如,如果 .metadata.generation 当前为 12,但 .status.conditions[x].observedGeneration 为 9,则条件相对于实例的当前状态已过期。 |
|
|
reason 包含一个编程标识符,指示条件最后转换的原因。特定条件类型的生产者可以为此字段定义预期的值和含义,以及这些值是否被视为保证的 API。该值应为 CamelCase 字符串。此字段不能为空。 |
|
|
条件的状态,True、False、Unknown 之一。 |
|
|
条件类型,使用驼峰式命名法或 foo.example.com/CamelCase 格式。——许多 .condition.type 值在资源中保持一致,例如 Available,但由于任意条件可能很有用(参见 .node.status.conditions),因此消除冲突的能力非常重要。它匹配的正则表达式为 (dns1123SubdomainFmt/)?(qualifiedNameFmt) |
提供以下 API 端点:
/apis/config.openshift.io/v1/ingresses
DELETE
:删除 Ingress 集合
GET
:列出 Ingress 对象
POST
:创建 Ingress
/apis/config.openshift.io/v1/ingresses/{name}
DELETE
:删除 Ingress
GET
:读取指定的 Ingress
PATCH
:部分更新指定的 Ingress
PUT
:替换指定的 Ingress
/apis/config.openshift.io/v1/ingresses/{name}/status
GET
:读取指定的 Ingress 的状态
PATCH
:部分更新指定的 Ingress 的状态
PUT
:替换指定的 Ingress 的状态
DELETE
删除 Ingress 集合
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
GET
列出 Ingress 对象
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
POST
创建 Ingress
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象中静默丢弃的未知字段,并将忽略解码器遇到的所有重复字段(仅保留最后一个)。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只保留任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Ingress 的名称 |
DELETE
删除 Ingress
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
GET
读取指定的 Ingress
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的 Ingress
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象中静默丢弃的未知字段,并将忽略解码器遇到的所有重复字段(仅保留最后一个)。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只保留任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PUT
替换指定的 Ingress
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象中静默丢弃的未知字段,并将忽略解码器遇到的所有重复字段(仅保留最后一个)。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只保留任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Ingress 的名称 |
GET
读取指定的 Ingress 的状态
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的 Ingress 的状态
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象中静默丢弃的未知字段,并将忽略解码器遇到的所有重复字段(仅保留最后一个)。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只保留任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PUT
替换指定的 Ingress 的状态
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象中静默丢弃的未知字段,并将忽略解码器遇到的所有重复字段(仅保留最后一个)。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且只保留任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |