第2章 STS を使用する ROSA をデプロイするための詳細な要件
Red Hat OpenShift Service on AWS (ROSA) は、Red Hat によるクラスターのお客様の既存 Amazon Web Service (AWS) アカウントへのデプロイを可能にするモデルを提供します。
AWS Security Token Service (STS) は、セキュリティーが強化されているため、Red Hat OpenShift Service on AWS (ROSA) にクラスターをインストールして操作するのに推奨される認証情報モードです。
STS で ROSA をインストールする前に、以下の AWS 前提条件を満たしていることを確認してください。
AWS STS を使用する ROSA クラスターを作成すると、関連付けられた AWS OpenID Connect(OIDC) アイデンティティープロバイダーも作成されます。この OIDC プロバイダー設定は、us-east-1
AWS リージョンにある公開鍵に依存します。AWS SCP をお持ちのお客様は、これらのクラスターが別のリージョンにデプロイされている場合でも us-east-1
AWS リージョンを使用できるようにする必要があります。
2.1. デプロイメントに STS を使用する場合のカスタマー要件
AWS Security Token Service (STS) を使用する Red Hat OpenShift Service on AWS (ROSA) クラスターをデプロイする前に、以下の前提条件を満たす必要があります。
2.1.1. Account
AWS アカウント内にプロビジョニングされる Red Hat OpenShift Service on AWS をサポートするのに十分な AWS 制限が設定されていることを確認する必要があります。CLI で
rosa verify quota
コマンドを実行すると、クラスターを実行するために必要なクォータがあることが検証されます。注記クォータの検証は AWS クォータを確認しますが、消費を AWS クォータと比較しません。詳細は、関連情報の「制限とスケーラビリティリンク」を参照してください。
- SCP ポリシーを適用し、強制される場合、これらのポリシーは、クラスターが必要とするロールおよびポリシーよりも制限的であってはなりません。
- AWS アカウントを Red Hat に譲渡できないようにする必要があります。
- Red Hat のアクティビティーに対する定義されたロールおよびポリシー以外に、追加の AWS 使用制限を課すことはできません。制限を課すことにより、Red Hat のインシデントへの対応が大幅に妨げられます。
- ネイティブ AWS サービスを同じ AWS アカウントにデプロイできます。
Elastic Load Balancing (ELB) を設定するために必要なため、アカウントにはサービスにリンクされたロールが設定されている必要があります。以前に AWS アカウントでロードバランサーを作成していない場合は、ELB のサービスにリンクされたロールを作成する方法について、関連情報の「Elastic Load Balancing (ELB) サービスにリンクされたロールの作成」を参照してください。
注記Red Hat OpenShift Service on AWS およびその他の Red Hat がサポートするサービスをホストする VPC とは別に、仮想プライベートクラウド (VPC) にリソースをデプロイすることを推奨しますが、必須ではありません。
2.1.2. アクセス要件
- Red Hat には、顧客が提供した AWS アカウントへの AWS コンソールアクセス権が必要です。Red Hat は、このアクセスを保護および管理します。
- Red Hat OpenShift Service on AWS (ROSA) クラスター内で権限を昇格するために AWS アカウントを使用しないでください。
-
ROSA CLI (
rosa
) または OpenShift Cluster Manager コンソールで利用可能なアクションは、AWS アカウントで直接実行しないでください。 - ROSA クラスターをデプロイするために、事前に設定されたドメインは必要ありません。カスタムドメインを使用する場合は、追加のリソースを参照してください。
関連情報
- アプリケーションのカスタムドメインの設定 を参照してください。
2.1.3. サポート要件
- Red Hat では、お客様が少なくとも AWS の ビジネスサポート を用意することを推奨します。
- Red Hat は、お客様の代わりに AWS サポートをリクエストする許可をお客様から受けている場合があります。
- Red Hat は、お客様のアカウントで AWS リソース制限の引き上げをリクエストする許可をお客様から受けている場合があります。
- Red Hat は、この要件に関するセクションで指定されていない場合に、すべての Red Hat OpenShift Service on AWS クラスターに関する制約、制限、予想される内容およびデフォルトの内容を管理します。
2.1.4. セキュリティー要件
- Red Hat には、許可リストにある IP アドレスから EC2 ホストおよび API サーバーへの ingress アクセスが必要です。
- Red Hat では、文書化されたドメインで egress を許可する必要があります。指定されたドメインは、「AWS ファイアウォールの前提条件」セクションを参照してください。
関連情報
2.1.5. OpenShift Cluster Manager を使用するための要件
以下のセクションでは、OpenShift Cluster Manager の要件を説明します。CLI ツールのみを使用する場合は、この要件を無視できます。
OpenShift Cluster Manager を使用するには、AWS アカウントをリンクする必要があります。このリンクの概念は、アカウントの関連付けとしても知られています。
2.1.5.1. AWS アカウントの関連付け
Red Hat OpenShift Service on AWS (ROSA) クラスタープロビジョニングタスクでは、Amazon リソースネーム (ARN) を使用して、IAM ロール ocm-role
および user-role
を AWS アカウントにリンクする必要があります。
ocm-role
ARN は Red Hat 組織にラベルとして保存され、user-role
ARN は Red Hat ユーザーアカウント内にラベルとして保存されます。Red Hat は、これらの ARN ラベルを使用して、ユーザーが有効なアカウント所有者であり、AWS アカウントで必要なタスクを実行するための正しいアクセス許可が利用可能であることを確認します。
2.1.5.2. AWS アカウントのリンク
Red Hat OpenShift Service on AWS (ROSA) CLI、rosa
を使用して、AWS アカウントを既存の IAM ロールにリンクできます。
前提条件
- AWS アカウントがある。
- OpenShift Cluster Manager を使用してクラスターを作成しています。
- AWS アカウント全体のロールをインストールするために必要な権限がある。詳細は、このセクションの関連情報を参照してください。
-
インストールホストに最新の AWS (
aws
) および ROSA (rosa
) CLI をインストールして設定している。 ocm-role
およびuser-role
IAM ロールを作成しましたが、まだ AWS アカウントにリンクしていません。次のコマンドを実行して、IAM ロールがすでにリンクされているかどうかを確認できます。$ rosa list ocm-role
$ rosa list user-role
両方のロールの
Linked
列にYes
が表示されている場合、ロールはすでに AWS アカウントにリンクされています。
手順
CLI から、Amazon Resource Name (ARN) を使用して、
ocm-role
リソースを Red Hat 組織にリンクします。注記rosa link
コマンドを実行するには、Red Hat Organization Administrator (組織管理者権限) が必要です。ocm-role
リソースを AWS アカウントにリンクすると、組織内のすべてのユーザーに表示されます。$ rosa link ocm-role --role-arn <arn>
出力例
I: Linking OCM role ? Link the '<AWS ACCOUNT ID>` role with organization '<ORG ID>'? Yes I: Successfully linked role-arn '<AWS ACCOUNT ID>' with organization account '<ORG ID>'
CLI から、Amazon Resource Name (ARN) を使用して、
user-role
リソースを Red Hat ユーザーアカウントにリンクします。$ rosa link user-role --role-arn <arn>
出力例
I: Linking User role ? Link the 'arn:aws:iam::<ARN>:role/ManagedOpenShift-User-Role-125' role with organization '<AWS ID>'? Yes I: Successfully linked role-arn 'arn:aws:iam::<ARN>:role/ManagedOpenShift-User-Role-125' with organization account '<AWS ID>'
関連情報
- クラスターの作成に必要な IAM ロールのリストについては、アカウント全体の IAM ロールとポリシー参照 を参照してください。
2.1.5.3. 複数の AWS アカウントを Red Hat 組織に関連付ける
複数の AWS アカウントを Red Hat 組織に関連付けることができます。複数のアカウントを関連付けると、Red Hat 組織の関連付けられた AWS アカウントのいずれかに Red Hat OpenShift Service on AWS (ROSA) クラスターを作成できます。
この機能を使用すると、リージョンにバインドされた環境として複数の AWS プロファイルを使用することにより、さまざまな AWS リージョンにクラスターを作成できます。
前提条件
- AWS アカウントがある。
- OpenShift Cluster Manager を使用してクラスターを作成しています。
- AWS アカウント全体のロールをインストールするために必要な権限がある。
-
インストールホストに最新の AWS (
aws
) および ROSA (rosa
) CLI をインストールして設定している。 -
ocm-role
およびuser-role
IAM ロールを作成している。
手順
追加の AWS アカウントを関連付けるには、最初にローカル AWS 設定でプロファイルを作成します。次に、追加の AWS アカウントに ocm-role
、user、および account のロールを作成して、アカウントを Red Hat 組織に関連付けます。
追加のリージョンでロールを作成するには、rosa create
コマンドの実行時に --profile <aws-profile>
パラメーターを指定し、<aws_profile>
を追加のアカウントプロファイル名に置き換えます。
OpenShift Cluster Manager ロールを作成するときに AWS アカウントプロファイルを指定するには、以下を実行します。
$ rosa create --profile <aws_profile> ocm-role
ユーザーロールを作成するときに AWS アカウントプロファイルを指定するには、以下を実行します。
$ rosa create --profile <aws_profile> user-role
アカウントロールを作成するときに AWS アカウントプロファイルを指定するには、以下を実行します。
$ rosa create --profile <aws_profile> account-roles
プロファイルを指定しない場合は、デフォルトの AWS プロファイルが使用されます。