8.2. IBM Cloud アカウントの設定
OpenShift Container Platform をインストールする前に、IBM Cloud アカウントを設定する必要があります。
8.2.1. 前提条件
- サブスクリプションのある IBM Cloud アカウントを持っている。無料または試用版の IBM Cloud アカウントに OpenShift Container Platform をインストールすることはできません。
8.2.2. IBM Cloud VPC のクォータと制限
OpenShift Container Platform クラスターは多数の IBM Cloud VPC コンポーネントを使用し、デフォルトのクォータと制限は OpenShift Container Platform クラスターをインストールする機能に影響を与えます。特定のクラスター設定を使用する場合、特定のリージョンにクラスターをデプロイするか、アカウントから複数のクラスターを実行する場合は、IBM Cloud アカウントに追加のリソースを要求する必要がある場合があります。
デフォルトの IBM Cloud VPC クォータとサービス制限の包括的なリストについては、IBM Cloud のドキュメント Quotas and service limits を参照してください。
Virtual Private Cloud (VPC)
各 OpenShift Container Platform クラスターは、独自の VPC を作成します。リージョンごとの VPC のデフォルトのクォータは 10 で、10 個のクラスターを許可します。1 つのリージョンに 10 を超えるクラスターを含めるには、このクオータを増やす必要があります。
アプリケーションロードバランサー
デフォルトでは、各クラスターは 3 つのアプリケーションロードバランサー (ALB) を作成します。
- マスター API サーバーの内部ロードバランサー
- マスター API サーバーの外部ロードバランサー
- ルーターのロードバランサー
追加の LoadBalancer
サービスオブジェクトを作成して、追加の ALB を作成できます。VPC ALB のデフォルトのクォータは、リージョンごとに 50 です。50 を超える ALB を使用するには、このクオータを増やす必要があります。
VPC ALB がサポートされています。従来の ALB は、IBM Cloud VPC ではサポートされていません。
フローティング IP アドレス
デフォルトでは、インストールプログラムは、コントロールプレーンとコンピューティングマシンをリージョン内のすべてのアベイラビリティーゾーンに分散して、高可用性設定でクラスターをプロビジョニングします。各アベイラビリティーゾーンで、パブリックゲートウェイが作成され、個別のフローティング IP アドレスが必要になります。
フローティング IP アドレスのデフォルトのクォータは、アベイラビリティーゾーンごとに 20 アドレスです。デフォルトのクラスター設定では、3 つのフローティング IP アドレスが生成されます。
-
us-east-1
プライマリーゾーンの 2 つのフローティング IP アドレス。ブートストラップノードに関連付けられている IP アドレスは、インストール後に削除されます。 -
us-east-2
セカンダリーゾーンの 1 つのフローティング IP アドレス。 -
us-east-3
セカンダリーゾーンの 1 つのフローティング IP アドレス。
IBM Cloud VPC は、アカウント内のリージョンごとに最大 19 個のクラスターをサポートできます。19 を超えるデフォルトクラスターを計画している場合は、このクオータを増やす必要があります。
Virtual Server Instances (VSI)
デフォルトでは、クラスターは bx2-4x16
プロファイルを使用して VSI を作成します。これには、デフォルトで次のリソースが含まれます。
- 仮想 CPU 4 個
- 16 GB RAM
次のノードが作成されます。
-
インストールの完了後に削除される 1 台の
bx2-4x16
ブートストラップマシン -
3 つの
bx2-4x16
コントロールプレーンノード -
3 つの
bx2-4x16
コンピュートノード
詳細については、IBM Cloud のドキュメント supported profiles を参照してください。
VSI コンポーネント | デフォルトの IBM Cloud VPC クォータ | デフォルトのクラスター設定 | クラスターの最大数 |
---|---|---|---|
vCPU | リージョンごとに 200 の vCPU | 28 の vCPU、またはブートストラップの削除後は 24 個の vCPU | リージョンごとに 8 |
RAM | リージョンあたり 1600 GB | 112 GB、またはブートストラップの削除後は 96 GB | リージョンごとに 16 |
ストレージ | リージョンごとに 18 TB | 1050 GB、またはブートストラップの削除後は 900 GB | リージョンごとに 19 |
表に記載されているリソースを超える予定がある場合は、IBM Cloud アカウントのクォータを増やす必要があります。
ブロックストレージボリューム
VPC マシンごとに、ブートボリューム用にブロックストレージデバイスが接続されます。デフォルトのクラスター設定では、7 台の VPC マシンが作成され、7 つのブロックストレージボリュームが作成されます。IBM Cloud VPC ストレージクラスの追加の Kubernetes 永続ボリューム要求 (PVC) は、追加のブロックストレージボリュームを作成します。VPC ブロックストレージボリュームのデフォルトのクォータは、リージョンごとに 300 です。300 を超えるボリュームを使用するには、このクオータを増やす必要があります。
8.2.3. DNS 解決の設定
DNS 解決の設定方法は、インストールする OpenShift Container Platform クラスターのタイプによって異なります。
- パブリッククラスターをインストールする場合は、IBM Cloud Internet Services (CIS) を使用します。
- プライベートクラスターをインストールする場合は、IBM Cloud DNS サービス (DNS サービス) を使用します
8.2.3.1. DNS 解決のための IBM Cloud Internet Services の使用
インストールプログラムは、IBM Cloud Internet Services (CIS) を使用してクラスター DNS 解決を設定し、パブリッククラスターの名前検索を提供します。
IBM Cloud VPC は IPv6 をサポートしていないため、デュアルスタックまたは IPv6 環境は使用できません。
クラスターと同じアカウントの CIS にドメインゾーンを作成する必要があります。また、ゾーンがドメインに対して権限を持っていることを確認する必要があります。これは、root ドメインまたはサブドメインを使用して行うことができます。
前提条件
- IBM Cloud CLI をインストールしている。
- 既存のドメインとレジストラがあります。詳細については、IBM の ドキュメント を参照してください。
手順
クラスターで使用する CIS インスタンスを作成します。
CIS プラグインをインストールします。
$ ibmcloud plugin install cis
CIS インスタンスを作成します。
$ ibmcloud cis instance-create <instance_name> standard 1
- 1
- CIS がクラスターサブドメインとその DNS レコードを管理するには、少なくとも
Standard
プランが必要です。
既存のドメインを CIS インスタンスに接続します。
CIS のコンテキストインスタンスを設定します。
$ ibmcloud cis instance-set <instance_name> 1
- 1
- インスタンスクラウドのリソース名。
CIS のドメインを追加します。
$ ibmcloud cis domain-add <domain_name> 1
- 1
- 完全修飾ドメイン名。設定する予定に応じて、ドメイン名として root ドメインまたはサブドメインのいずれかの値を使用できます。
注記root ドメインは、
openshiftcorp.com
の形式を使用します。サブドメインは、clusters.openshiftcorp.com
の形式を使用します。
- CIS Web コンソール を開き、Overview ページに移動して、CIS ネームサーバーをメモします。これらのネームサーバーは、次のステップで使用されます。
- ドメインのレジストラーまたは DNS プロバイダーでドメインまたはサブドメインのネームサーバーを設定します。詳細については、IBMCloud の ドキュメント を参照してください。
8.2.3.2. DNS 解決のための IBM Cloud DNS サービスの使用
インストールプログラムは、IBM Cloud DNS サービスを使用してクラスター DNS 解決を設定し、プライベートクラスターの名前ルックアップを提供します。
クラスターの DNS サービスインスタンスを作成し、DNS サービスインスタンスに DNS ゾーンを追加して、DNS 解決を設定します。ゾーンがドメインに対して権限を持っていることを確認してください。これは、root ドメインまたはサブドメインを使用して行うことができます。
IBM Cloud VPC は IPv6 をサポートしていないため、デュアルスタックまたは IPv6 環境は使用できません。
前提条件
- IBM Cloud CLI をインストールしている。
- 既存のドメインとレジストラがあります。詳細については、IBM の ドキュメント を参照してください。
手順
クラスターで使用する DNS サービスインスタンスを作成します。
次のコマンドを実行して、DNS サービスプラグインをインストールします。
$ ibmcloud plugin install cloud-dns-services
次のコマンドを実行して、DNS サービスインスタンスを作成します。
$ ibmcloud dns instance-create <instance-name> standard-dns 1
- 1
- DNS Services がクラスターサブドメインとその DNS レコードを管理するには、少なくとも
Standard
プランが必要です。
DNS サービスインスタンスの DNS ゾーンを作成します。
次のコマンドを実行して、ターゲットのオペレーティング DNS サービスインスタンスを設定します。
$ ibmcloud dns instance-target <instance-name>
次のコマンドを実行して、DNS サービスインスタンスに DNS ゾーンを追加します。
$ ibmcloud dns zone-create <zone-name> 1
- 1
- 完全修飾ゾーン名。設定する予定に応じて、ゾーン名として root ドメインまたはサブドメインのいずれかの値を使用できます。root ドメインは、
openshiftcorp.com
の形式を使用します。サブドメインは、clusters.openshiftcorp.com
の形式を使用します。
-
作成した DNS ゾーンの名前を記録します。インストールプロセスの一環として、クラスターをデプロイする前に、
install-config.yaml
ファイルを更新する必要があります。DNS ゾーンの名前をbaseDomain
パラメーターの値として使用します。
許可されたネットワークを管理したり、"A" DNS リソースレコードを設定したりする必要はありません。必要に応じて、インストールプログラムはこれらのリソースを自動的に設定します。
8.2.4. IBM Cloud VPC IAM ポリシーと API キー
OpenShift Container Platform を IBMCloud アカウントにインストールするには、インストールプログラムに IAM API キーが必要です。これにより、IBM Cloud サービス API にアクセスするための認証と認証が提供されます。必要なポリシーを含む既存の IAM API キーを使用するか、新しいポリシーを作成できます。
IBM Cloud IAM の概要については、IBM Cloud の ドキュメント を参照してください。
8.2.4.1. 必要なアクセスポリシー
必要なアクセスポリシーを IBM Cloud アカウントに割り当てる必要があります。
サービスのタイプ | サービス | アクセスポリシーの範囲 | プラットフォームアクセス | サービスアクセス |
---|---|---|---|---|
アカウント管理 | IAM ID サービス | すべてのリソースまたはリソースのサブセット[1] | エディター、Operator、ビューアー、管理者 | サービス ID 作成者 |
アカウント管理 [2] | アイデンティティーおよびアクセス管理 | すべてのリソース | エディター、Operator、ビューアー、管理者 | |
アカウント管理 | リソースグループのみ | アカウント内のすべてのリソースグループ | Administrator | |
IAM サービス | Cloud Object Storage | すべてのリソースまたはリソースのサブセット[1] | エディター、Operator、ビューアー、管理者 | リーダー、ライター、マネージャー、コンテンツリーダー、オブジェクトリーダー、オブジェクトライター |
IAM サービス | インターネットサービス | すべてのリソースまたはリソースのサブセット[1] | エディター、Operator、ビューアー、管理者 | リーダー、ライター、マネージャー |
IAM サービス | DNS サービス | すべてのリソースまたはリソースのサブセット[1] | エディター、Operator、ビューアー、管理者 | リーダー、ライター、マネージャー |
IAM サービス | VPC インフラストラクチャーサービス | すべてのリソースまたはリソースのサブセット[1] | エディター、Operator、ビューアー、管理者 | リーダー、ライター、マネージャー |
- ポリシーアクセススコープは、アクセスを割り当てる粒度に基づいて設定する必要があります。スコープは、すべてのリソース または 選択した属性に基づくリソースに設定できます。
- オプション: このアクセスポリシーは、インストールプログラムでリソースグループを作成する場合にのみ必要です。リソースグループの詳細については、IBM の ドキュメント を参照してください。
8.2.4.2. アクセスポリシーの割り当て
IBM Cloud VPC IAM では、アクセスポリシーをさまざまなサブジェクトにアタッチできます。
- アクセスグループ (推奨)
- サービス ID
- User
推奨される方法は、アクセスグループ で IAM アクセスポリシーを定義することです。これにより、OpenShift Container Platform に必要なすべてのアクセスを整理し、ユーザーとサービス ID をこのグループにオンボードできます。必要に応じて、ユーザーとサービス ID に直接アクセスを割り当てることもできます。
8.2.4.3. API キーの作成
IBM Cloud アカウントのユーザー API キーまたはサービス ID API キーを作成する必要があります。
前提条件
- 必要なアクセスポリシーを IBM Cloud アカウントに割り当てている。
- IAM アクセスポリシーをアクセスグループまたはその他の適切なリソースにアタッチしている。
手順
IAM アクセスポリシーの定義方法に応じて、API キーを作成します。
たとえば、アクセスポリシーをユーザーに割り当てた場合は、ユーザー API キー を作成する必要があります。アクセスポリシーをサービス ID に割り当てた場合は、サービス ID API キー を作成する必要があります。アクセスポリシーがアクセスグループに割り当てられている場合は、どちらの API キータイプも使用できます。IBM Cloud VPC API キーの詳細は、Understanding API keys を参照してください。
8.2.5. サポート対象の IBM Cloud VPC リージョン
OpenShift Container Platform クラスターを以下のリージョンにデプロイできます。
-
au-syd
(Sydney, Australia) -
br-sao
(Sao Paulo, Brazil) -
ca-tor
(Toronto, Canada) -
eu-de
(Frankfurt, Germany) -
eu-gb
(London, United Kingdom) -
jp-osa
(Osaka, Japan) -
jp-tok
(Tokyo, Japan) -
us-east
(Washington DC, United States) -
us-south
(Dallas, United States)