第11章 AWS STS を使用しない ROSA のデプロイ
11.1. ROSA の AWS の前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS (ROSA) は、Red Hat によるクラスターのお客様の既存 Amazon Web Service (AWS) アカウントへのデプロイを可能にするモデルを提供します。
ROSA をインストールする前に、前提条件を満たしていることを確認する必要があります。この要件は、AWS Security Token Service (STS) には適用されません。STS を使用している場合は、STS 固有の要件 を参照してください。
AWS Security Token Service (STS) は、セキュリティーが強化されているため、ROSA (クラシック) にクラスターをインストールして操作するのに推奨される認証情報モードです。
11.1.1. お客様の要件 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS (ROSA) クラスターは、デプロイする前に複数の前提条件を満たす必要があります。
クラスターを作成するには、ユーザーは予想されるロールまたは STS ユーザーとしてではなく、IAM ユーザーとしてログインする必要があります。
11.1.1.1. アカウント リンクのコピーリンクがクリップボードにコピーされました!
- お客様は、お客様の AWS アカウント内にプロビジョニングされる Red Hat OpenShift Service on AWS をサポートするのに十分な AWS 制限 が設定されていることを確認します。
お客様の AWS アカウントは、該当するサービスコントロールポリシー (SCP) が適用されたお客様の AWS Organizations 組織にある必要があります。
注記お客様のアカウントが AWS Organizations 内にあることや SCP を適用することは要件ではありませんが、Red Hat が制限なしで SCP にリスト表示されるすべてのアクションを実行できるようにする必要があります。
- お客様の AWS アカウントは Red Hat に譲渡できません。
- お客様は、Red Hat の各種アクティビティーに対して AWS の使用に関する制限を課すことができない場合があります。制限を課すことにより、Red Hat のインシデントへの対応が大幅に妨げられます。
お客様は、同じ AWS アカウント内にネイティブ AWS サービスをデプロイすることができます。
注記Red Hat OpenShift Service on AWS やその他の Red Hat がサポートするサービスをホストする VPC とは別の Virtual Private Cloud (VPC) でリソースをデプロイすることが推奨されますが、これは義務ではありません。
11.1.1.2. アクセス要件 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS サービスを適切に管理するには、Red Hat では
AdministratorAccess
ポリシーを管理者ロールに常に適用する必要があります。AWS Security Token Service (STS) を使用している場合、この要件は 適用されません。注記このポリシーは、お客様が指定する AWS アカウントのリソースを変更するためのパーミッションおよび機能を Red Hat に提供します。
- Red Hat には、顧客が提供した AWS アカウントへの AWS コンソールアクセス権が必要です。このアクセスは、Red Hat により保護され、管理されます。
- お客様は AWS アカウントを使用して Red Hat OpenShift Service on AWS クラスター内でパーミッションを昇格させることはできません。
-
Red Hat OpenShift Service on AWS (ROSA) CLI、
rosa
、または OpenShift Cluster Manager コンソールで利用可能なアクションは、お客様の AWS アカウントで直接実行しないでください。
11.1.1.3. サポート要件 リンクのコピーリンクがクリップボードにコピーされました!
- Red Hat では、お客様が少なくとも AWS の ビジネスサポート を用意することを推奨します。
- Red Hat は、AWS サポートを代行してリクエストする権限をお客様から受けます。
- Red Hat は、お客様のアカウントで AWS リソース制限の引き上げをリクエストする権限をお客様から受けます。
- Red Hat は、この要件に関するセクションで指定されていない場合に、すべての Red Hat OpenShift Service on AWS クラスターに関する制約、制限、予想される内容およびデフォルトの内容を管理します。
11.1.1.4. セキュリティー要件 リンクのコピーリンクがクリップボードにコピーされました!
- ボリュームスナップショットは、お客様の AWS アカウントおよびお客様が指定するリージョン内に残ります。
- Red Hat には、許可リストにある IP アドレスから EC2 ホストおよび API サーバーへの ingress アクセスが必要です。
- Red Hat では、Red Hat が管理する中央ロギングスタックにシステムおよび監査ログを転送できるようにするために egress が必要です。
11.1.2. 必要なお客様の手順 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS (ROSA) をデプロイする前に、以下の手順を実行します。
手順
- お客様が AWS Organizations を使用している場合は、組織内の AWS アカウントを使用するか、新規アカウントを作成 する必要があります。
- Red Hat が必要なアクションを実行できるようにするには、Service Control Policy (SCP) を作成するか、AWS アカウントに適用されているものがないことを確認する必要があります。
- SCP を AWS アカウントに 割り当て ます。
- 環境を設定するには、ROSA の手順に従います。
11.1.2.1. Service Control Policy (SCP) の有効なパーミッションの最小セット リンクのコピーリンクがクリップボードにコピーされました!
Service Control Policy (SCP) は、組織内のパーミッションを管理する組織ポリシーの一種です。SCP は、組織内のアカウントを、定義されたアクセス制御ガイドラインの範囲内にとどめるためのものです。これらのポリシーは AWS Organizations で管理され、接続された AWS アカウント内で利用可能なサービスを制御します。SCP の管理はお客様の責任です。
AWS セキュリティートークンサービス (STS) を使用する場合は、最小 SCP 要件が適用されません。STS の詳細は、STS を使用する ROSA の AWS の前提条件 を参照してください。
Service Control Policy (SCP) がこれらの必要なパーミッションを制限していないことを確認します。
Service | アクション | 効果 | |
---|---|---|---|
必須 | Amazon EC2 | すべて | 許可 |
Amazon EC2 Auto Scaling | すべて | 許可 | |
Amazon S3 | すべて | 許可 | |
アイデンティティーおよびアクセス管理 | すべて | 許可 | |
Elastic Load Balancing | すべて | 許可 | |
Elastic Load Balancing V2 | すべて | 許可 | |
Amazon CloudWatch | すべて | 許可 | |
Amazon CloudWatch Events | すべて | 許可 | |
Amazon CloudWatch Logs | すべて | 許可 | |
AWS EC2 Instance Connect | SendSerialConsoleSSHPublicKey | 許可 | |
AWS Support | すべて | 許可 | |
AWS Key Management Service | すべて | 許可 | |
AWS Security Token Service | すべて | 許可 | |
AWS Tiro | CreateQuery GetQueryAnswer GetQueryExplanation | 許可 | |
AWS Marketplace | サブスクライブ サブスクライブ解除 サブスクリプションの表示 | 許可 | |
AWS Resource Tagging | すべて | 許可 | |
AWS Route53 DNS | すべて | 許可 | |
AWS Service Quotas | ListServices GetRequestedServiceQuotaChange GetServiceQuota RequestServiceQuotaIncrease ListServiceQuotas | 許可 | |
任意 | AWS Billing | ViewAccount Viewbilling ViewUsage | 許可 |
AWS Cost and Usage Report | すべて | 許可 | |
AWS Cost Explorer Services | すべて | 許可 |
11.1.3. AWS の Red Hat 管理 IAM リファレンス リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、IAM ポリシー、IAM ユーザー、および IAM ロールなどの以下の Amazon Web Services (AWS) リソースを作成し、管理します。
11.1.3.1. IAM ポリシー リンクのコピーリンクがクリップボードにコピーされました!
IAM ポリシーは、Red Hat OpenShift Service on AWS の機能の変更に伴って変更されることがあります。
AdministratorAccess
ポリシーは管理ロールによって使用されます。このポリシーは、お客様の AWS アカウントで Red Hat OpenShift Service on AWS (ROSA) クラスターを管理するために必要なアクセスを Red Hat に提供します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.1.3.2. IAM ユーザー リンクのコピーリンクがクリップボードにコピーされました!
osdManagedAdmin
ユーザーは、ROSA をお客様の AWS アカウントにインストール後すぐに作成されます。
11.1.4. プロビジョニングされる AWS インフラストラクチャー リンクのコピーリンクがクリップボードにコピーされました!
これは、デプロイされた ROSA (クラシック) クラスターにプロビジョニングされる Amazon Web Services (AWS) コンポーネントの概要です。
11.1.4.1. EC2 インスタンス リンクのコピーリンクがクリップボードにコピーされました!
ROSA (クラシック) のコントロールプレーンおよびデータプレーン機能をデプロイするには、AWS EC2 インスタンスが必要です。
インスタンスタイプは、ワーカーノードの数に応じてコントロールプレーンおよびインフラストラクチャーノードによって異なる場合があります。
少なくとも、次の EC2 インスタンスがデプロイされます。
-
3 つの
m5.2xlarge
コントロールプレーンノード -
2 つの
r5.xlarge
インフラストラクチャーノード -
2 つの
m5.xlarge
ワーカーノード
ワーカーノードに表示されるインスタンスタイプはデフォルト値ですが、ワークロードの要件に応じてワーカーノードのインスタンスタイプをカスタマイズできます。
11.1.4.2. Amazon Elastic Block Store ストレージ リンクのコピーリンクがクリップボードにコピーされました!
Amazon Elastic Block Store (Amazon EBS) ブロックストレージは、ローカルノードストレージと永続ボリュームストレージの両方に使用されます。デフォルトでは、各 EC2 インスタンスに対して次のストレージがプロビジョニングされます。
コントロールプレーンボリューム
- サイズ: 350GB
- タイプ: gp3
- 1 秒あたりの I/O 処理数: 1000
インフラストラクチャーボリューム
- サイズ: 300GB
- タイプ: gp3
- 1 秒あたりの入出力操作: 900
ワーカーボリューム
- デフォルトサイズ: 300 GiB (作成時に調整可能)
- 最小サイズ: 128GB
- タイプ: gp3
- 1 秒あたりの入出力操作: 900
OpenShift Container Platform 4.11 のリリースより前にデプロイされたクラスターは、デフォルトで gp2 タイプのストレージを使用します。
11.1.4.3. Elastic Load Balancing リンクのコピーリンクがクリップボードにコピーされました!
各クラスターでは、アプリケーションルーター用に最大 2 つの Classic Load Balancer と、API 用に最大 2 つの Network Load Balancer を使用できます。
詳細は、AWS に関する ELB ドキュメント を参照してください。
11.1.4.4. S3 ストレージ リンクのコピーリンクがクリップボードにコピーされました!
イメージレジストリーは、AWS S3 ストレージによって支えられています。S3 の使用量とクラスターのパフォーマンスを最適化するために、リソースのプルーニングを定期的に実行します。
通常のサイズがそれぞれ 2TB の 2 つのバケットが必要です。
11.1.4.5. VPC リンクのコピーリンクがクリップボードにコピーされました!
次の要件に従って VPC を設定します。
サブネット: すべてのクラスターに、アベイラビリティーゾーンごとに少なくとも 1 つのプライベートサブネットが必要です。たとえば、単一ゾーンのクラスターには 1 つのプライベートサブネットが必要であり、3 つのアベイラビリティーゾーンを持つクラスターには 3 つのプライベートサブネットが必要です。
クラスターがパブリックインターネットを含むクラスター外部のネットワークに直接アクセスする必要がある場合は、少なくとも 1 つのパブリックサブネットが必要です。
Red Hat では、クラスターごとに一意のサブネットを使用することを強く推奨しています。複数のクラスター間でサブネットを共有することは推奨しません。
注記パブリックサブネット は、インターネットゲートウェイを介してインターネットに直接接続します。
プライベートサブネット は、ネットワークアドレス変換 (NAT) ゲートウェイを介してインターネットに接続します。
- ルートテーブル: プライベートサブネットごとに 1 つのルートテーブルと、クラスターごとに 1 つの追加テーブル。
- インターネットゲートウェイ: クラスターごとに 1 つのインターネットゲートウェイ。
- NAT ゲートウェイ: パブリックサブネットごとに 1 つの NAT ゲートウェイ。
図11.1 サンプル VPC アーキテクチャー
11.1.4.6. セキュリティーグループ リンクのコピーリンクがクリップボードにコピーされました!
AWS セキュリティーグループは、プロトコルおよびポートアクセスレベルでセキュリティーを提供します。これらは EC2 インスタンスおよび Elastic Load Balancing (ELB) ロードバランサーに関連付けられます。各セキュリティーグループには、1 つ以上の EC2 インスタンスの送受信トラフィックをフィルタリングする一連のルールが含まれます。
クラスターのインストールと操作に必要なポートがネットワーク上で開いており、ホスト間のアクセスを許可するように設定されていることを確認します。デフォルトのセキュリティーグループの要件は デフォルトのセキュリティーグループに必要なポート に記載されています。
グループ | 型 | IP プロトコル | ポート範囲 |
---|---|---|---|
MasterSecurityGroup |
|
|
|
|
| ||
|
| ||
|
| ||
WorkerSecurityGroup |
|
|
|
|
| ||
BootstrapSecurityGroup |
|
|
|
|
|
11.1.4.6.1. 追加のカスタムセキュリティーグループ リンクのコピーリンクがクリップボードにコピーされました!
既存の管理対象外の VPC を使用してクラスターを作成する場合、クラスターの作成中に追加のカスタムセキュリティーグループを追加できます。カスタムセキュリティーグループには次の制限があります。
- クラスターを作成する前に、AWS でカスタムセキュリティーグループを作成する必要があります。詳細は、Amazon EC2 security groups for Linux instances を参照してください。
- カスタムセキュリティーグループを、クラスターのインストール先の VPC に関連付ける必要があります。カスタムセキュリティーグループを別の VPC に関連付けることはできません。
- カスタムセキュリティーグループを追加する場合は、VPC の追加クォータをリクエストする必要がある場合があります。ROSA (クラシック) の AWS クォータ要件の詳細は、環境の準備 の 必要な AWS サービスクォータ を参照してください。AWS クォータ引き上げのリクエストは、Requesting a quota increase を参照してください。
11.1.5. ネットワークの前提条件 リンクのコピーリンクがクリップボードにコピーされました!
11.1.5.1. 最小帯域幅 リンクのコピーリンクがクリップボードにコピーされました!
ROSA (クラシック) では、クラスターのデプロイ時に、クラスターのインフラストラクチャーと、デプロイ用のアーティファクトおよびリソースを提供するパブリックインターネットまたはプライベートネットワーク上の拠点との間で、最低 120 Mbps の帯域幅が必要です。ネットワーク接続が 120 Mbps より遅い場合 (たとえば、プロキシー経由で接続している場合)、クラスターのインストールプロセスがタイムアウトし、デプロイメントが失敗します。
クラスターのデプロイ後のネットワーク要件はワークロードに基づきます。ただし、最小帯域幅 120 Mbps は、クラスターと Operator を適切なタイミングで確実にアップグレードするために役立ちます。
11.1.5.2. STS を使用する ROSA (クラシック) クラスターのファイアウォールの前提条件 リンクのコピーリンクがクリップボードにコピーされました!
ファイアウォールを使用して Egress トラフィックを制御できるのは、PrivateLink を使用してデプロイされた ROSA クラスターだけです。
前提条件
- AWS Virtual Private Cloud (VPC) に Amazon S3 ゲートウェイエンドポイントを設定した。このエンドポイントは、クラスターから Amazon S3 サービスへのリクエストを完了するために必要です。
手順
パッケージとツールのインストールおよびダウンロードに使用される以下の URL を許可リストに指定します。
Expand ドメイン ポート 機能 registry.redhat.io
443
コアコンテナーイメージを指定します。
quay.io
443
コアコンテナーイメージを指定します。
cdn01.quay.io
443
コアコンテナーイメージを指定します。
cdn02.quay.io
443
コアコンテナーイメージを指定します。
cdn03.quay.io
443
コアコンテナーイメージを指定します。
cdn04.quay.io
443
コアコンテナーイメージを指定します。
cdn05.quay.io
443
コアコンテナーイメージを指定します。
cdn06.quay.io
443
コアコンテナーイメージを指定します。
sso.redhat.com
443
必須。
https://console.redhat.com/openshift
サイトでは、sso.redhat.com
からの認証を使用してプルシークレットをダウンロードし、Red Hat SaaS ソリューションを使用してサブスクリプション、クラスターインベントリー、チャージバックレポートなどのモニタリングを行います。quay-registry.s3.amazonaws.com
443
コアコンテナーイメージを指定します。
quayio-production-s3.s3.amazonaws.com
443
コアコンテナーイメージを指定します。
registry.access.redhat.com
443
Red Hat Ecosytem Catalog に保存されているすべてのコンテナーイメージをホストします。さらに、レジストリーは、開発者が OpenShift および Kubernetes 上で構築するのに役立つ
odo
CLI ツールへのアクセスを提供します。access.redhat.com
443
必須。コンテナークライアントが
registry.access.redhat.com
からイメージを取得するときにイメージを検証するために必要な署名ストアをホストします。registry.connect.redhat.com
443
すべてのサードパーティーのイメージと認定 Operator に必要です。
console.redhat.com
443
必須。クラスターと OpenShift Cluster Manager 間の対話を可能にし、アップグレードのスケジューリングなどの機能を有効にします。
sso.redhat.com
443
https://console.redhat.com/openshift
サイトは、sso.redhat.com
からの認証を使用します。pull.q1w2.quay.rhcloud.com
443
quay.io が利用できない場合のフォールバックとして、コアコンテナーイメージを提供します。
catalog.redhat.com
443
registry.access.redhat.com
およびhttps://registry.redhat.io
サイトはcatalog.redhat.com
にリダイレクトされます。oidc.op1.openshiftapps.com
443
マネージド OIDC 設定を使用した STS 実装で、ROSA が使用します。
次のテレメトリー URL を許可リストに追加します。
Expand ドメイン ポート 機能 cert-api.access.redhat.com
443
テレメトリーに必要です。
api.access.redhat.com
443
テレメトリーに必要です。
infogw.api.openshift.com
443
テレメトリーに必要です。
console.redhat.com
443
テレメトリーと Red Hat Insights に必要です。
observatorium-mst.api.openshift.com
443
マネージド OpenShift 固有のテレメトリーに使用されます。
observatorium.api.openshift.com
443
マネージド OpenShift 固有のテレメトリーに使用されます。
マネージドクラスターでは、テレメトリーを有効にする必要があります。これは、Red Hat が問題に迅速に対応し、お客様をより適切にサポートし、製品のアップグレードがクラスターに与える影響をよりよく理解できるようにするためです。Red Hat によるリモートヘルスモニタリングデータの使用方法の詳細は 関連情報 セクションの リモートヘルスモニタリングについて を参照してください。
次の Amazon Web Services (AWS) API の URL を許可リストに追加します。
Expand ドメイン ポート 機能 .amazonaws.com
443
AWS サービスおよびリソースへのアクセスに必要です。
または、Amazon Web Services (AWS) API にワイルドカードを使用しない場合は、次の URL を許可リストに追加する必要があります。
Expand ドメイン ポート 機能 ec2.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。
events.<aws_region>.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。
iam.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。
route53.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。
sts.amazonaws.com
443
AWS STS のグローバルエンドポイントを使用するように設定されたクラスターの場合は、AWS 環境にクラスターをインストールおよび管理するために使用されます。
sts.<aws_region>.amazonaws.com
443
AWS STS の地域化されたエンドポイントを使用するように設定されたクラスターの場合は、AWS 環境にクラスターをインストールおよび管理するために使用されます。詳細は、AWS STS の地域化されたエンドポイント を参照してください。
tagging.us-east-1.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。このエンドポイントは、クラスターがデプロイメントされているリージョンに関係なく、常に us-east-1 です。
ec2.<aws_region>.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。
elasticloadbalancing.<aws_region>.amazonaws.com
443
AWS 環境でのクラスターのインストールおよび管理に使用されます。
tagging.<aws_region>.amazonaws.com
443
タグの形式で AWS リソースに関するメタデータを割り当てることができます。
次の OpenShift URL を許可リストに追加します。
Expand ドメイン ポート 機能 mirror.openshift.com
443
ミラーリングされたインストールのコンテンツおよびイメージへのアクセスに使用されます。このサイトはリリースイメージ署名のソースでもあります。
api.openshift.com
443
クラスターに更新が利用可能かどうかを確認するのに使用されます。
次の Site Reliability Engineering (SRE) および管理 URL を許可リストに追加します。
Expand ドメイン ポート 機能 api.pagerduty.com
443
このアラートサービスは、クラスター内の alertmanager が使用します。これにより、Red Hat SRE に対してイベントの SRE 通知に関するアラートが送信されます。
events.pagerduty.com
443
このアラートサービスは、クラスター内の alertmanager が使用します。これにより、Red Hat SRE に対してイベントの SRE 通知に関するアラートが送信されます。
api.deadmanssnitch.com
443
Red Hat OpenShift Service on AWS がクラスターが使用可能で実行中であるかどうかを示す定期的な ping を送信するために使用するアラートサービス。
nosnch.in
443
Red Hat OpenShift Service on AWS がクラスターが使用可能で実行中であるかどうかを示す定期的な ping を送信するために使用するアラートサービス。
http-inputs-osdsecuritylogs.splunkcloud.com
443
必須。
splunk-forwarder-operator
によって使用され、ログベースのアラートに Red Hat SRE が使用するロギング転送エンドポイントとして使用されます。sftp.access.redhat.com
(推奨)22
must-gather-operator
が、クラスターに関する問題のトラブルシューティングに役立つ診断ログをアップロードするのに使用される SFTP サーバー。