第 9 章 FeatureGate [config.openshift.io/v1]
- 描述
-
特性包含有关功能门的集群范围信息。规范名称是
集群兼容性级别
1:在主发行版本中至少为 12 个月或 3 个次版本(以更长的时间为准)。 - 类型
-
object
- 必填
-
spec
-
9.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 包含从集群中观察到的值。它们可能无法被覆盖。 |
9.1.1. .spec
- 描述
- spec 包含用于配置的用户可设置值
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
| `` | customNoUpgrade 允许启用或禁用任何功能。在 IS NOT SUPPORTED, CANNOT UNDONE, 和 PREVENTS UPGRADES 打开此功能集。由于其性质,无法验证此设置。如果您有任何拼写错误或意外应用无效的组合,则集群可能会以无法恢复的方式失败。featureSet 必须等于 "CustomNoUpgrade" 才能使用此字段。 |
|
| featureSet 更改集群中的功能列表。默认值为空。调整此设置时要非常小心。打开或关闭功能可能会导致集群中无法撤销的更改。 |
9.1.2. .status
- 描述
- status 包含从集群中观察到的值。它们可能无法被覆盖。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 条件代表当前状态的观察。已知的 .status.conditions.type 是 "DeterminationDegraded" |
|
|
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 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 |
|
| FeatureGate 包含 enabled 和 disabled featureGates 列表,它们由 payloadVersion 键。CVO 和 cluster-config-operator 以外的 Operator 必须读取 .status.featureGates,找到它们要管理的版本,找到 enabled/disabled 功能门,并进行操作对象和 Operator 匹配。当选择各种 .spec.featureSet 值时,特定版本的 enabled/disabled 值可能会在集群生命周期内有所变化。操作员可以选择重新启动其进程来获取这些更改,但请记住,过去启用/禁用列表不在此 API 范围内,并且是各个操作器的职责。只有 ClusterVersion.status 中的 .version 的功能才会出现在此列表中。 |
|
|
9.1.3. .status.conditions
- 描述
- 条件代表当前状态的观察。已知的 .status.conditions.type 是 "DeterminationDegraded"
- 类型
-
array
9.1.4. .status.conditions[]
- 描述
-
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 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 } - 类型
-
object
- 必填
-
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 之一。 |
|
| CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt) |
9.1.5. .status.featureGates
- 描述
- FeatureGate 包含 enabled 和 disabled featureGates 列表,它们由 payloadVersion 键。CVO 和 cluster-config-operator 以外的 Operator 必须读取 .status.featureGates,找到它们要管理的版本,找到 enabled/disabled 功能门,并进行操作对象和 Operator 匹配。当选择各种 .spec.featureSet 值时,特定版本的 enabled/disabled 值可能会在集群生命周期内有所变化。操作员可以选择重新启动其进程来获取这些更改,但请记住,过去启用/禁用列表不在此 API 范围内,并且是各个操作器的职责。只有 ClusterVersion.status 中的 .version 的功能才会出现在此列表中。
- 类型
-
数组
9.1.6. .status.featureGates[]
- 描述
- 类型
-
object
- 必填
-
version
-
属性 | 类型 | 描述 |
---|---|---|
|
| disabled 是集群中为指定版本禁用的所有功能门列表。 |
|
| |
|
| enabled 是集群中为指定版本启用的所有功能门列表。 |
|
| |
|
| Version 与 ClusterVersion 和 ClusterOperator.Status.Versions 字段提供的版本匹配。 |
9.1.7. .status.featureGates[].disabled
- 描述
- disabled 是集群中为指定版本禁用的所有功能门列表。
- 类型
-
数组
9.1.8. .status.featureGates[].disabled[]
- 描述
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 是 FeatureGate 的名称。 |
9.1.9. .status.featureGates[].enabled
- 描述
- enabled 是集群中为指定版本启用的所有功能门列表。
- 类型
-
数组
9.1.10. .status.featureGates[].enabled[]
- 描述
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 是 FeatureGate 的名称。 |