第9章 FeatureGate [config.openshift.io/v1]
- 説明
-
機能は、機能ゲートに関するクラスター全体の情報を保持します。正規名は
クラスター
互換性レベル 1 です。メジャーリリース内で最低 12 か月または 3 つのマイナーリリース (どちらか長い方) の間安定しています。 - 型
-
object
- 必須
-
spec
-
9.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、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 を使用すると、任意の機能を有効または無効にできます。この機能セットをオンにすることはサポートされておらず、元に戻すことはできず、アップグレードを防止します。その性質上、この設定は検証できません。タイプミスがある場合、または誤って無効な組み合わせを適用した場合、クラスターが回復不能な方法で失敗する可能性があります。このフィールドを使用するには、featureSet が "CustomNoUpgrade" と等しくなるように設定する必要があります。 |
|
| featureSet は、クラスター内の機能のリストを変更します。デフォルトは空です。この設定の調整には十分注意してください。機能をオンまたはオフにすると、クラスターに元に戻せない不可逆的な変更が発生する可能性があります。 |
9.1.2. .status
- 説明
- status クラスターから監視される値を保持します。それらはオーバーライドされない場合があります。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| conditions は、現在の状態の観察結果を表します。既知の .status.conditions.type: "DeterminationDegraded" |
|
|
条件には、この API リソースの現在の状態の 1 つの側面の詳細が含まれています。--- この構造体は、フィールドパスの .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 |
|
| featureGates には、payloadVersion によってキーが付けられた有効および無効な featureGates のリストが含まれます。CVO および cluster-config- operator 以外の Operator は、.status.featureGates を読み取り、管理しているバージョンを特定し、有効/無効になっている featuregate を見つけ、オペランドと Operator を一致させる必要があります。特定バージョンの有効/無効の値は、さまざまな .spec.featureSet 値が選択されるため、クラスターの存続期間中に変更される可能性があります。Operator は、これらの変更を反映するためにプロセスを再起動できますが、過去の有効/無効リストを記憶することはこの API の範囲外であり、個々の Operator の責任となります。このリストには、ClusterVersion.status に .version が含まれる featureGate のみ表示されます。 |
|
|
9.1.3. .status.conditions
- 説明
- conditions は、現在の状態の観察結果を表します。既知の .status.conditions.type: "DeterminationDegraded"
- 型
-
array
9.1.4. .status.conditions[]
- 説明
-
条件には、この API リソースの現在の状態の 1 つの側面の詳細が含まれています。--- この構造体は、フィールドパスの .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 の条件のタイプ。--- 多くの.condition.type 値は、Available などのリソース全体で一貫していますが、任意の条件が役立つ可能性があるため (.node.status.conditions を参照)、競合を解消する機能が重要です。一致する正規表現は (dns1123SubdomainFmt/)?(qualifiedNameFmt) です。 |
9.1.5. .status.featureGates
- 説明
- featureGates には、payloadVersion によってキーが付けられた有効および無効な featureGates のリストが含まれます。CVO および cluster-config- operator 以外の Operator は、.status.featureGates を読み取り、管理しているバージョンを特定し、有効/無効になっている featuregate を見つけ、オペランドと Operator を一致させる必要があります。特定バージョンの有効/無効の値は、さまざまな .spec.featureSet 値が選択されるため、クラスターの存続期間中に変更される可能性があります。Operator は、これらの変更を反映するためにプロセスを再起動できますが、過去の有効/無効リストを記憶することはこの API の範囲外であり、個々の Operator の責任となります。このリストには、ClusterVersion.status に .version が含まれる featureGate のみ表示されます。
- 型
-
array
9.1.6. .status.featureGates[]
- 説明
- 型
-
object
- 必須
-
version
-
プロパティー | 型 | 説明 |
---|---|---|
|
| disabled は、指定されたバージョンのクラスター内で無効になっているすべてのフィーチャーゲートのリストです。 |
|
| |
|
| enabled は、指定されたバージョンのクラスター内で有効になっているすべてのフィーチャーゲートのリストです。 |
|
| |
|
| version は、ClusterVersion および ClusterOperator.Status.Versions フィールドで提供されるバージョンと一致します。 |
9.1.7. .status.featureGates[].disabled
- 説明
- disabled は、指定されたバージョンのクラスター内で無効になっているすべてのフィーチャーゲートのリストです。
- 型
-
array
9.1.8. .status.featureGates[].disabled[]
- 説明
- 型
-
object
- 必須
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
| name は、FeatureGate の名前です。 |
9.1.9. .status.featureGates[].enabled
- 説明
- enabled は、指定されたバージョンのクラスター内で有効になっているすべてのフィーチャーゲートのリストです。
- 型
-
array
9.1.10. .status.featureGates[].enabled[]
- 説明
- 型
-
object
- 必須
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
| name は、FeatureGate の名前です。 |