11.4. クラスターをホストする GCP プロジェクトの設定
OpenShift Container Platform をインストールする前に、これをホストするように Google Cloud Platform (GCP) プロジェクトを設定する必要があります。
11.4.1. GCP プロジェクトの作成
OpenShift Container Platform をインストールするには、クラスターをホストするために Google Cloud Platform (GCP) アカウントでプロジェクトを作成する必要があります。
手順
OpenShift Container Platform クラスターをホストするプロジェクトを作成します。GCP ドキュメントの プロジェクトの作成と管理 を参照してください。
重要GCP プロジェクトは、installer-provisioned infrastructure を使用している場合には、Premium Network Service 階層を使用する必要があります。インストールプログラムを使用してインストールしたクラスターでは、Standard Network Service 階層はサポートされません。インストールプログラムは、
api-int.<cluster_name>.<base_domain>
の内部負荷分散を設定します。内部負荷分散には Premium Tier が必要です。
11.4.2. GCP での API サービスの有効化
Google Cloud Platform (GCP) プロジェクトでは、OpenShift Container Platform インストールを完了するために複数の API サービスへのアクセスが必要です。
前提条件
- クラスターをホストするプロジェクトを作成しています。
手順
クラスターをホストするプロジェクトで以下の必要な API サービスを有効にします。インストールに不要なオプションの API サービスを有効にすることもできます。GCP ドキュメントの サービスの有効化 を参照してください。
表11.1 必要な API サービス API サービス コンソールサービス名 Compute Engine API
compute.googleapis.com
Cloud Resource Manager API
cloudresourcemanager.googleapis.com
Google DNS API
dns.googleapis.com
IAM Service Account Credentials API
iamcredentials.googleapis.com
Identity and Access Management (IAM) API
iam.googleapis.com
Service Usage API
serviceusage.googleapis.com
表11.2 オプションの API サービス API サービス コンソールサービス名 Cloud Deployment Manager V2 API
deploymentmanager.googleapis.com
Google Cloud API
cloudapis.googleapis.com
Service Management API
servicemanagement.googleapis.com
Google Cloud Storage JSON API
storage-api.googleapis.com
Cloud Storage
storage-component.googleapis.com
11.4.3. GCP アカウントの制限
OpenShift Container Platform クラスターは多くの Google Cloud Platform (GCP) コンポーネントを使用しますが、デフォルトの 割り当て (Quota) はデフォルトの OpenShift Container Platform クラスターをインストールする機能に影響を与えません。
3 つのコンピュートマシンおよび 3 つのコントロールプレーンマシンが含まれるデフォルトクラスターは以下のリソースを使用します。一部のリソースはブートストラッププロセス時にのみ必要となり、クラスターのデプロイ後に削除されることに注意してください。
サービス | コンポーネント | 場所 | 必要なリソースの合計 | ブートストラップ後に削除されるリソース |
---|---|---|---|---|
サービスアカウント | IAM | グローバル | 6 | 1 |
ファイアウォールのルール | ネットワーク | グローバル | 11 | 1 |
転送ルール | Compute | グローバル | 2 | 0 |
ヘルスチェック | Compute | グローバル | 2 | 0 |
イメージ | Compute | グローバル | 1 | 0 |
ネットワーク | ネットワーク | グローバル | 1 | 0 |
ルーター | ネットワーク | グローバル | 1 | 0 |
ルート | ネットワーク | グローバル | 2 | 0 |
サブネットワーク | Compute | グローバル | 2 | 0 |
ターゲットプール | ネットワーク | グローバル | 2 | 0 |
インストール時にクォータが十分ではない場合、インストールプログラムは超過したクォータとリージョンの両方を示すエラーを表示します。
実際のクラスターサイズ、計画されるクラスターの拡張、およびアカウントに関連付けられた他のクラスターからの使用法を考慮してください。CPU、静的 IP アドレス、および永続ディスク SSD(ストレージ) のクォータは、ほとんどの場合に不十分になる可能性のあるものです。
以下のリージョンのいずれかにクラスターをデプロイする予定の場合、ストレージクォータの最大値を超え、CPU クォータ制限を超える可能性が高くなります。
-
asia-east2
-
asia-northeast2
-
asia-south1
-
australia-southeast1
-
europe-north1
-
europe-west2
-
europe-west3
-
europe-west6
-
northamerica-northeast1
-
southamerica-east1
-
us-west2
GCP コンソール からリソースクォータを増やすことは可能ですが、サポートチケットを作成する必要がある場合があります。OpenShift Container Platform クラスターをインストールする前にサポートチケットを解決できるように、クラスターのサイズを早期に計画してください。
11.4.4. GCP でのサービスアカウントの作成
OpenShift Container Platform には、Google API でデータにアクセスするための認証および承認を提供する Google Cloud Platform (GCP) サービスアカウントが必要です。プロジェクトに必要なロールが含まれる既存の IAM サービスアカウントがない場合は、これを作成する必要があります。
前提条件
- クラスターをホストするプロジェクトを作成しています。
手順
- OpenShift Container Platform クラスターをホストするために使用するプロジェクトでサービスアカウントを作成します。GCP ドキュメントで サービスアカウントの作成 を参照してください。
サービスアカウントに適切なパーミッションを付与します。付随する個別のパーミッションを付与したり、
オーナー
ロールをこれに割り当てることができます。特定のリソースのサービスアカウントへのロールの付与 を参照してください。注記サービスアカウントをプロジェクトの所有者にすることが必要なパーミッションを取得する最も簡単な方法になります。 つまりこれは、サービスアカウントはプロジェクトを完全に制御できることを意味します。この権限を提供することに伴うリスクが受け入れ可能であるかどうかを判別する必要があります。
サービスアカウントキーを JSON 形式で作成するか、サービスアカウントを GCP 仮想マシンにアタッチできます。GCP ドキュメントの サービスアカウントキー の 作成とインスタンスのサービスアカウントの作成と有効 化をご覧ください。
クラスターを作成するには、サービスアカウントキーまたはサービスアカウントがアタッチされた仮想マシンが必要です。
注記サービスアカウントがアタッチされた仮想マシンを使用してクラスターを作成する場合は、インストール前に
install-config.yaml
ファイルでcredentialsMode: Manual
を設定する必要があります。
11.4.4.1. 必要な GCP のロール
作成するサービスアカウントに オーナー
ロールを割り当てると、OpenShift Container Platform のインストールに必要なパーミッションも含め、そのサービスアカウントにすべてのパーミッションが付与されます。組織のセキュリティーポリシーでより制限的なアクセス許可のセットが必要な場合は、次のアクセス許可を持つサービスアカウントを作成できます。
Cloud Credential Operator を passthrough モードで動作するように設定する場合、粒度の細かいパーミッションではなくロールを使用する必要があります。
クラスターを既存の VPC (virtual private cloud) にデプロイする場合、サービスアカウントでは一部のネットワークのパーミッションを必要としません。これについては、以下の一覧に記載されています。
インストールプログラムに必要なロール
- Compute 管理者
- IAM セキュリティー管理者
- サービスアカウント管理者
- サービスアカウントキー管理者
- サービスアカウントユーザー
- ストレージ管理者
インストール時のネットワークリソースの作成に必要なロール
- DNS 管理者
パススルー認証情報モードの使用に必要なロール
- ロードバランサー計算の管理者
- IAM ロールビューアー
ユーザーによってプロビジョニングされる GCP インフラストラクチャーに必要なロール
- Deployment Manager Editor
ロールは、コントロールプレーンおよびコンピュートマシンが使用するサービスアカウントに適用されます。
アカウント | ロール |
---|---|
コントロールプレーン |
|
| |
| |
| |
| |
Compute |
|
|
11.4.5. サポートされている GCP リージョン
OpenShift Container Platform クラスターを以下の Google Cloud Platform (GCP) リージョンにデプロイできます。
-
asia-east1
(Changhua County, Taiwan) -
asia-east2
(Hong Kong) -
asia-northeast1
(Tokyo, Japan) -
asia-northeast2
(Osaka, Japan) -
asia-northeast3
(Seoul, South Korea) -
asia-south1
(Mumbai, India) -
asia-south2
(Delhi, India) -
asia-southeast1
(Jurong West, Singapore) -
asia-southeast2
(Jakarta, Indonesia) -
australia-southeast1
(Sydney, Australia) -
australia-southeast2
(Melbourne, Australia) -
europe-central2
(Warsaw, Poland) -
europe-north1
(Hamina, Finland) -
europe-southwest1
(Madrid, Spain) -
europe-west1
(St. Ghislain, Belgium) -
europe-west2
(London, England, UK) -
europe-west3
(Frankfurt, Germany) -
europe-west4
(Eemshaven, Netherlands) -
europe-west6
(Zürich, Switzerland) -
europe-west8
(Milan, Italy) -
europe-west9
(Paris, France) -
europe-west12
(Turin, Italy) -
me-central1
(ドーハ、カタール、中東) -
me-west1
(Tel Aviv, Israel) -
northamerica-northeast1
(Montréal, Québec, Canada) -
northamerica-northeast2
(Toronto, Ontario, Canada) -
southamerica-east1
(São Paulo, Brazil) -
southamerica-west1
(Santiago, Chile) -
us-central1
(Council Bluffs, Iowa, USA) -
us-east1
(Moncks Corner, South Carolina, USA) -
us-east4
(Ashburn, Northern Virginia, USA) -
us-east5
(Columbus, Ohio) -
us-south1
(Dallas, Texas) -
us-west1
(The Dalles, Oregon, USA) -
us-west2
(Los Angeles, California, USA) -
us-west3
(Salt Lake City, Utah, USA) -
us-west4
(Las Vegas, Nevada, USA)
リージョンおよびゾーンごとにどのマシンタイプのインスタンスが使用できるかを確認するには、Google の ドキュメント を参照してください。
11.4.6. GCP の CLI ツールのインストールおよび設定
user-provisioned infrastructure を使用して Google Cloud Platform (GCP) に OpenShift Container Platform をインストールするには、GCP の CLI ツールをインストールし、設定する必要があります。
前提条件
- クラスターをホストするプロジェクトを作成しています。
- サービスアカウントを作成し、これに必要なパーミッションを付与しています。
手順
$PATH
で以下のバイナリーをインストールします。-
gcloud
-
gsutil
GCP ドキュメントの Cloud SDK のドキュメント を参照してください。
-
設定したサービスアカウントで、
gcloud
ツールを使用して認証します。GCP ドキュメントで、サービスアカウントでの認証 を参照してください。