2.4. OCM CLI を使用した Workload Identity Federation クラスターの作成
OpenShift Cluster Manager CLI (ocm
) を interactive モードまたは non-interactive モードで使用して、Workload Identity Federation (WIF) を使用して Google Cloud Platform (GCP) クラスター上に OpenShift Dedicated を作成できます。
WIF 対応クラスターを作成するには、OpenShift Cluster Manager CLI (ocm
) がバージョン 1.0.2 以上である必要があります。
クラスターを作成する前に、まず WIF 設定を作成する必要があります。
既存の非 WIF クラスターを WIF 設定に移行することはサポートされていません。この機能は、新しいクラスターの作成時にのみ有効にできます。
2.4.1. WIF 設定の作成
手順
WIF 設定は、auto
モードまたは manual
モードを使用して作成できます。
auto
モードでは、OpenShift Dedicated コンポーネントやその他の IAM リソース用のサービスアカウントを自動的に作成できます。
または、manual
モードを使用することもできます。manual
モードでは、script.sh
ファイル内にコマンドが提供されます。このコマンドを使用して、OpenShift Dedicated コンポーネントやその他の IAM リソース用のサービスアカウントを手動で作成します。
選択したモードに応じて、次のいずれかのコマンドを実行して WIF 設定を作成します。
auto モードで WIF 設定を作成するには、次のコマンドを実行します。
$ ocm gcp create wif-config --name <wif_name> \ 1 --project <gcp_project_id> \ 2
出力例
2024/09/26 13:05:41 Creating workload identity configuration... 2024/09/26 13:05:47 Workload identity pool created with name 2e1kcps6jtgla8818vqs8tbjjls4oeub 2024/09/26 13:05:47 workload identity provider created with name oidc 2024/09/26 13:05:48 IAM service account osd-worker-oeub created 2024/09/26 13:05:49 IAM service account osd-control-plane-oeub created 2024/09/26 13:05:49 IAM service account openshift-gcp-ccm-oeub created 2024/09/26 13:05:50 IAM service account openshift-gcp-pd-csi-driv-oeub created 2024/09/26 13:05:50 IAM service account openshift-image-registry-oeub created 2024/09/26 13:05:51 IAM service account openshift-machine-api-gcp-oeub created 2024/09/26 13:05:51 IAM service account osd-deployer-oeub created 2024/09/26 13:05:52 IAM service account cloud-credential-operator-oeub created 2024/09/26 13:05:52 IAM service account openshift-cloud-network-c-oeub created 2024/09/26 13:05:53 IAM service account openshift-ingress-gcp-oeub created 2024/09/26 13:05:55 Role "osd_deployer_v4.17" updated
manual モードで WIF 設定を作成するには、次のコマンドを実行します。
$ ocm gcp create wif-config --name <wif_name> \ 1 --project <gcp_project_id> \ 2 --mode=manual
WIF を設定すると、次のサービスアカウント、ロール、およびグループが作成されます。
表2.1 WIF 設定のサービスアカウント、グループ、およびロール サービスアカウント/グループ GCP の事前定義ロールと Red Hat のカスタムロール osd-deployer
osd_deployer_v4.17
osd-control-plane
- compute.instanceAdmin
- compute.networkAdmin
- compute.securityAdmin
- compute.storageAdmin
osd-worker
- compute.storageAdmin
- compute.viewer
cloud-credential-operator-gcp-ro-creds
cloud_credential_operator_gcp_ro_creds_v4.17
openshift-cloud-network-config-controller-gcp
openshift_cloud_network_config_controller_gcp_v4.17
openshift-gcp-ccm
openshift_gcp_ccm_v4.17
openshift-gcp-pd-csi-driver-operator
- compute.storageAdmin
- iam.serviceAccountUser
- resourcemanager.tagUser
- openshift_gcp_pd_csi_driver_operator_v4.17
openshift-image-registry-gcp
openshift_image_registry_gcs_v4.17
openshift-ingress-gcp
openshift_ingress_gcp_v4.17
openshift-machine-api-gcp
openshift_machine_api_gcp_v4.17
SRE グループ経由のアクセス: sd-sre-platform-gcp-access
sre_managed_support
WIF 設定ロールと、ロールに割り当てられている権限の詳細は、managed-cluster-config を参照してください。
2.4.2. WIF クラスターの作成
手順
WIF クラスターは、interactive
モードまたは non-interactive
モードを使用して作成できます。
interactive
モードでは、クラスターの作成中にクラスター属性がプロンプトとして自動的に表示されます。指定された要件に基づいて、表示されるフィールドにプロンプトの値を入力します。
non-interactive
モードでは、コマンド内の特定パラメーターの値を指定します。
選択したモードに応じて、次のコマンドのいずれかを実行して、WIF 設定を使用して GCP 上に OpenShift Dedicated クラスターを作成します。
interactive モードでクラスターを作成するには、次のコマンドを実行します。
$ ocm create cluster --interactive 1
- 1
interactive
モードでは、インタラクティブプロンプトで設定オプションを指定できます。
non-interactive モードでクラスターを作成するには、次のコマンドを実行します。
注記次の例は、オプションおよび必須のパラメーターで構成されており、
non-interactive
モードのコマンドとは異なる場合があります。オプションと記載されていないパラメーターは必須です。これらのパラメーターやその他のパラメーターの詳細を確認するには、ターミナルウィンドウでocm create cluster --help flag
コマンドを実行してください。$ ocm create cluster <cluster_name> \ 1 --provider=gcp \ 2 --ccs=true \ 3 --wif-config <wif_name> \ 4 --region <gcp_region> \ 5 --subscription-type=marketplace-gcp \ 6 --marketplace-gcp-terms=true \ 7 --version <version> \ 8 --multi-az=true \ 9 --enable-autoscaling=true \ 10 --min-replicas=3 \ 11 --max-replicas=6 \ 12 --secure-boot-for-shielded-vms=true 13
- 1
<cluster_name>
は、クラスターの名前に置き換えます。- 2
- 値を
gcp
に設定します。 - 3
- 値を
true
に設定します。 - 4
<wif_name>
は、WIF 設定の名前に置き換えます。- 5
<gcp_region>
は、新しいクラスターをデプロイする Google Cloud Platform (GCP) リージョンに置き換えます。- 6
- オプション: クラスターのサブスクリプション請求モデル。
- 7
- オプション:
subscription-type
パラメーターにmarketplace-gcp
の値を指定した場合、marketplace-gcp-terms
はtrue
である必要があります。 - 8
- オプション: 必要な OpenShift バージョン。
- 9
- オプション: 複数のデータセンターにデプロイします。
- 10
- オプション: コンピュートノードの自動スケーリングを有効にします。
- 11
- オプション: コンピュートノードの最小数。
- 12
- オプション: コンピュートノードの最大数。
- 13
- オプション: セキュアブートにより、Google Cloud Platform で Shielded 仮想マシンを使用できるようになります。
2.4.3. WIF 設定の更新
WIF 設定の更新は、y-stream の更新にのみ適用されます。バージョンセマンティクスに関する詳細を含む更新プロセスの概要については、The Ultimate Guide to OpenShift Release and Upgrade Process for Cluster Administrators を参照してください。
WIF 対応の OpenShift Dedicated クラスターを新しいバージョンに更新する前に、wif-config もそのバージョンに更新する必要があります。クラスターバージョンの更新を試みる前に wif-config バージョンを更新しないと、クラスターバージョンの更新が失敗します。
次のコマンドを実行すると、wif-config を特定の OpenShift Dedicated バージョンに更新できます。
ocm gcp update wif-config --version <version> \ 1 --name <wif_name> 2
2.4.4. WIF クラスターのリスト表示
WIF 認証タイプを使用してデプロイされたすべての OpenShift Dedicated クラスターをリスト表示するには、次のコマンドを実行します。
$ ocm list clusters --parameter search="gcp.authentication.wif_config_id != ''"
特定の wif-config を使用してデプロイされたすべての OpenShift Dedicated クラスターをリスト表示するには、次のコマンドを実行します。
$ ocm list clusters --parameter search="gcp.authentication.wif_config_id = '<wif_config_id>'" 1
- 1
<wif_config_id>
を WIF 設定の ID に置き換えて、その WIF 設定を使用してデプロイされたクラスターをリスト表示します。