1.8.6.3.2. API を使用して正常なマネージドクラスターにコントロールプレーンノードを追加する


API を使用して正常なマネージドクラスターにコントロールプレーンノードを追加するには、次の手順を実行します。

  1. 次のコマンドを実行して、ハブクラスターにログインします。クラスターの名前を追加します。

    oc login --token=sha256~value--server=https://api.<cluster-name>.basedomain:6443
  2. コントロールプレーンノードとして使用するマシンを Discovery ISO から起動します。

    注記: または、BareMetalHost YAML を適用して、新しいホストを InfraEnv に適用します。

  3. エージェントの状態をチェックして、エージェントがクラスターに再度バインドする準備ができていることを確認します。次のコマンドを実行し、必要に応じて変数を置き換えます。

    1. インベントリーを切り替えるには、次のコマンドを実行します。<host-inventory-namespace> は自分の namespace に置き換えます。

      oc project <host-inventory-namespace>
    2. エージェントの状態を取得するには、次のコマンドを実行します。<agent-name> は、エージェントの名前に置き換えます。

      oc get agent <agent-name> -oyaml | grep state
    3. 出力で stateInfo 行をチェックして、ホストがクラスターにバインドする準備ができていることを確認します。
  4. ホストのロールを master に設定します。

    1. Discovery ISO を使用してノードを追加する場合は、エージェントを承認し、ロールを master に設定します。以下のコマンドを実行します。

      oc patch agent <agent-name> -p '{"spec":{"approved":true,"role":"master"}}' --type=merge
    2. BareMetalHost を使用してノードを追加する場合は、BareMetalHost リソースの作成時に、BareMetalHost アノテーションに次の行を追加します。
        bmac.agent-install.openshift.io/role: master
  5. 次のコマンドを実行してパッチを検証します。

    oc get agent

    出力で、APPROVED 列の各行が true であること、および ROLEmaster であることを確認します。以下の例を参照してください。

    NAME                                   CLUSTER    APPROVED    ROLE    STAGE
    c6e00642-0e11-1689-a79d-0e131d2c6ecf              true        master
  6. 次のコマンドを実行して、エージェントをクラスターに追加します。

    oc patch agent <agent name> -p '{"spec":{"clusterDeploymentName":{"name":"<managed-cluster-name>","namespace":"<managed-cluster-namespace>"}}}' --type=merge
  7. 次のコマンドを実行して、エージェントがクラスターにバインドされていることを確認します。

    oc get agent

    以下の出力例を参照してください。

    NAME                                   CLUSTER    APPROVED    ROLE    STAGE
    c6e00642-0e11-1689-a79d-0e131d2c6ecf   hcpagent   true        master
  8. 次のコマンドを実行してエージェントのステータスを確認します。エージェントがインストールされ、クラスターに参加している間、数分待つ必要がある場合があります。

    oc get agent -w

    注記: 証明書署名要求 (CSR) は自動的に承認されません。

  9. エージェントが Rebooting の段階に達したら、CSR を手動で承認する必要があります。以下の手順を実行します。

    1. 次のコマンドを実行して、マネージドクラスターの kubeconfig ファイルを取得します。

      kubeconfig_secret_name=$(oc -n ${cluster_name} get clusterdeployments ${cluster_name} -ojsonpath='{.spec.clusterMetadata.adminKubeconfigSecretRef.name}')
      oc -n ${cluster_name} get secret ${kubeconfig_secret_name} -ojsonpath={.data.kubeconfig} | base64 -d > managed-cluster.kubeconfig
    2. 次のコマンドを実行して、マネージドクラスター上で保留中の CSR を見つけます。

      oc --kubeconfig managed-cluster.kubeconfig get csr | grep Pending
    3. マネージドクラスター内のエージェントの保留中の CSR を承認します。次のコマンドを実行し、<csr-name> は CSR 名に置き換えます。

      oc  --kubeconfig managed-cluster.kubeconfig  adm certificate approve <csr-name>

STAGEDone と表示されたら、ホストはインストールされています。次の出力例を参照してください。

NAME                                   CLUSTER    APPROVED   ROLE     STAGE
c6e00642-0e11-1689-a79d-0e131d2c6ecf   hcpagent   true       master   Done
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る