14.6. GitOps ZTP を使用したシングルノード OpenShift クラスターにワーカーノードを追加する


既存のシングルノード OpenShift クラスターにワーカーノードを追加することで、クラスター内で利用可能な CPU リソースを増やすことができます。

前提条件

  • OpenShift Container Platform 4.11 以降のベアメタルハブクラスターに RHACM 2.12 以降をインストールして設定します。
  • ハブクラスターに Topology Aware Lifecycle Manager をインストールする
  • ハブクラスターに Red Hat OpenShift GitOps をインストールする
  • GitOps ZTP ztp-site-generate コンテナーイメージバージョン 4.12 以降を使用する
  • GitOps ZTP を使用して管理対象のシングルノード OpenShift クラスターをデプロイする
  • RHACM ドキュメントの説明に従って、中央インフラストラクチャー管理を設定する
  • 内部 API エンドポイント api-int.<cluster_name>.<base_domain> を解決するようにクラスターにサービスを提供する DNS を設定する

手順

  1. example-sno.yaml ClusterInstance CR を使用してクラスターをデプロイした場合は、新しいワーカーノードを spec.nodes リストに追加してください。

    apiVersion: siteconfig.open-cluster-management.io/v1alpha1
    kind: ClusterInstance
    metadata:
      name: "example-sno"
      namespace: "example-sno"
    spec:
      # ... existing cluster configuration ...
      nodes:
          - hostName: "example-sno.example.com"
            role: "master"
            # ... existing master node configuration ...
          - hostName: "example-node2.example.com"
            role: "worker"
            bmcAddress: "idrac-virtualmedia+https://[1111:2222:3333:4444::bbbb:1]/redfish/v1/Systems/System.Embedded.1"
            bmcCredentialsName:
              name: "example-node2-bmh-secret"
            bootMACAddress: "AA:BB:CC:DD:EE:11"
            bootMode: "UEFI"
            nodeNetwork:
              interfaces:
                - name: eno1
                  macAddress: "AA:BB:CC:DD:EE:11"
              config:
                interfaces:
                  - name: eno1
                    type: ethernet
                    state: up
                    macAddress: "AA:BB:CC:DD:EE:11"
                    ipv4:
                      enabled: false
                    ipv6:
                      enabled: true
                      address:
                      - ip: 1111:2222:3333:4444::1
                        prefix-length: 64
                dns-resolver:
                  config:
                    search:
                    - example.com
                    server:
                    - 1111:2222:3333:4444::2
                routes:
                  config:
                  - destination: ::/0
                    next-hop-interface: eno1
                    next-hop-address: 1111:2222:3333:4444::1
                    table-id: 254
  2. ClusterInstance CR の spec.nodes セクションにある bmcCredentialsName フィールドで参照される、新しいホスト用の BMC 認証シークレットを作成します。

    apiVersion: v1
    data:
      password: "password"
      username: "username"
    kind: Secret
    metadata:
      name: "example-node2-bmh-secret"
      namespace: example-sno
    type: Opaque
  3. Git で変更をコミットし、GitOps ZTP ArgoCD アプリケーションによって監視されている Git リポジトリーにプッシュします。

    ArgoCD クラスター アプリケーションが同期すると、SiteConfig Operator によって生成された 2 つの新しいマニフェストがハブクラスター上に現れます。

    • BareMetalHost
    • NMStateConfig

      重要

      cpuset フィールドは、ワーカーノードに対して設定しないでください。ワーカーノードのワークロード分割は、ノードのインストール完了後に管理ポリシーを通じて追加されます。

検証

インストールプロセスは、いくつかの方法でモニターできます。

  • 次のコマンドを実行して、事前プロビジョニングイメージが作成されているかどうかを確認します。

    $ oc get ppimg -n example-sno

    出力例

    NAMESPACE       NAME            READY   REASON
    example-sno     example-sno     True    ImageCreated
    example-sno     example-node2   True    ImageCreated

  • ベアメタルホストの状態を確認します。

    $ oc get bmh -n example-sno

    出力例

    NAME            STATE          CONSUMER   ONLINE   ERROR   AGE
    example-sno     provisioned               true             69m
    example-node2   provisioning              true             4m50s 
    1

    1
    provisioning ステータスは、インストールメディアからのノードの起動が進行中であることを示します。
  • インストールプロセスを継続的に監視します。

    1. 次のコマンドを実行して、エージェントのインストールプロセスを監視します。

      $ oc get agent -n example-sno --watch

      出力例

      NAME                                   CLUSTER   APPROVED   ROLE     STAGE
      671bc05d-5358-8940-ec12-d9ad22804faa   example-sno   true       master   Done
      [...]
      14fd821b-a35d-9cba-7978-00ddf535ff37   example-sno   true       worker   Starting installation
      14fd821b-a35d-9cba-7978-00ddf535ff37   example-sno   true       worker   Installing
      14fd821b-a35d-9cba-7978-00ddf535ff37   example-sno   true       worker   Writing image to disk
      [...]
      14fd821b-a35d-9cba-7978-00ddf535ff37   example-sno   true       worker   Waiting for control plane
      [...]
      14fd821b-a35d-9cba-7978-00ddf535ff37   example-sno   true       worker   Rebooting
      14fd821b-a35d-9cba-7978-00ddf535ff37   example-sno   true       worker   Done

    2. ワーカーノードのインストールが完了すると、ワーカーノードの証明書が自動的に承認されます。この時点で、ワーカーは ManagedClusterInfo ステータスで表示されます。次のコマンドを実行して、ステータスを確認します。

      $ oc get managedclusterinfo/example-sno -n example-sno -o \
      jsonpath='{range .status.nodeList[*]}{.name}{"\t"}{.conditions}{"\t"}{.labels}{"\n"}{end}'

      出力例

      example-sno	[{"status":"True","type":"Ready"}]	{"node-role.kubernetes.io/master":"","node-role.kubernetes.io/worker":""}
      example-node2	[{"status":"True","type":"Ready"}]	{"node-role.kubernetes.io/worker":""}

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る