4.4. 新しいクラスターの登録

API を使用して新しいクラスター定義を登録するには、/v2/clusters エンドポイントを使用します。新しいクラスターを登録するには、次の設定が必要です。

  • name
  • openshift-version
  • pull_secret
  • cpu_architecture

新しいクラスターを登録するときに設定できるフィールドの詳細については、API ビューアーcluster-create-params モデルを参照してください。クラスター定義を作成したら、クラスター定義を変更し、追加設定の値を指定できます。

前提条件

  • 有効な API_TOKEN を生成した。トークンは 15 分ごとに期限切れになる。
  • プルシークレットをダウンロードした。
  • オプション: プルシークレットを $PULL_SECRET 変数に割り当てた。

手順

  1. API トークンを更新します。

    $ source refresh-token
  2. 新しいクラスターを登録します。

    1. オプション: リクエストでプルシークレットファイルを一気に読み込むことで、新しいクラスターを登録できます。

      $ curl https://api.openshift.com/api/assisted-install/v2/clusters \
      -H "Authorization: Bearer ${API_TOKEN}" \
      -H "Content-Type: application/json" \
      -d "$(jq --null-input \
          --slurpfile pull_secret ~/Downloads/pull-secret.txt '
      {
          "name": "testcluster",
          "openshift_version": "4.11",
          "cpu_architecture" : "<architecture_name>" 1
          "high_availability_mode": "None",
          "base_dns_domain": "example.com",
          "pull_secret": $pull_secret[0] | tojson
      }
      ')" | jq '.id'
      注記
      1
      有効な値を指定してください。x86_64、arm64、ppc64le、s390x、multi が有効です。
    2. オプション: 設定を JSON ファイルに書き込み、それをリクエストで参照することにより、新しいクラスターを登録できます。

      cat << EOF > cluster.json
      {
        "name": "testcluster",
        "openshift_version": "4.11",
        "high_availability_mode": "None",
        "base_dns_domain": "example.com",
        "pull_secret": $PULL_SECRET
      }
      EOF
      $ curl -s -X POST "https://api.openshift.com/api/assisted-install/v2/clusters" \
        -d @./cluster.json \
        -H "Content-Type: application/json" \
        -H "Authorization: Bearer $API_TOKEN" \
        | jq '.id'
  3. 返された cluster_idCLUSTER_ID 変数に割り当て、エクスポートします。

    $ export CLUSTER_ID=<cluster_id>
    注記

    ターミナルセッションを閉じる場合は、新しいターミナルセッションで CLUSTER_ID 変数を再度エクスポートする必要があります。

  4. 新しいクラスターのステータスを確認します。

    $ curl -s -X GET "https://api.openshift.com/api/assisted-install/v2/clusters/$CLUSTER_ID" \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer $API_TOKEN" \
      | jq

新しいクラスター定義を登録したら、クラスターのインフラ環境を作成します。

注記

インフラストラクチャー環境を作成するまで、支援付きインストーラーユーザーインターフェイスにクラスター設定設定を表示することはできません。