第12章 MachineOSConfig [machineconfiguration.openshift.io/v1]


説明
MachineOSConfig は、MCO によって管理されるビルドプロセスの設定を記述します。互換性レベル 1: メジャーリリース内で最低 12 カ月間、または 3 つのマイナーリリース (いずれか長い方) にわたって安定しています。
object
必須
  • spec

12.1. 仕様

Expand
プロパティー説明

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 は、machineosconfig の設定を記述します。

status

object

status は、machineosconfig のステータスを記述します。

12.1.1. .spec

説明
spec は、machineosconfig の設定を記述します。
object
必須
  • imageBuilder
  • machineConfigPool
  • renderedImagePushSecret
  • renderedImagePushSpec
Expand
プロパティー説明

baseImagePullSecret

object

baseImagePullSecret は、ベースイメージをプルするために使用されるシークレットです。提供される場合、openshift-machine-config-operator namespace に存在する必要があります。指定されていない場合は、デフォルトでクラスター全体のプルシークレットが使用されます。これはクラスターのインストール時に提供され、openshift-config namespace にシークレットとして存在します。

containerFile

array

containerFile は、ユーザーがイメージに組み込むために指定したカスタムデータを記述します。これは一般的に Dockerfile とも呼ばれており、Dockerfile として扱うことができます。コンテンツは Dockerfile のコンテンツです。spec 参照は、https://github.com/containers/common/blob/main/docs/Containerfile.5.md を参照してください。これはアーキテクチャー名 (例: AMD64) でインデックス付けされたリストであり、arch ごとに 1 つの containerFile (最大 4 つ) を指定できます。

containerFile[]

object

MachineOSContainerfile には、ユーザーがイメージに組み込みたいすべてのカスタムコンテンツが含まれています。

imageBuilder

object

imageBuilder は、この MachineOSConfig によってトリガーされる各ビルドで使用される Image Builder を記述します。現在サポートされているタイプ: Job

machineConfigPool

object

machineConfigPool は、ビルドの対象となるプールです。Machine Config Operator はビルドを実行し、ビルドされたイメージを指定されたプールにロールアウトします。

renderedImagePushSecret

object

renderedImagePushSecret は、ユーザーレジストリーに接続するために使用されるシークレットです。最終的なイメージのプッシュ用とプル用のシークレットは分離して、最小権限の原則を想定して設定される必要があります。書き込み特権を持つプッシュシークレットは、MachineConfigController Pod をホストしているノードにのみ存在する必要があります。読み取り専用特権を持つプルシークレットは、すべてのノードで必要です。2 つのシークレットを分離することで、書き込み認証情報が侵害されるリスクが軽減されます。

renderedImagePushSpec

string

renderedImagePushSpec は、最終イメージの場所を記述します。MachineOSConfig オブジェクトは、クラスター内のイメージレジストリー設定を使用します。registries.conf に固有のミラーまたはその他の設定を使用する場合は、クラスターの image.config、ImageContentSourcePolicies、ImageDigestMirrorSet、または ImageTagMirrorSet オブジェクトを介して、クラスター全体の registries.conf でそれらを指定してください。イメージプッシュ spec の形式は、host[:port][/namespace]/name:<tag> or svc_name.namespace.svc[:port]/repository/name:<tag> です。プッシュ spec の長さは 1 文字以上 447 文字以下にする必要があります。

12.1.2. .spec.baseImagePullSecret

説明
baseImagePullSecret は、ベースイメージをプルするために使用されるシークレットです。提供される場合、openshift-machine-config-operator namespace に存在する必要があります。指定されていない場合は、デフォルトでクラスター全体のプルシークレットが使用されます。これはクラスターのインストール時に提供され、openshift-config namespace にシークレットとして存在します。
object
必須
  • name
Expand
プロパティー説明

name

string

name は、この MachineOSConfig オブジェクトをプッシュまたはプルするために使用されるシークレットの名前です。小文字の英数字、'-'、または '.' が含まれ、先頭と末尾は英数字にする必要があります。このシークレットは、openshift-machine-config-operator namespace に存在する必要があります。

12.1.3. .spec.containerFile

説明
containerFile は、ユーザーがイメージに組み込むために指定したカスタムデータを記述します。これは一般的に Dockerfile とも呼ばれており、Dockerfile として扱うことができます。コンテンツは Dockerfile のコンテンツです。spec 参照は、https://github.com/containers/common/blob/main/docs/Containerfile.5.md を参照してください。これはアーキテクチャー名 (例: AMD64) でインデックス付けされたリストであり、arch ごとに 1 つの containerFile (最大 4 つ) を指定できます。
array

12.1.4. .spec.containerFile[]

説明
MachineOSContainerfile には、ユーザーがイメージに組み込みたいすべてのカスタムコンテンツが含まれています。
object
必須
  • content
Expand
プロパティー説明

containerfileArch

string

containerfileArch は、この containerfile がビルドされるアーキテクチャーを記述します。この arch はオプションです。ユーザーがアーキテクチャーを指定しない場合は、コンテンツはすべてのアーキテクチャーに適用できるか、単一のアーキテクチャークラスター (唯一のアーキテクチャー) に適用できるものとみなされます。

content

string

content は、イメージに組み込まれるコンテンツを定義する埋め込み Containerfile/Dockerfile です。spec 参照は、https://github.com/containers/common/blob/main/docs/Containerfile.5.md を参照してください。たとえば、次のようにすることで、tree パッケージがホストに追加されます: FROM configs AS final RUN rpm-ostree install tree && \ ostree container commit このフィールドは必須で、最大 4096 文字まで指定できます。

12.1.5. .spec.imageBuilder

説明
imageBuilder は、この MachineOSConfig によってトリガーされる各ビルドで使用される Image Builder を記述します。現在サポートされているタイプ: Job
object
必須
  • imageBuilderType
Expand
プロパティー説明

imageBuilderType

string

imageBuilderType は、イメージのビルドに使用するバックエンドを指定します。有効なオプション: Job

12.1.6. .spec.machineConfigPool

説明
machineConfigPool は、ビルドの対象となるプールです。Machine Config Operator はビルドを実行し、ビルドされたイメージを指定されたプールにロールアウトします。
object
必須
  • name
Expand
プロパティー説明

name

string

MachineConfigPool オブジェクトの名前。この値は最大 253 文字で、小文字の英数字、ハイフン、ピリオドのみを含み、先頭と末尾は英数字にする必要があります。

12.1.7. .spec.renderedImagePushSecret

説明
renderedImagePushSecret は、ユーザーレジストリーに接続するために使用されるシークレットです。最終的なイメージのプッシュ用とプル用のシークレットは分離して、最小権限の原則を想定して設定される必要があります。書き込み特権を持つプッシュシークレットは、MachineConfigController Pod をホストしているノードにのみ存在する必要があります。読み取り専用特権を持つプルシークレットは、すべてのノードで必要です。2 つのシークレットを分離することで、書き込み認証情報が侵害されるリスクが軽減されます。
object
必須
  • name
Expand
プロパティー説明

name

string

name は、この MachineOSConfig オブジェクトをプッシュまたはプルするために使用されるシークレットの名前です。小文字の英数字、'-'、または '.' が含まれ、先頭と末尾は英数字にする必要があります。このシークレットは、openshift-machine-config-operator namespace に存在する必要があります。

12.1.8. .status

説明
status は、machineosconfig のステータスを記述します。
object
Expand
プロパティー説明

conditions

array

conditions は、オブジェクトの状態に関連するものです。

conditions[]

object

condition には、この API Resource の現在の状態のある側面の詳細が含まれます。

currentImagePullSpec

string

currentImagePullSpec は、MCO が新しい OSImage をプルダウンするために使用する完全修飾イメージプル spec です。これには、sha256 イメージダイジェストが含まれます。これは、Machine Config Operator のビルドコントローラーがビルドを正常に完了したときに生成され、対応する MachineOSBuild オブジェクトの FinalImagePushSpec から情報が設定されます。これは、新しいイメージのビルドを引き起こす spec の変更に応じて完了後に変更される可能性がありますが、削除されることはありません。イメージプル spec の形式は、host[:port][/namespace]/name@sha256:<digest> です。digest は 64 文字の長さで、小文字の 16 進文字 (a - f と 0 - 9) のみが含まれている必要があります。spec 全体の長さは 1 文字以上 447 文字以下にする必要があります。

machineOSBuild

object

machineOSBuild は、この MachineOSConfig の MachineOSBuild オブジェクトへの参照であり、イメージビルドのステータスが含まれます。

observedGeneration

integer

observedGeneration は、Machine Config Operator のビルドコントローラーによって監視される MachineOSConfig オブジェクトの生成を表します。

12.1.9. .status.conditions

説明
conditions は、オブジェクトの状態に関連するものです。
array

12.1.10. .status.conditions[]

説明
condition には、この API Resource の現在の状態のある側面の詳細が含まれます。
object
必須
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
プロパティー説明

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 の条件のタイプ。

12.1.11. .status.machineOSBuild

説明
machineOSBuild は、この MachineOSConfig の MachineOSBuild オブジェクトへの参照であり、イメージビルドのステータスが含まれます。
object
必須
  • group
  • name
  • resource
Expand
プロパティー説明

group

string

指示対象のグループ。名前には、小文字の英数字、'-'、または '.' のみを含めることができ、先頭と末尾は英数字にする必要があります。たとえば、""、"apps"、"build.openshift.io" です。

name

string

参照先の名前。名前には、小文字の英数字、'-'、または '.' のみを含めることができ、先頭と末尾は英数字にする必要があります。

namespace

string

参照先の namespace。この値は最大 63 文字で、小文字の英数字とハイフンのみを含み、先頭と末尾は英数字にする必要があります。

resource

string

指示対象のリソース。この値は最大 63 文字で、小文字の英数字とハイフンのみを含み、英字で始まり英数字で終わる必要があります。たとえば、"deployments"、"deploymentconfigs"、"pods" です。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat