第6章 ClusterVersion [config.openshift.io/v1]


説明
ClusterVersion は、ClusterVersionOperator の設定です。ここで、自動更新に関連するパラメーターを設定できます。互換性レベル 1: メジャーリリース内で最低 12 か月または 3 つのマイナーリリース (どちらか長い方) の間安定しています。
object
必須
  • spec

6.1. 仕様

プロパティー説明

apiVersion

string

APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、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

spec は、クラスターバージョンの望ましい状態です。Operator は、望ましいバージョンがクラスターに適用されていることを確認するために作業します。

status

object

status には、利用可能な更新と進行中の更新に関する情報が含まれます。

6.1.1. .spec

説明
spec は、クラスターバージョンの望ましい状態です。Operator は、望ましいバージョンがクラスターに適用されていることを確認するために作業します。
object
必須
  • clusterID
プロパティー説明

capabilities

object

capabilities は、オプションのコアクラスターコンポーネントのインストールを設定します。ここでの null 値は空のオブジェクトと同じです。デフォルトのセマンティクスについては子プロパティーを参照してください。

channel

string

channel は、デフォルト以外の一連の更新をこのクラスターに適用することを明示的に要求するための ID です。デフォルトのチャネルには、本番クラスターに適した安定した更新が含まれます。

clusterID

string

clusterID は、このクラスターを一意に識別します。これは、RFC4122 UUID 値 (16 進値の xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) であると予想されます。これは必須フィールドです。

desiredUpdate

object

desiredUpdate は、クラスターバージョンの目的の値を示すオプションのフィールドです。この値を設定すると、アップグレードがトリガーされます (現在のバージョンが目的のバージョンと一致しない場合)。推奨される更新値のセットは、ステータスで利用可能な更新の一部としてリストされており、その範囲外の値を設定すると、アップグレードが失敗する可能性があります。いくつかのフィールドは、ここで説明する制限や意味と相互に関連しています。1. image、version、architecture が指定されている場合。API 検証エラー。2. image と version が指定され、architecture は指定されていない場合。このような設定は行わないでください。version は通知されることなく無視され、image は使用されます。3. image は指定され、version は指定されず、architecture は指定されている場合。API 検証エラー。4. image は指定され、version と architecture は指定されていない場合。image が使用されます。5. image は指定されず、version と architecture が指定されている場合。version と任意の architecture を使用して image が選択されます。6. image は指定されず、version は指定され、architecture は指定されていない場合。version と現在の architecture を使用して image が選択されます。7. image と version が指定されず、architecture は指定されている場合。API 検証エラー。8. image、version、architecture が指定されていない場合。API 検証エラー。アップグレードが失敗した場合、Operator は停止し、失敗したコンポーネントに関するステータスを報告します。目的の更新値を以前のバージョンに戻すと、ロールバックが試行されます。すべてのロールバックが成功するわけではありません。

overrides

array

オーバーライドは、クラスターバージョン Operator によって管理されるコンポーネントのオーバーライドのリストです。コンポーネントにマネージド外のマークを付けると、Operator はオブジェクトを作成または更新できなくなります。

overrides[]

object

ComponentOverride を使用すると、コンポーネントに対するクラスターバージョン Operator の動作をオーバーライドできます。

upstream

string

アップストリームを使用して、優先する更新サーバーを指定できます。デフォルトでは、クラスターとリージョンに適切な更新サーバーを使用します。

6.1.2. .spec.capabilities

説明
capabilities は、オプションのコアクラスターコンポーネントのインストールを設定します。ここでの null 値は空のオブジェクトと同じです。デフォルトのセマンティクスについては子プロパティーを参照してください。
object
プロパティー説明

additionalEnabledCapabilities

array (string)

additionalEnabledCapabilities は、baselineCapabilitySet で定義されたベースラインを超えて、管理対象ケイパビリティーのセットを拡張します。デフォルトは空のセットです。

baselineCapabilitySet

string

baselineCapabilitySet は、有効にするオプションのケイパビリティーの初期セットを選択します。これは、additionalEnabledCapabilities を使用して拡張できます。設定されていない場合、クラスターはデフォルトを選択しますが、デフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは vCurrent です。

6.1.3. .spec.desiredUpdate

説明
desiredUpdate は、クラスターバージョンの目的の値を示すオプションのフィールドです。この値を設定すると、アップグレードがトリガーされます (現在のバージョンが目的のバージョンと一致しない場合)。推奨される更新値のセットは、ステータスで利用可能な更新の一部としてリストされており、その範囲外の値を設定すると、アップグレードが失敗する可能性があります。いくつかのフィールドは、ここで説明する制限や意味と相互に関連しています。1. image、version、architecture が指定されている場合。API 検証エラー。2. image と version が指定され、architecture は指定されていない場合。このような設定は行わないでください。version は通知されることなく無視され、image は使用されます。3. image は指定され、version は指定されず、architecture は指定されている場合。API 検証エラー。4. image は指定され、version と architecture は指定されていない場合。image が使用されます。5. image は指定されず、version と architecture が指定されている場合。version と任意の architecture を使用して image が選択されます。6. image は指定されず、version は指定され、architecture は指定されていない場合。version と現在の architecture を使用して image が選択されます。7. image と version が指定されず、architecture は指定されている場合。API 検証エラー。8. image、version、architecture が指定されていない場合。API 検証エラー。アップグレードが失敗した場合、Operator は停止し、失敗したコンポーネントに関するステータスを報告します。目的の更新値を以前のバージョンに戻すと、ロールバックが試行されます。すべてのロールバックが成功するわけではありません。
object
プロパティー説明

architecture

string

architecture は、クラスターアーキテクチャーの目的の値を示すオプションフィールドです。この場合のクラスターアーキテクチャーは、シングルアーキテクチャーまたはマルチアーキテクチャーのいずれかを意味します。architecture は Multi にしか設定できないため、シングルアーキテクチャーからマルチアーキテクチャーへの更新のみが許可されます。architecture が設定されている場合は、イメージは設定できず、バージョンを設定する必要があります。有効な値は 'Multi' または空です。

force

boolean

force を使用すると、管理者は検証またはアップグレード可チェックに失敗したイメージに更新できます。このオプションは、提供されたイメージがクラスターへの完全な管理アクセスで実行されるため、提供されたイメージの信頼性が帯域外で検証された場合にのみ使用する必要があります。未知の、または潜在的に悪意のあるソースからのイメージには、このフラグを使用しないでください。

image

string

image は、更新を含むコンテナーイメージの場所です。image は、必要なバージョンが availableUpdates または history に存在しない場合に使用する必要があります。image が設定されている場合、version は無視されます。image が設定されている場合、version は空である必要があります。image が設定されている場合、architecture は指定できません。

version

string

version は更新バージョンを識別するセマンティックバージョンです。version は、image が指定されている場合は無視され、architecture が指定されている場合は必須です。

6.1.4. .spec.overrides

説明
オーバーライドは、クラスターバージョン Operator によって管理されるコンポーネントのオーバーライドのリストです。コンポーネントにマネージド外のマークを付けると、Operator はオブジェクトを作成または更新できなくなります。
array

6.1.5. .spec.overrides[]

説明
ComponentOverride を使用すると、コンポーネントに対するクラスターバージョン Operator の動作をオーバーライドできます。
object
必須
  • group
  • kind
  • name
  • namespace
  • unmanaged
プロパティー説明

group

string

group は、種類が含まれる API グループを識別します。

kind

string

kind は、オーバーライドするオブジェクトを識別します。

name

string

name はコンポーネントの名前です。

namespace

string

名前空間は、コンポーネントの名前空間です。リソースがクラスタースコープの場合、名前空間は空である必要があります。

unmanaged

boolean

クラスターバージョン Operator がこのクラスター内のリソースの管理を停止する必要がある場合は、アンマネージドコントロール。デフォルト: false

6.1.6. .status

説明
status には、利用可能な更新と進行中の更新に関する情報が含まれます。
object
必須
  • desired
  • observedGeneration
  • versionHash
プロパティー説明

availableUpdates

``

availableUpdates には、このクラスターに推奨される更新が含まれています。conditionalUpdates に表示され、availableUpdates には表示されない更新は、このクラスターで既知の問題を引き起こす可能性があります。更新が推奨されていない場合、更新サービスが利用できない場合、または無効なチャネルが指定されている場合、このリストは空になる可能性があります。

capabilities

object

capabilities は、オプションのコアクラスターコンポーネントの状態を記述します。

conditionalUpdates

array

conditionalUpdates には、特定の必須条件を満たしている場合にこのクラスターに推奨される可能性のある更新のリストが含まれます。このクラスターに実際に推奨される更新セットに関心のあるコンシューマーは、availableUpdates を使用する必要があります。推奨される更新がない場合、更新サービスが利用できない場合、空または無効なチャネルが指定されている場合、このリストは空になる可能性があります。

conditionalUpdates[]

object

ConditionalUpdate は、現在のクラスターが調整しているバージョンを使用するクラスターの一部に推奨される更新を表しますが、その更新は現在のクラスターには推奨されない可能性があります。

conditions

array

条件は、クラスターのバージョンに関する情報を提供します。条件 "Available" は、desiredUpdate に達した場合に true に設定されます。更新が適用されている場合、条件 "Progressing" は true に設定されます。更新が一時的または永続的なエラーによって現在ブロックされている場合、条件 "Degraded" は true に設定されます。条件は、metadata.generation が status.generation と等しい場合に、現在の desiredUpdate に対してのみ有効です。

conditions[]

object

ClusterOperatorStatusCondition は、オペレーターの管理および監視対象コンポーネントの状態を表します。

desired

object

必要なのは、クラスターが調整しているバージョンです。クラスターがまだ完全に初期化されていない場合は、イメージやタグなどの利用可能な情報が必要になります。

history

array

履歴には、クラスターに適用された最新バージョンのリストが含まれます。この値は、クラスターの起動時に空になる場合があり、新しい更新が適用されるときに更新されます。最新の更新はリストの最初にあり、最新の順序で並べられています。ロールアウトが完了した場合、履歴の更新の状態は Completed になります。更新が失敗した場合、または途中で適用された場合、状態は Partial になります。限られた量の更新履歴のみが保持されます。

history[]

object

UpdateHistory は、クラスターに対して 1 回試行された更新です。

observedGeneration

integer

observedGeneration は、同期されている仕様のバージョンを報告します。この値が metadata.generation と等しくない場合、目的のフィールドと条件フィールドは以前のバージョンを表している可能性があります。

versionHash

string

versionHash は、クラスターが更新されるコンテンツのフィンガープリントです。不必要な作業を避けるために Operator が使用し、内部使用のみを目的としています。

6.1.7. .status.capabilities

説明
capabilities は、オプションのコアクラスターコンポーネントの状態を記述します。
object
プロパティー説明

enabledCapabilities

array (string)

enabledCapabilities は、現在管理されているすべてのケイパビリティーをリスト表示します。

knownCapabilities

array (string)

knownCapabilities は、現在のクラスターにとって既知のケイパビリティーをすべてリスト表示します。

6.1.8. .status.conditionalUpdates

説明
conditionalUpdates には、特定の必須条件を満たしている場合にこのクラスターに推奨される可能性のある更新のリストが含まれます。このクラスターに実際に推奨される更新セットに関心のあるコンシューマーは、availableUpdates を使用する必要があります。推奨される更新がない場合、更新サービスが利用できない場合、空または無効なチャネルが指定されている場合、このリストは空になる可能性があります。
array

6.1.9. .status.conditionalUpdates[]

説明
ConditionalUpdate は、現在のクラスターが調整しているバージョンを使用するクラスターの一部に推奨される更新を表しますが、その更新は現在のクラスターには推奨されない可能性があります。
object
必須
  • release
  • risks
プロパティー説明

conditions

array

conditions は、条件付き更新の現在のステータスの観察結果を表します。既知のタイプ: * Recommended。現在のクラスターに対して更新が推奨されるかどうか。

conditions[]

object

条件には、この 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 }

release

object

release はターゲットとする更新です。

risks

array

risks は、ターゲットリリースへの更新に関連する問題を表します。cluster-version Operator はすべてのエントリーを評価し、1 つ以上のエントリーがあり、すべてのエントリーが更新を推奨している場合にのみ更新を推奨します。

risks[]

object

ConditionalUpdateRisk は、条件付き更新を推奨しない理由とクラスターの状態を表します。

6.1.10. .status.conditionalUpdates[].conditions

説明
conditions は、条件付き更新の現在のステータスの観察結果を表します。既知のタイプ: * Recommended。現在のクラスターに対して更新が推奨されるかどうか。
array

6.1.11. .status.conditionalUpdates[].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

string

lastTransitionTime は、ある状態から別の状態に最後に遷移した時間です。これは、基本的な条件が変更された時点となります。不明な場合には、API フィールドが変更された時点を使用することも可能です。

message

string

message は、遷移の詳細を示す人が判読できるメッセージです。空の文字列の場合もあります。

observedGeneration

integer

observedGeneration は、それをベースに条件が設定された .metadata.generation を表します。たとえば、.metadata.generation が現在 12 で、.status.conditions[x].observedGeneration が 9 の場合、インスタンスの現在の状態に対して条件が古くなっています。

reason

string

reason には、条件の最後の遷移の理由を示すプログラムによる識別子が含まれます。特定の条件タイプのプロデューサーは、このフィールドの期待値と意味、および値が保証された API と見なされるかどうかを定義できます。値は CamelCase 文字列である必要があります。このフィールドには空白を指定できません。

status

string

条件のステータス、True、False、Unknown のいずれか。

type

string

CamelCase または foo.example.com/CamelCase の条件のタイプ。--- 多くの.condition.type 値は、Available などのリソース全体で一貫していますが、任意の条件が役立つ可能性があるため (.node.status.conditions を参照)、競合を解消する機能が重要です。一致する正規表現は (dns1123SubdomainFmt/)?(qualifiedNameFmt) です。

6.1.12. .status.conditionalUpdates[].release

説明
release はターゲットとする更新です。
object
プロパティー説明

channels

array (string)

チャネルは、リリースが現在属しているシンシナティチャネルのセットです。

image

string

image は、更新を含むコンテナーイメージの場所です。このフィールドが仕様の一部である場合、バージョンが指定されていて、availableUpdates フィールドに一致するバージョンが含まれている場合、イメージはオプションです。

url

string

url には、このリリースに関する情報が含まれています。この URL は、リリースの 'url' メタデータプロパティーまたは更新 API によって返されるメタデータによって設定され、ユーザーインターフェイスにリンクとして表示される必要があります。URL フィールドは、テストリリースまたは夜間リリースには設定されない場合があります。

version

string

version は、更新バージョンを識別するセマンティックバージョンです。このフィールドが仕様の一部である場合、イメージが指定されている場合、バージョンはオプションです。

6.1.13. .status.conditionalUpdates[].risks

説明
risks は、ターゲットリリースへの更新に関連する問題を表します。cluster-version Operator はすべてのエントリーを評価し、1 つ以上のエントリーがあり、すべてのエントリーが更新を推奨している場合にのみ更新を推奨します。
array

6.1.14. .status.conditionalUpdates[].risks[]

説明
ConditionalUpdateRisk は、条件付き更新を推奨しない理由とクラスターの状態を表します。
object
必須
  • matchingRules
  • message
  • name
  • url
プロパティー説明

matchingRules

array

matchingRules は、どのクラスターがリスクに一致し、どのクラスターが一致しないかを決定するための条件スライスです。スライスは優先度の降順で並べられます。cluster-version Operator はスライスを順番に処理し、最初に正常に評価できたスライスの後で停止します。正常に評価できる条件がない場合、更新は推奨されません。

matchingRules[]

object

ClusterCondition は、タイプが指定されたクラスター条件の結合です。'type' プロパティーは、どのタイプ固有のプロパティーが該当するか決定します。クラスターで評価されると、条件は一致、不一致、または評価失敗となります。

message

string

message は、matchingRules がクラスターの状態と一致する場合の、更新リスクに関する追加情報を提供します。これは人間によってのみ消費されます。改行文字 (U + 000A) が含まれている場合があり、改行としてレンダリングする必要があります。

name

string

name は、matchingRules がクラスターの状態と一致する場合の、条件付き更新を推奨しない理由 (CamelCase) です。

url

string

url には、このリスクに関する情報が含まれています。

6.1.15. .status.conditionalUpdates[].risks[].matchingRules

説明
matchingRules は、どのクラスターがリスクに一致し、どのクラスターが一致しないかを決定するための条件スライスです。スライスは優先度の降順で並べられます。cluster-version Operator はスライスを順番に処理し、最初に正常に評価できたスライスの後で停止します。正常に評価できる条件がない場合、更新は推奨されません。
array

6.1.16. .status.conditionalUpdates[].risks[].matchingRules[]

説明
ClusterCondition は、タイプが指定されたクラスター条件の結合です。'type' プロパティーは、どのタイプ固有のプロパティーが該当するか決定します。クラスターで評価されると、条件は一致、不一致、または評価失敗となります。
object
必須
  • type
プロパティー説明

promql

object

promQL は、PromQL に基づくクラスター条件を表します。

type

string

type はクラスター条件のタイプを表します。これにより、追加のプロパティーのメンバーとセマンティクスが定義されます。

6.1.17. .status.conditionalUpdates[].risks[].matchingRules[].promql

説明
promQL は、PromQL に基づくクラスター条件を表します。
object
必須
  • promql
プロパティー説明

promql

string

PromQL はクラスターを分類する PromQL クエリーです。このクエリーは、一致する場合は 1 を返し、一致しない場合は 0 を返します。時系列を返さないクエリーや、0 または 1 以外の値を返すクエリーは、評価失敗です。

6.1.18. .status.conditions

説明
条件は、クラスターのバージョンに関する情報を提供します。条件 "Available" は、desiredUpdate に達した場合に true に設定されます。更新が適用されている場合、条件 "Progressing" は true に設定されます。更新が一時的または永続的なエラーによって現在ブロックされている場合、条件 "Degraded" は true に設定されます。条件は、metadata.generation が status.generation と等しい場合に、現在の desiredUpdate に対してのみ有効です。
array

6.1.19. .status.conditions[]

説明
ClusterOperatorStatusCondition は、オペレーターの管理および監視対象コンポーネントの状態を表します。
object
必須
  • lastTransitionTime
  • status
  • type
プロパティー説明

lastTransitionTime

string

lastTransitionTime は、現在のステータスプロパティーが最後に更新された時刻です。

message

string

message は、現在の状態に関する追加情報を提供します。これは人間によってのみ消費されます。改行文字 (U + 000A) が含まれている場合があり、改行としてレンダリングする必要があります。

reason

string

reason は、状態の現在のステータスの CamelCase の理由です。

status

string

条件のステータス、True、False、Unknown のいずれか。

type

string

type は、この条件によって報告されるアスペクトを指定します。

6.1.20. .status.desired

説明
必要なのは、クラスターが調整しているバージョンです。クラスターがまだ完全に初期化されていない場合は、イメージやタグなどの利用可能な情報が必要になります。
object
プロパティー説明

channels

array (string)

チャネルは、リリースが現在属しているシンシナティチャネルのセットです。

image

string

image は、更新を含むコンテナーイメージの場所です。このフィールドが仕様の一部である場合、バージョンが指定されていて、availableUpdates フィールドに一致するバージョンが含まれている場合、イメージはオプションです。

url

string

url には、このリリースに関する情報が含まれています。この URL は、リリースの 'url' メタデータプロパティーまたは更新 API によって返されるメタデータによって設定され、ユーザーインターフェイスにリンクとして表示される必要があります。URL フィールドは、テストリリースまたは夜間リリースには設定されない場合があります。

version

string

version は、更新バージョンを識別するセマンティックバージョンです。このフィールドが仕様の一部である場合、イメージが指定されている場合、バージョンはオプションです。

6.1.21. .status.history

説明
履歴には、クラスターに適用された最新バージョンのリストが含まれます。この値は、クラスターの起動時に空になる場合があり、新しい更新が適用されるときに更新されます。最新の更新はリストの最初にあり、最新の順序で並べられています。ロールアウトが完了した場合、履歴の更新の状態は Completed になります。更新が失敗した場合、または途中で適用された場合、状態は Partial になります。限られた量の更新履歴のみが保持されます。
array

6.1.22. .status.history[]

説明
UpdateHistory は、クラスターに対して 1 回試行された更新です。
object
必須
  • image
  • startedTime
  • state
  • verified
プロパティー説明

acceptedRisks

string

acceptedRisks は、更新を開始するために受け入れられたリスクを記録します。たとえば、Upgradeable=False または desiredUpdate.force によってオーバーライドされた署名が見つからないこと、または推奨される更新ターゲットの availableUpdates セットに含まれていないにもかかわらず開始された更新を言及します。

completionTime

``

設定されている場合、completionTime は、更新が完全に適用されたときです。現在適用されている更新の完了時間は null になります。完了時間は、現在の更新ではないエントリー (通常は次の更新の開始時間) に常に設定されます。

image

string

image は、更新を含むコンテナーイメージの場所です。この値は常に入力されます。

startedTime

string

startedTime は、更新が開始された時刻です。

state

string

状態は、更新が完全に適用されたかどうかを反映します。部分状態は、更新が完全に適用されていないことを示し、完了状態は、更新が少なくとも 1 回正常にロールアウトされたことを示します (更新のすべての部分が正常に適用されました)。

verified

boolean

検証済みは、提供された更新がインストール前に適切に検証されたかどうかを示します。これが false の場合、クラスターは信頼されていない可能性があります。verified では、更新ターゲットが受け入れられた時点でのクラスターの状態に依存するアップグレード可能チェックはカバーされません。

version

string

version は、更新バージョンを識別するセマンティックバージョンです。要求されたイメージがバージョンを定義していない場合、またはイメージの取得に失敗した場合、この値は空である可能性があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.