6.3. ブートイメージ管理を有効にする


サポートされているプラットフォームの場合、Machine Config Operator (MCO) は各ノードのブートイメージを管理および更新し、ブートイメージの Red Hat Enterprise Linux CoreOS(RHCOS) バージョンが、クラスターに適した Red Hat Enterprise Linux CoreOS(RHCOS) バージョンと一致するようにします。

デフォルトでは、Google Cloud および Amazon Web Services (AWS) クラスターの場合、クラスターを更新するたびに、Machine Config Operator (MCO) がクラスター内のマシンセットのブートイメージを更新します。

ブートイメージ管理機能を無効化してブートイメージが更新されないようにした場合は、MachineConfiguration オブジェクトを編集し、機能を再有効化できます。

VMware vSphere では、ブートイメージ管理をテクノロジープレビュー機能として有効にできます。

重要

vSphere でのブートイメージ管理は、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

この機能を有効化すると、ブートイメージが現在の OpenShift Container Platform バージョンに更新されます。今後クラスターが新しい OpenShift Container Platform バージョンに再度更新されると、ブートイメージも再度更新されます。機能の有効化後に作成された新しいノードは、更新されたブートイメージを使用します。この機能は既存のノードには影響しません。

前提条件

  • vSphere の場合、クラスターで TechPreviewNoUpgrade 機能セットを有効にします。詳細は、「フィーチャーゲートを使用した機能の有効化」を参照してください。

手順

  1. cluster という名前の MachineConfiguration オブジェクトを編集して、一部またはすべてのマシンセットのブートイメージ管理機能を有効化します。

    $ oc edit MachineConfiguration cluster
    • オプション: すべてのマシンセットに対してブートイメージ管理機能を有効化します。

      apiVersion: operator.openshift.io/v1
      kind: MachineConfiguration
      metadata:
        name: cluster
      spec:
      # ...
        managedBootImages:
          machineManagers:
          - apiGroup: machine.openshift.io
            resource: machinesets
            selection:
              mode: All

      ここでは、以下のようになります。

      spec.managedBootImages
      ブートイメージ管理機能を設定します。
      spec.managedBootImages.machineManagers.selection.mode
      クラスター内のすべてのマシンセットを更新することを指定します。
    • オプション: 特定のマシンセットに対してブートイメージ管理機能を有効化します。

      apiVersion: operator.openshift.io/v1
      kind: MachineConfiguration
      metadata:
        name: cluster
      spec:
      # ...
        managedBootImages:
          machineManagers:
          - apiGroup: machine.openshift.io
            resource: machinesets
            selection:
              mode: Partial
              partial:
                machineResourceSelector:
                  matchLabels:
                    region: "east"

      ここでは、以下のようになります。

      spec.managedBootImages
      ブートイメージ管理機能を設定します。
      spec.managedBootImages.machineManagers.selection.partial.machineResourceSelector.matchLabels

      このラベルが設定されたマシンすべてを更新するように指定します。

      ヒント

      マシンセットに適切なラベルが存在しない場合は、次のようなコマンドを実行してキーと値のペアを追加します。

      $ oc label machineset.machine ci-ln-hmy310k-72292-5f87z-worker-a region="east" -n openshift-machine-api

検証

  • 影響を受けるノードが READY 状態に戻ったら、マシン設定オブジェクトを表示して、ブートイメージ管理機能の現在の状態を確認します。

    $ oc get machineconfiguration cluster -o yaml

    ブートイメージ参照を含むマシンセット例

    kind: MachineConfiguration
    metadata:
      name: cluster
    # ...
    status:
      conditions:
      - lastTransitionTime: "2025-05-01T20:11:49Z"
        message: Reconciled 2 of 4 MAPI MachineSets | Reconciled 0 of 0 CAPI MachineSets
          | Reconciled 0 of 0 CAPI MachineDeployments
        reason: BootImageUpdateConfigurationUpdated
        status: "True"
        type: BootImageUpdateProgressing
      - lastTransitionTime: "2025-05-01T19:30:13Z"
        message: 0 Degraded MAPI MachineSets | 0 Degraded CAPI MachineSets | 0 CAPI MachineDeployments
        reason: BootImageUpdateConfigurationUpdated
        status: "False"
        type: BootImageUpdateDegraded
      managedBootImagesStatus:
        machineManagers:
        - apiGroup: machine.openshift.io
          resource: machinesets
          selection:
            mode: All

  • 影響を受けるノードが READY 状態に戻ったら、次のいずれかの方法を使用して現在のブートイメージを確認します。

    • Google Cloud および AWS の場合、次のコマンドを実行してブートイメージのバージョンを取得します。マシンセット内のブートイメージの場所と形式は、プラットフォームによって異なります。ただし、ブートイメージは常に spec.template.spec.providerSpec. パラメーターにリスト表示されます。

      $ oc get machinesets <machineset_name> -n openshift-machine-api -o yaml

      ブートイメージ参照を含むマシンセット例

      apiVersion: machine.openshift.io/v1beta1
      kind: MachineSet
      metadata:
        labels:
          machine.openshift.io/cluster-api-cluster: ci-ln-77hmkpt-72292-d4pxp
          update-boot-image: "true"
        name: ci-ln-77hmkpt-72292-d4pxp-worker-a
        namespace: openshift-machine-api
      spec:
      # ...
        template:
      # ...
          spec:
      # ...
            providerSpec:
      # ...
              value:
                disks:
                - autoDelete: true
                  boot: true
                  image: projects/rhcos-cloud/global/images/<boot_image> 
      1
      
      # ...

      1
      このブートイメージは、現在の OpenShift Container Platform バージョンと同じです。
    • VMware vSphere の場合は、影響を受けるノードからブートイメージのバージョンを取得します。

      1. 次のようなコマンドを実行して、ノードへの oc debug セッションを開きます。

        $ oc debug node/<node_name>
      2. 次のコマンドを実行して、デバッグシェル内のルートディレクトリーとして /host を設定します。

        sh-5.1# chroot /host
      3. rpm-ostree status コマンドを実行して、カスタムレイヤーイメージが使用されていることを確認します。

        sh-5.1# rpm-ostree status

        出力例

        State: idle
        Deployments:
        * ostree-unverified-registry:quay.io/my-registry/...
                           Digest: sha256:...

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る