2.7. カスタマイズを使用したクラスターの作成
ご使用の環境のニーズに適した設定で、AWS Security Token Service (STS) クラスターを備えた Red Hat OpenShift Service on AWS (ROSA) をデプロイします。Red Hat OpenShift Cluster Manager または ROSA CLI (rosa
) を使用して、カスタマイズを使用してクラスターをデプロイできます。
2.7.1. OpenShift Cluster Manager を使用してカスタマイズしたクラスターを作成する リンクのコピーリンクがクリップボードにコピーされました!
AWS Security Token Service (STS) を使用する Red Hat OpenShift Service on AWS (ROSA) クラスターを作成する場合、Red Hat OpenShift Cluster Manager を使用して、インストールをインタラクティブにカスタマイズできます。
STS では、パブリックおよび AWS PrivateLink クラスターのみがサポートされます。通常のプライベートクラスター (PrivateLink 以外) は STS では使用できません。
前提条件
- STS を使用する ROSA の AWS の前提条件を完了している。
- 利用可能な AWS サービスクォータがある。
- AWS コンソールで ROSA サービスを有効にした。
-
インストールホストに最新の ROSA CLI (
rosa
) をインストールして設定した。現在インストールされている ROSA CLI のバージョンを確認するには、rosa version
を実行します。新しいバージョンが利用可能な場合、CLI はこのアップグレードをダウンロードするためのリンクを提供します。 - AWS Elastic Load Balancing (ELB) サービスロールが AWS アカウントに存在することを確認した。
- クラスター全体のプロキシーを設定する場合は、クラスターがインストールされている VPC からプロキシーにアクセスできることを確認している。プロキシーは VPC のプライベートサブネットからもアクセスできる必要があります。
手順
- OpenShift Cluster Manager に移動し、Create cluster を選択します。
- Create an OpenShift cluster ページの Red Hat OpenShift Service on AWS (ROSA) 行で Create cluster を選択します。
AWS アカウントが自動的に検出されると、アカウント ID は 関連付けられた AWS アカウント ドロップダウンメニューに表示されます。AWS アカウントが自動的に検出されない場合は、Select an account
Associate AWS account をクリックして、次の手順に従います。 Authenticate ページで、
rosa login
コマンドの横にあるコピーボタンをクリックします。このコマンドには、OpenShift Cluster Manager API ログイントークンが含まれます。注記OpenShift Cluster Manager の OpenShift Cluster Manager API Token ページで API トークンをロードすることもできます。
CLI でコピーしたコマンドを実行して、ROSA アカウントにログインします。
rosa login --token=<api_login_token>
$ rosa login --token=<api_login_token>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<api_login_token>
を、コピーされたコマンドで提供されるトークンに置き換えます。
出力例
I: Logged in as '<username>' on 'https://api.openshift.com'
I: Logged in as '<username>' on 'https://api.openshift.com'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - OpenShift Cluster Manager の Authenticate ページで、Next をクリックします。
OCM role ページで、Basic OCM role または Admin OCM role コマンドの横にあるコピーボタンをクリックします。
基本ロールにより、OpenShift Cluster Manager は ROSA に必要な AWS IAM ロールとポリシーを検出できます。管理者ロールは、ロールとポリシーの検出も可能にします。さらに、管理者ロールを使用すると、OpenShift Cluster Manager を使用して、クラスター固有の Operator ロールと OpenID Connect (OIDC) プロバイダーを自動的にデプロイできます。
コピーしたコマンドを CLI で実行し、プロンプトに従って OpenShift Cluster Manager IAM ロールを作成します。次の例では、デフォルトのオプションを使用して基本的な OpenShift Cluster Manager IAM ロールを作成します。
rosa create ocm-role
$ rosa create ocm-role
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- OCM IAM ロール名に含める接頭辞を指定します。デフォルトは
ManagedOpenShift
です。Red Hat 組織の AWS アカウントごとに OCM ロールを 1 つだけ作成できます。 - 2
- 管理者 OpenShift Cluster Manager IAM ロールを有効にします。これは、
--admin
引数を指定するのと同じです。自動 モードを使用して、OpenShift Cluster Manager を使用してクラスター固有の Operator ロールと OIDC プロバイダーを自動的にプロビジョニングする場合は、管理者ロールが必要です。 - 3
- オプション: ロールのパーミッション境界 Amazon Resource Name (ARN) を指定します。詳細は、AWS ドキュメントの IAM エンティティーのアクセス許可の境界 を参照してください。
- 4
- OCM ロールのカスタム ARN パスを指定します。パスには英数字のみを使用し、
/
で開始および終了する必要があります (例:/test/path/dev/
)。詳細は、IAM ロールとポリシーの ARN パスのカスタマイズ を参照してください。 - 5
- ロール作成モードを選択します。
auto
モードを使用して、OpenShift Cluster Manager IAM ロールを自動的に作成し、それを Red Hat 組織アカウントにリンクすることができます。manual
モードでは、ROSA CLI はロールの作成とリンクに必要なaws
コマンドを生成します。manual
モードでは、対応するポリシー JSON ファイルも現在のディレクトリーに保存されます。manual
モードでは、aws
コマンドを手動で実行する前に詳細を確認することができます。 - 6
- OpenShift Cluster Manager IAM ロールを Red Hat 組織アカウントにリンクします。
上記のコマンドで OpenShift Cluster Manager IAM ロールを Red Hat 組織アカウントにリンクしないことを選択した場合は、OpenShift Cluster Manager OCM role ページから
rosa link
コマンドをコピーして実行します。rosa link ocm-role <arn>
$ rosa link ocm-role <arn>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<arn>
を、前のコマンドの出力に含まれている OpenShift Cluster Manager IAM の ARN に置き換えます。
- OpenShift Cluster Manager OCM role ページで Next を選択します。
User role ページで、User role コマンドのコピーボタンをクリックし、CLI でコマンドを実行します。OpenShift Cluster Manager でクラスターおよび必要なリソースをインストールすると、Red Hat はユーザーロールを使用して AWS Identity を確認します。
プロンプトに従って、ユーザーロールを作成します。
rosa create user-role
$ rosa create user-role
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ユーザーロール名に含める接頭辞を指定します。デフォルトは
ManagedOpenShift
です。 - 2
- オプション: ロールのパーミッション境界 Amazon Resource Name (ARN) を指定します。詳細は、AWS ドキュメントの IAM エンティティーのアクセス許可の境界 を参照してください。
- 3
- ユーザーロールのカスタム ARN パスを指定します。パスには英数字のみを使用し、
/
で開始および終了する必要があります (例:/test/path/dev/
)。詳細は、IAM ロールとポリシーの ARN パスのカスタマイズ を参照してください。 - 4
- ロール作成モードを選択します。
auto
モードを使用して、ユーザーロールを自動的に作成し、OpenShift Cluster Manager ユーザーアカウントにリンクすることができます。manual
モードでは、ROSA CLI はロールの作成とリンクに必要なaws
コマンドを生成します。manual
モードでは、対応するポリシー JSON ファイルも現在のディレクトリーに保存されます。manual
モードでは、aws
コマンドを手動で実行する前に詳細を確認することができます。 - 5
- ユーザーロールを OpenShift Cluster Manager ユーザーアカウントにリンクします。
上記のコマンドでユーザーロールを OpenShift Cluster Manager ユーザーアカウントにリンクしないことを選択した場合は、OpenShift Cluster Manager User role ページから
rosa link
コマンドをコピーして実行します。rosa link user-role <arn>
$ rosa link user-role <arn>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<arn>
を、前のコマンドの出力に含まれているユーザーロールの ARN に置き換えます。
- OpenShift Cluster Manager User role ページで、Ok をクリックします。
- Accounts and roles ページの Associated AWS accounts ドロップダウンメニューに AWS アカウント ID が表示されていることを確認します。
必要なアカウントロールが存在しない場合は、Some account roles ARNs were not detected という通知が表示されます。
rosa create account-roles
コマンドの横にあるコピーバッファーをクリックし、CLI でコマンドを実行することにより、Operator ポリシーを含む AWS アカウント全体のロールおよびポリシーを作成できます。rosa create account-roles
$ rosa create account-roles
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- OpenShift Cluster Manager IAM ロール名に含める接頭辞を指定します。デフォルトは
ManagedOpenShift
です。重要アカウントロールにカスタム ARN パスを使用する場合でも、AWS アカウント全体で一意のアカウント全体のロール接頭辞を指定する必要があります。
- 2
- オプション: ロールのパーミッション境界 Amazon Resource Name (ARN) を指定します。詳細は、AWS ドキュメントの IAM エンティティーのアクセス許可の境界 を参照してください。
- 3
- アカウント全体のロールのカスタム ARN パスを指定します。パスには英数字のみを使用し、
/
で開始および終了する必要があります (例:/test/path/dev/
)。詳細は、IAM ロールとポリシーの ARN パスのカスタマイズ を参照してください。 - 4
- ロール作成モードを選択します。
auto
モードを使用して、アカウント全体のロールとポリシーを自動的に作成できます。manual
モードでは、ROSA CLI はロールとポリシーの作成に必要なaws
コマンドを生成します。manual
モードでは、対応するポリシー JSON ファイルも現在のディレクトリーに保存されます。manual
モードでは、aws
コマンドを手動で実行する前に詳細を確認することができます。 - 5 6 7 8
- アカウント全体のインストーラー、コントロールプレーン、ワーカー、サポートロール、および対応する IAM ポリシーを作成します。詳細は、アカウント全体の IAM ロールとポリシーのリファレンス を参照してください。注記
このステップでは、ROSA CLI は、クラスター固有の Operator ポリシーによって使用されるアカウント全体の Operator IAM ポリシーも自動的に作成し、ROSA クラスター Operator がコア OpenShift 機能を実行できるようにします。詳細は、アカウント全体の IAM ロールとポリシーのリファレンス を参照してください。
Accounts and roles ページで、Refresh ARNs をクリックし、インストーラー、サポート、ワーカー、およびコントロールプレーンのアカウントのロール ARN が表示されていることを確認します。
クラスターバージョンの AWS アカウントに複数のアカウントロールセットがある場合は、インストーラーロール ARN のドロップダウンリストが表示されます。クラスターで使用するインストーラーロールの ARN を選択します。クラスターは、選択したインストーラーロールに関連するアカウント全体のロールとポリシーを使用します。
Next をクリックします。
注記Accounts and roles ページが更新された場合は、すべての前提条件を読んで完了したことを確認するために、チェックボックスの再選択が求められる場合があります。
Cluster details ページで、クラスターの名前を指定し、クラスターの詳細を指定します。
- Cluster name を追加します。
オプション: クラスターを作成すると、
openshiftapps.com
にプロビジョニングされたクラスターのサブドメインとしてドメイン接頭辞が生成されます。クラスター名が 15 文字以下の場合は、その名前がドメイン接頭辞に使用されます。クラスター名が 15 文字を超えると、ドメイン接頭辞が 15 文字の文字列にランダムに生成されます。サブドメインをカスタマイズするには、Create custom domain prefix チェックボックスをオンにし、Domain prefix フィールドにドメイン接頭辞名を入力します。ドメイン接頭辞は 15 文字を超えてはならず、組織内で一意である必要があり、クラスターの作成後に変更できません。
- Version ドロップダウンメニューからクラスターバージョンを選択します。
- Region ドロップダウンメニューからクラウドプロバイダーのリージョンを選択します。
- Single zone または Multi-zone 設定を選択します。
- Enable user workload monitoring を選択したままにして、Red Hat Site Reliability Engineer (SRE) プラットフォームメトリックから切り離して独自のプロジェクトをモニターします。このオプションはデフォルトで有効になっています。
オプション: Advanced Encryption を展開して、暗号化設定を変更します。
デフォルトの AWS KMS キーを使用するには、デフォルト設定の Use default KMS Keys をそのまま使用します。または、カスタム KMS キーを使用するには、Use Custom KMS keys を選択します。
- Use Custom KMS keys を選択した場合は、Key ARN フィールドに AWS Key Management Service (KMS) カスタムキーの Amazon Resource Name (ARN) ARN を入力します。このキーは、クラスター内のすべてのコントロールプレーン、インフラストラクチャー、ワーカーノードのルートボリューム、および永続ボリュームを暗号化するために使用されます。
オプション: 顧客管理の KMS キーを作成するには、対称暗号化 KMS キーの作成 の手順に従います。
重要クラスターを正常に作成するには、アカウントのロールに加えて EBS Operator のロールが必要です。
このロールは、ROSA が Container Storage Interface (CSI) を通じてバックエンドストレージを管理するために必要な IAM ポリシーである
ManagedOpenShift-openshift-cluster-csi-drivers-ebs-cloud-credentials
ポリシーに割り当てる必要があります。クラスター Operator に必要なポリシーと権限の詳細は、アカウント全体のロールを作成する方法 を参照してください。
EBS Operator のロールの例
"arn:aws:iam::<aws_account_id>:role/<cluster_name>-xxxx-openshift-cluster-csi-drivers-ebs-cloud-credent"
Operator のロールを作成したら、AWS コンソールの Key Management Service (KMS) ページ で キーポリシー を編集して、ロールを追加する必要があります。
オプション: クラスターで FIPS 検証を必須にする場合は、Enable FIPS cryptography を選択します。
注記Enable FIPS cryptography を選択すると、Enable additional etcd encryption がデフォルトで有効になり、無効にできなくなります。Enable FIPS cryptography を選択しなくても、Enable additional etcd encryption は選択できます。
オプション: etcd キー値の暗号化が必要な場合は、Enable additional etcd encryption を選択します。このオプションを使用すると、etcd キーの値は暗号化されますが、キーは暗号化されません。このオプションは、デフォルトで Red Hat OpenShift Service on AWS クラスター内の etcd ボリュームを暗号化するコントロールプレーンストレージ暗号化に追加されます。
注記etcd のキー値の etcd 暗号化を有効にすると、約 20% のパフォーマンスのオーバーヘッドが発生します。このオーバーヘッドは、etcd ボリュームを暗号化するデフォルトのコントロールプレーンのストレージ暗号化に加えて、この 2 つ目の暗号化レイヤーの導入により生じます。お客様のユースケースで特に etcd 暗号化が必要な場合にのみ、暗号化を有効にすることを検討してください。
- Next をクリックします。
Default machine pool ページで、Compute node instance type を選択します。
注記クラスターの作成後、クラスター内のコンピュートノードの数を変更できますが、デフォルトのマシンプールのコンピュートノードインスタンスタイプは変更できません。使用可能なノードの数とタイプは、単一または複数のアベイラビリティーゾーンを使用するかどうかによって異なります。また、AWS アカウントと選択したリージョンで何が有効で利用可能かによっても異なります。
オプション: デフォルトのマシンプールの自動スケーリングを設定します。
- Enable autoscaling を選択し、デプロイメントのニーズを満たすためにデフォルトのマシンプール内のマシン数を自動的にスケーリングします。
自動スケーリングの最小および最大のノード数制限を設定します。クラスターオートスケーラーが、指定された制限を超えてデフォルトのマシンプールのノード数を増減することはありません。
- 1 つのアベイラビリティーゾーンを使用してクラスターをデプロイした場合は、Minimum node count と Maximum node count を設定します。これは、アベイラビリティーゾーンのコンピュートノードの最小および最大の制限を定義します。
- 複数のアベイラビリティーゾーンを使用してクラスターをデプロイした場合は、Minimum nodes per zone および Maximum nodes per zone を設定します。これは、ゾーンごとの最小および最大のコンピュート制限を定義します。
注記または、デフォルトのマシンプールの作成後にマシンプールの自動スケーリングを設定できます。
自動スケーリングを有効にしなかった場合は、デフォルトのマシンプールのコンピュートノード数を選択します。
- 単一アベイラビリティーゾーンを使用してクラスターをデプロイした場合は、ドロップダウンメニューから コンピュートノード数 を選択します。これは、ゾーンのマシンプールにプロビジョニングするコンピュートノードの数を定義します。
- 複数のアベイラビリティーゾーンを使用してクラスターをデプロイした場合は、ドロップダウンメニューから コンピュートノードの数 (ゾーンごと) を選択します。これは、ゾーンごとにマシンプールにプロビジョニングするコンピュートノードの数を定義します。
オプション: IMDSv2 の使用を強制するには、EC2 Instance Metadata Service (IMDS) 設定 (
optional
(デフォルト) またはrequired
) を選択します。IMDS の詳細は、AWS ドキュメントの Instance metadata and user data を参照してください。重要クラスターの作成後に Instance Metadata Service の設定を変更することはできません。
- オプション: Edit node labels を展開してラベルをノードに追加します。Add label をクリックしてさらにノードラベルを追加し、Next を選択します。
Network configuration ページの Cluster privacy セクションで、Public または Private を選択して、クラスターのパブリックまたはプライベート API エンドポイントとアプリケーションルートを使用します。
重要クラスターの作成後、API エンドポイントをパブリックとプライベートの間で変更することはできません。
- パブリック API エンドポイント
- クラスターへのアクセスを制限しない場合は、パブリック を選択します。インターネットから Kubernetes API エンドポイントとアプリケーションルートにアクセスできます。
- プライベート API エンドポイント
クラスターへのネットワークアクセスを制限する場合は、Private を選択します。Kubernetes API エンドポイントとアプリケーションルートには、直接のプライベート接続からのみアクセスできます。
重要プライベート API エンドポイントを使用している場合は、クラウドプロバイダーアカウントのネットワーク設定を更新するまでクラスターにアクセスできません。
オプション: パブリック API エンドポイントを使用することを選択した場合は、デフォルトでクラスター用に新しい VPC が作成されます。代わりに既存の VPC にクラスターをインストールする場合は、Install into an existing VPC を選択します。
警告OpenShift インストーラーによって作成された既存の VPC に ROSA クラスターをインストールすることはできません。このような VPC は、クラスターのデプロイ中に作成されたものであり、クラスターのプロビジョニング操作と削除操作が正しく機能するように、単一のクラスターにのみ関連付けられている必要があります。
VPC が OpenShift インストーラーによって作成されたものかどうかを確認するには、
kubernetes.io/cluster/<infra-id>
タグのowned
値を確認します。たとえば、mycluster-12abc-34def
という名前の VPC のタグを確認したところ、kubernetes.io/cluster/mycluster-12abc-34def
タグの値がowned
であったとします。この VPC はインストーラーによって作成されたものであるため、管理者の方は変更しないでください。注記プライベート API エンドポイントの使用を選択した場合は、既存の VPC と PrivateLink を使用する必要があり、Install into an existing VPC オプションと Use a PrivateLink オプションが自動的に選択されます。これらのオプションが選択されると、Red Hat Site Reliability Engineering (SRE) チームが、AWS PrivateLink エンドポイントのみを使用してクラスターに接続し、サポートを提供できるようになります。
- オプション: クラスターを既存の VPC にインストールする場合は、Configure a cluster-wide proxy を選択して、HTTP または HTTPS プロキシーがクラスターからインターネットへの直接アクセスを拒否できるようにします。
- Next をクリックします。
クラスターを既存の AWS VPC にインストールする場合、Virtual Private Cloud (VPC) サブネット設定 を指定します。
注記クラスターをインストールするアベイラビリティーゾーンごとに、VPC がパブリックおよびプライベートサブネットで設定されるようにする必要があります。PrivateLink を使用する場合は、プライベートサブネットのみが必要になります。
オプション: Additional security groups を展開し、デフォルトで作成されるマシンプール内のノードに適用する追加のカスタムセキュリティーグループを選択します。すでにセキュリティーグループを作成し、このクラスター用に選択した VPC にそのグループを関連付けている必要があります。クラスターの作成後に、デフォルトのマシンプールにセキュリティーグループを追加または編集することはできません。
デフォルトでは、指定したセキュリティーグループがすべてのノードタイプに追加されます。ノードタイプごとに異なるセキュリティーグループを選択するには、Apply the same security groups to all node types (control plane, infrastructure and worker) チェックボックスをオフにします。
詳細は、関連情報 の セキュリティーグループ の要件を参照してください。
クラスター全体のプロキシーを設定することを選択した場合は、Cluster-wide proxy ページでプロキシー設定の詳細を指定します。
次のフィールドの少なくとも 1 つに値を入力します。
- 有効な HTTP proxy URL を指定します。
- 有効な HTTPS proxy URL を指定します。
-
Additional trust bundle フィールドに、PEM でエンコードされた X.509 証明書バンドルを指定します。このバンドルはクラスターノードの信頼済み証明書ストアに追加されます。TLS 検査プロキシーを使用する場合は、プロキシーのアイデンティティー証明書が Red Hat Enterprise Linux CoreOS (RHCOS) 信頼バンドルからの認証局によって署名されない限り、追加の信頼バンドルファイルが必要です。この要件は、プロキシーが透過的であるか、
http-proxy
引数およびhttps-proxy
引数を使用して明示的な設定を必要とするかに関係なく適用されます。
Next をクリックします。
Red Hat OpenShift Service on AWS を使用したプロキシーの設定に関する詳細は、クラスター全体のプロキシーの設定 を参照してください。
CIDR ranges ダイアログで、カスタムの Classless Inter-Domain Routing (CIDR) 範囲を設定するか、提供されるデフォルトを使用して、Next を、クリックします。
注記VPC にインストールする場合は、Machine CIDR 範囲を VPC サブネットに一致させる必要があります。
重要CIDR 設定は後で変更することはできません。続行する前に、ネットワーク管理者と選択内容を確認してください。
Cluster roles and policies ページで、優先するクラスター固有の Operator の IAM ロールと OIDC プロバイダーの作成モードを選択します。
Manual モードでは、
rosa
CLI コマンドまたはaws
CLI コマンドのいずれかを使用して、クラスターに必要な Operator ロールと OIDC プロバイダーを生成できます。手動 モードでは、優先オプションを使用して IAM リソースを手動で作成し、クラスターのインストールを完了する前に、詳細を確認できます。または、Auto モードを使用して、Operator のロールと OIDC プロバイダーを自動的に作成することもできます。Auto モードを有効にするには、OpenShift Cluster Manager IAM ロールに管理者機能が必要です。
注記関連するアカウント全体のロールを作成したときにカスタム ARN パスを指定した場合、カスタムパスが自動的に検出され、Operator ロールに適用されます。カスタム ARN パスは、Manual モードまたは Auto モードのいずれかを使用して Operator ロールが作成されるときに適用されます。
オプション: クラスター固有の Operator IAM ロールの カスタム Operator ロール接頭辞 を指定します。
注記デフォルトでは、クラスター固有の Operator のロール名には、クラスター名とランダムな 4 桁のハッシュが接頭辞として付けられます。オプションで、ロール名の
<cluster_name>-<hash>
を置き換えるカスタム接頭辞を指定できます。接頭辞は、クラスター固有の Operator IAM ロールを作成するときに適用されます。接頭辞の詳細は、カスタム Operator IAM ロール接頭辞について を参照してください。- Next を選択します。
Cluster update strategy ページで、更新設定を行います。
クラスターの更新方法を選択します。
- 各更新を個別にスケジュールする場合は、Individual updates を選択します。以下はデフォルトのオプションになります。
Recurring updates を選択して、更新が利用可能な場合に、希望の曜日と開始時刻にクラスターを更新します。
重要定期的な更新を選択した場合でも、マイナーリリース間でクラスターをアップグレードする前に、アカウント全体およびクラスター固有の IAM リソースを更新する必要があります。
注記保守終了日は、Red Hat OpenShift Service on AWS の更新ライフサイクルドキュメントで確認できます。詳細は、Red Hat OpenShift Service on AWS 更新ライフサイクル を参照してください。
- 繰り返し更新を選択した場合は、ドロップダウンメニューから希望の曜日およびアップグレード開始時刻 (UTC) を選択します。
- オプション: クラスターのアップグレード時における ノード drain (Pod の退避) の猶予期間を設定できます。デフォルトで 1 時間 の猶予期間が設定されています。
Next をクリックします。
注記クラスターのセキュリティーまたは安定性に大きく影響する重大なセキュリティー問題がある場合、Red Hat Site Reliability Engineering (SRE) が、影響を受けない最新の z-stream バージョンへの自動更新をスケジュールすることがあります。更新は、お客様に通知された後、48 時間以内に適用されます。重大な影響を及ぼすセキュリティー評価の説明は、Red Hat セキュリティー評価について を参照してください。
- 選択の概要を確認し、Create cluster をクリックしてクラスターのインストールを開始します。
手動 モードを使用することを選択した場合は、クラスター固有の Operator のロールと OIDC プロバイダーを手動で作成して、インストールを続行します。
Action required to continue installation ダイアログで、AWS CLI または ROSA CLI タブを選択し、リソースを手動で作成します。
AWS CLI メソッドを使用することを選択した場合は、Download .zip をクリックしてファイルを保存してから、AWS CLI コマンドとポリシーファイルをデプロイメントします。次に、CLI で提供されている
aws
コマンドを実行します。注記ポリシーファイルを含むディレクトリーで
aws
コマンドを実行する必要があります。ROSA CLI メソッドを使用することを選択した場合は、
rosa create
コマンドの横にあるコピーボタンをクリックして、CLI で実行します。注記関連付けられたアカウント全体のロールを作成したときにカスタム ARN パスを指定した場合、これらの手動の方法を使用して Operator のロールを作成すると、カスタムパスが自動的に検出され、Operator のロールに適用されます。
- Action required to continue installation ダイアログで、x をクリックしてクラスターの Overview ページに戻ります。
- Overview ページの Details セクションで、クラスターの Status が Waiting から Installing に変更されていることを確認します。ステータスが変わるまでに約 2 分の短い遅延が発生する場合があります。
注記自動 モードの使用を選択した場合、OpenShift Cluster Manager は Operator ロールと OIDC プロバイダーを自動的に作成します。
重要クラスターを正常に作成するには、アカウントのロールに加えて EBS Operator のロールが必要です。
このロールは、ROSA が Container Storage Interface (CSI) を通じてバックエンドストレージを管理するために必要な IAM ポリシーである
ManagedOpenShift-openshift-cluster-csi-drivers-ebs-cloud-credentials
ポリシーに割り当てる必要があります。クラスター Operator に必要なポリシーと権限の詳細は、アカウント全体のロールを作成する方法 を参照してください。
EBS Operator のロールの例
"arn:aws:iam::<aws_account_id>:role/<cluster_name>-xxxx-openshift-cluster-csi-drivers-ebs-cloud-credent"
Operator のロールを作成したら、AWS コンソールの Key Management Service (KMS) ページ で キーポリシー を編集して、ロールを追加する必要があります。
検証
クラスターの Overview ページで、インストールの進捗をモニターできます。同じページでインストールのログを表示できます。そのページの Details セクションの Status が Ready として表示されると、クラスターは準備が完了した状態になります。
注記インストールが失敗するか、約 40 分経ってもクラスターの 状態 が Ready に変わらない場合は、インストールのトラブルシューティングのドキュメントで詳細を確認してください。詳細は、インストールのトラブルシューティング を参照してください。Red Hat サポートにサポートを依頼する手順は、Red Hat OpenShift Service on AWS のサポートを受ける を参照してください。
2.7.2. CLI を使用してカスタマイズしたクラスターを作成する リンクのコピーリンクがクリップボードにコピーされました!
AWS Security Token Service (STS) を使用する Red Hat OpenShift Service on AWS (ROSA) クラスターを作成する場合は、インストールを対話的にカスタマイズできます。
rosa create cluster --interactive
コマンドをクラスターの作成時に実行すると、デプロイメントのカスタマイズを可能にする一連の対話式プロンプトが表示されます。詳細は、対話式クラスター作成モードリファレンス を参照してください。
対話モードを使用したクラスターのインストールが完了すると、同じカスタム設定を使用してさらにクラスターをデプロイできるようにする単一のコマンドが出力に提供されます。
STS では、パブリックおよび AWS PrivateLink クラスターのみがサポートされます。通常のプライベートクラスター (PrivateLink 以外) は STS では使用できません。
前提条件
- STS を使用する ROSA の AWS の前提条件を完了している。
- 利用可能な AWS サービスクォータがある。
- AWS コンソールで ROSA サービスを有効にした。
-
インストールホストに、最新の ROSA CLI (
rosa
) をインストールして設定している。現在インストールされている ROSA CLI のバージョンを確認するには、rosa version
を実行します。新しいバージョンが利用可能な場合、CLI はこのアップグレードをダウンロードするためのリンクを提供します。 顧客管理の AWS Key Management Service (KMS) キーを暗号化に使用する場合は、対称 KMS キーを作成する必要があります。クラスターを作成するときに、Amazon Resource Name (ARN) を指定する必要があります。顧客管理の KMS キーを作成するには、対称暗号化 KMS キーの作成 の手順に従います。
重要クラスターを正常に作成するには、アカウントのロールに加えて EBS Operator のロールが必要です。
このロールは、ROSA が Container Storage Interface (CSI) を通じてバックエンドストレージを管理するために必要な IAM ポリシーである
ManagedOpenShift-openshift-cluster-csi-drivers-ebs-cloud-credentials
ポリシーに割り当てる必要があります。クラスター Operator に必要なポリシーと権限の詳細は、アカウント全体のロールを作成する方法 を参照してください。
EBS Operator のロールの例
"arn:aws:iam::<aws_account_id>:role/<cluster_name>-xxxx-openshift-cluster-csi-drivers-ebs-cloud-credent"
Operator のロールを作成したら、AWS コンソールの Key Management Service (KMS) ページ で キーポリシー を編集して、ロールを追加する必要があります。
手順
Operator ポリシーを含む、必要なアカウント全体のロールおよびポリシーを作成します。
現在の作業ディレクトリーに IAM ポリシー JSON ファイルを作成し、確認用に
aws
CLI コマンドを実行します。rosa create account-roles --interactive \ --mode manual
$ rosa create account-roles --interactive \
1 --mode manual
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- OpenShift Cluster Manager IAM ロール名に含める接頭辞を指定します。デフォルトは
ManagedOpenShift
です。重要アカウントロールにカスタム ARN パスを使用する場合でも、AWS アカウント全体で一意のアカウント全体のロール接頭辞を指定する必要があります。
- 2
- オプション: ロールのパーミッション境界 Amazon Resource Name (ARN) を指定します。詳細は、AWS ドキュメントの IAM エンティティーのアクセス許可の境界 を参照してください。
- 3
- アカウント全体のロールのカスタム ARN パスを指定します。パスには英数字のみを使用し、
/
で開始および終了する必要があります (例:/test/path/dev/
)。詳細は、IAM ロールとポリシーの ARN パスのカスタマイズ を参照してください。 - 4
- ロール作成モードを選択します。
auto
モードを使用して、アカウント全体のロールとポリシーを自動的に作成できます。manual
モードでは、rosa
CLI はロールとポリシーの作成に必要なaws
コマンドを生成します。manual
モードでは、対応するポリシー JSON ファイルも現在のディレクトリーに保存されます。manual
モードでは、aws
コマンドを手動で実行する前に詳細を確認することができます。 - 5 6 7 8
- アカウント全体のインストーラー、コントロールプレーン、ワーカー、サポートロール、および対応する IAM ポリシーを作成します。詳細は、アカウント全体の IAM ロールとポリシーのリファレンス を参照してください。注記
このステップでは、ROSA CLI は、クラスター固有の Operator ポリシーによって使用されるアカウント全体の Operator IAM ポリシーも自動的に作成し、ROSA クラスター Operator がコア OpenShift 機能を実行できるようにします。詳細は、アカウント全体の IAM ロールとポリシーのリファレンス を参照してください。
-
確認後は、
aws
コマンドを手動で実行し、ロールおよびポリシーを作成します。または、--mode auto
を使用して前述のコマンドを実行して、aws
コマンドを即座に実行できます。
-
確認後は、
オプション: 独自の AWS KMS キーを使用してコントロールプレーン、インフラストラクチャー、ワーカーノードのルートボリューム、および永続ボリューム (PV) を暗号化する場合は、アカウント全体のインストーラーロールの ARN を KMS キーポリシーに追加します。
重要デフォルトのストレージクラスから作成された永続ボリューム (PV) のみが、この特定のキーで暗号化されます。
他のストレージクラスを使用して作成された PV は引き続き暗号化されますが、ストレージクラスがこのキーを使用するように特別に設定されていない限り、PV はこのキーで暗号化されません。
KMS キーのキーポリシーをローカルマシンのファイルに保存します。次の例では、出力を現在の作業ディレクトリーの
kms-key-policy.json
に保存します。aws kms get-key-policy --key-id <key_id_or_arn> --policy-name default --output text > kms-key-policy.json
$ aws kms get-key-policy --key-id <key_id_or_arn> --policy-name default --output text > kms-key-policy.json
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<key_id_or_arn>
を KMS キーの ID または ARN に置き換えます。
前述の手順で作成したアカウント全体のインストーラーロールの ARN を、ファイルの
Statement.Principal.AWS
セクションに追加します。以下の例では、デフォルトのManagedOpenShift-Installer-Role
ロールの ARN が追加されます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow KMS キーポリシーに変更を適用します。
aws kms put-key-policy --key-id <key_id_or_arn> \ --policy file://kms-key-policy.json \ --policy-name default
$ aws kms put-key-policy --key-id <key_id_or_arn> \
1 --policy file://kms-key-policy.json \
2 --policy-name default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の手順でクラスターを作成すると、KMS キーの ARN を参照できます。
カスタムインストールオプションを使用して、STS を使用するクラスターを作成します。
--interactive
モードを使用して、カスタム設定を対話的に指定できます。警告OpenShift インストーラーによって作成された既存の VPC に ROSA クラスターをインストールすることはできません。このような VPC は、クラスターのデプロイ中に作成されたものであり、クラスターのプロビジョニング操作と削除操作が正しく機能するように、単一のクラスターにのみ関連付けられている必要があります。
VPC が OpenShift インストーラーによって作成されたものかどうかを確認するには、
kubernetes.io/cluster/<infra-id>
タグのowned
値を確認します。たとえば、mycluster-12abc-34def
という名前の VPC のタグを確認したところ、kubernetes.io/cluster/mycluster-12abc-34def
タグの値がowned
であったとします。この VPC はインストーラーによって作成されたものであるため、管理者の方は変更しないでください。rosa create cluster --interactive --sts
$ rosa create cluster --interactive --sts
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- オプション: クラスターを作成するときに、
--domain-prefix
フラグを使用して*.openshiftapps.com
上のクラスターのサブドメインをカスタマイズできます。このフラグの値は組織内で一意である必要があり、15 文字を超えてはならず、クラスターの作成後に変更できません。フラグが指定されていない場合は、クラスター名の長さに応じて自動生成された値が作成されます。クラスター名が 15 文字以下の場合、その名前がドメイン接頭辞に使用されます。クラスター名が 15 文字を超えると、ドメイン接頭辞が 15 文字の文字列にランダムに生成されます。 - 2
- クラスターを作成するときに、クラスターのローカル管理者ユーザー (
cluster-admin
) を作成できます。これにより、cluster-admin
ユーザーのhtpasswd
アイデンティティープロバイダーが自動的に設定されます。 - 3
cluster-admin
ユーザーのカスタムパスワードを作成することも、システムにパスワードを生成させることもできます。カスタムパスワードを作成しない場合は、生成されたパスワードがコマンドライン出力に表示されます。カスタムパスワードを指定する場合、空白を含めずに 14 文字以上 (ASCII 標準) で指定する必要があります。定義すると、パスワードはハッシュ化され、セキュアに転送されます。- 4
- クラスターの作成時にリストされる
OpenShift version
オプションには、メジャー、マイナー、およびパッチバージョン (例:4.19.0
) が含まれます。 - 5
- オプション: EC2 Instance Metadata Service (IMDS) の v1 エンドポイントと v2 エンドポイントの両方を使用するようにすべての EC2 インスタンスを設定するには、
optional
を指定します。これはデフォルト値です。IMDSv2 のみを使用するようにすべての EC2 インスタンスを設定するには、required
を指定します。重要クラスターの作成後に Instance Metadata Service の設定を変更することはできません。
- 6
- Amazon Web Services (AWS) アカウントに、お使いのクラスターバージョン用のアカウントロールセットが複数ある場合は、インタラクティブなオプションリストが表示されます。
- 7
- オプション: アカウントのロールが引き受けられるときに、Red Hat OpenShift Service on AWS および OpenShift インストーラーによって渡される一意の識別子を指定します。このオプションは、外部 ID を予想されるカスタムアカウントロールにのみ必要です。
- 8
- デフォルトでは、クラスター固有の Operator のロール名には、クラスター名とランダムな 4 桁のハッシュが接頭辞として付けられます。オプションで、ロール名の
<cluster_name>-<hash>
を置き換えるカスタム接頭辞を指定できます。接頭辞は、クラスター固有の Operator IAM ロールを作成するときに適用されます。接頭辞の詳細は、カスタム Operator IAM ロール接頭辞について を参照してください。注記関連するアカウント全体のロールを作成したときにカスタム ARN パスを指定した場合、カスタムパスは自動的に検出されます。カスタムパスは、後のステップで作成するときに、クラスター固有の Operator ロールに適用されます。
- 9
- オプション: Red Hat OpenShift Service on AWS が作成した AWS 内のすべてのリソースで使用するタグを指定します。タグは、AWS 内のリソースの管理、識別、整理、検索、フィルタリングに使用できます。タグはコンマで区切ります (例:
key value, data input
)。重要Red Hat OpenShift Service on AWS は、クラスター作成時に Red Hat OpenShift リソースへのカスタムタグのみをサポートします。タグを追加すると、削除したり編集したりすることはできません。Red Hat が追加したタグは、クラスターが Red Hat の実稼働サービスレベルアグリーメント (SLA) への準拠を維持するために必要です。これらのタグは削除してはいけません。
Red Hat OpenShift Service on AWS では、ROSA クラスターマネージドリソース以外へのタグの追加はサポートされていません。AWS リソースが ROSA クラスターによって管理されている場合、これらのタグが失われる可能性があります。このような場合、タグを調整してそのままの状態に保つためのカスタムソリューションまたはツールが必要になる可能性があります。
- 10
- オプション: 実稼働環境のワークロードには、複数のアベイラビリティーゾーンの使用が推奨されます。デフォルトは単一のアベイラビリティーゾーンです。
- 11
- オプション: 既存の VPC にクラスターを作成することも、使用する新しい VPC を ROSA で作成することもできます。警告
OpenShift インストーラーによって作成された既存の VPC に ROSA クラスターをインストールすることはできません。このような VPC は、クラスターのデプロイ中に作成されたものであり、クラスターのプロビジョニング操作と削除操作が正しく機能するように、単一のクラスターにのみ関連付けられている必要があります。
VPC が OpenShift インストーラーによって作成されたものかどうかを確認するには、
kubernetes.io/cluster/<infra-id>
タグのowned
値を確認します。たとえば、mycluster-12abc-34def
という名前の VPC のタグを確認したところ、kubernetes.io/cluster/mycluster-12abc-34def
タグの値がowned
であったとします。この VPC はインストーラーによって作成されたものであるため、管理者の方は変更しないでください。 - 12
- オプション: 独自の AWS KMS キーを使用してコントロールプレーン、インフラストラクチャー、ワーカーノードのルートボリューム、および PV を暗号化する場合は、このオプションを有効にします。前述の手順でアカウント全体のロール ARN を追加した KMS キーの ARN を指定します。重要
デフォルトのストレージクラスから作成された永続ボリューム (PV) のみが、この特定のキーで暗号化されます。
他のストレージクラスを使用して作成された PV は引き続き暗号化されますが、ストレージクラスがこのキーを使用するように特別に設定されていない限り、PV はこのキーで暗号化されません。
- 13
- オプション: クラスターで使用する追加のカスタムセキュリティーグループを選択できます。すでにセキュリティーグループを作成し、このクラスター用に選択した VPC にそのグループを関連付けている必要があります。マシンプールを作成した後に、デフォルトのマシンプールのセキュリティーグループを追加または編集することはできません。詳細は、関連情報 の セキュリティーグループ の要件を参照してください。
- 14
- オプション: クラスターで FIPS 検証を必須にする場合は、このオプションを有効にします。このオプションを選択すると、etcd データの暗号化オプションがデフォルトで有効になり、無効にできなくなります。etcd データの暗号化は、FIPS サポートを有効にしなくても可能です。
- 15
- オプション: デフォルトで etcd ボリュームを暗号化するコントロールプレーンストレージ暗号化に加えて、etcd キー値の暗号化のみが必要な場合、このオプションを有効にします。このオプションを使用すると、etcd キーの値は暗号化されますが、キーは暗号化されません。重要
etcd のキー値の etcd 暗号化を有効にすると、約 20% のパフォーマンスのオーバーヘッドが発生します。このオーバーヘッドは、etcd ボリュームを暗号化するデフォルトのコントロールプレーンのストレージ暗号化に加えて、この 2 つ目の暗号化レイヤーの導入により生じます。Red Hat は、お客様のユースケースで特に etcd 暗号化が必要な場合にのみ有効にすることを推奨します。
- 16
- 出力には、同じ設定のクラスターをもう 1 つ作成するために実行できるカスタムコマンドが含まれます。
--interactive
モードを使用する代わりに、rosa create cluster
コマンドの実行時にカスタマイズオプションを直接指定できます。rosa create cluster --help
コマンドを実行して利用可能な CLI オプションのリストを表示するか、ROSA CLI を使用したオブジェクトの管理 の クラスターの作成 を参照してください。重要Operator IAM ロールおよび OpenID Connect (OIDC) プロバイダーを作成し、クラスターの状態を
ready
に移行するには、以下の手順を実行する必要があります。クラスター固有の Operator IAM ロールを作成します。
現在の作業ディレクトリーに Operator IAM ポリシー JSON ファイルを作成し、確認用に
aws
CLI コマンドを実行します。rosa create operator-roles --mode manual --cluster <cluster_name|cluster_id>
$ rosa create operator-roles --mode manual --cluster <cluster_name|cluster_id>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
manual
モードは、Operator ロールの作成に必要なaws
CLI コマンドおよび JSON ファイルを生成します。確認後、手動でコマンドを実行してリソースを作成する必要があります。
確認後は、
aws
コマンドを手動で実行し、Operator IAM ロールを作成し、マネージド Operator ポリシーをそれらに割り当てます。または、--mode auto
を使用して前述のコマンドを実行して、aws
コマンドを即座に実行できます。注記前の手順で接頭辞を指定した場合、カスタム接頭辞が Operator ロール名に適用されます。
関連するアカウント全体のロールを作成したときにカスタム ARN パスを指定した場合、カスタムパスが自動的に検出され、Operator ロールに適用されます。
重要クラスターを正常に作成するには、アカウントのロールに加えて EBS Operator のロールが必要です。
このロールは、ROSA が Container Storage Interface (CSI) を通じてバックエンドストレージを管理するために必要な IAM ポリシーである
ManagedOpenShift-openshift-cluster-csi-drivers-ebs-cloud-credentials
ポリシーに割り当てる必要があります。クラスター Operator に必要なポリシーと権限の詳細は、アカウント全体のロールを作成する方法 の EBS Operator ロールの例
"arn:aws:iam::<aws_account_id>:role/<cluster_name>-xxxx-openshift-cluster-csi-drivers-ebs-cloud-credent"
を参照してください。Operator のロールを作成したら、AWS コンソールの Key Management Service (KMS) ページ で キーポリシー を編集して、ロールを追加する必要があります。
クラスター Operator が認証に使用する OpenID Connect (OIDC) プロバイダーを作成します。
rosa create oidc-provider --mode auto --cluster <cluster_name|cluster_id>
$ rosa create oidc-provider --mode auto --cluster <cluster_name|cluster_id>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
auto
モードは、OIDC プロバイダーを作成するaws
CLI コマンドを即時実行します。
クラスターのステータスを確認します。
rosa describe cluster --cluster <cluster_name|cluster_id>
$ rosa describe cluster --cluster <cluster_name|cluster_id>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
エンドポイント URL は、BYO OIDC 設定によって異なります。OIDC 設定を事前に作成している場合、URL の末尾が
<oidc_config_id>
値になります。それ以外の場合、URL の末尾は<cluster-ID>
値です。
以下の
State
フィールドの変更は、クラスターインストールの進捗として出力に表示されます。-
waiting (Waiting for OIDC configuration)
-
pending (Preparing account)
-
installing (DNS setup in progress)
-
installing
ready
注記インストールが失敗した場合や、約 40 分後に
State
フィールドがready
に変わらない場合は、インストールのトラブルシューティングに関するドキュメントで詳細を確認してください。詳細は、インストールのトラブルシューティング を参照してください。Red Hat サポートにサポートを依頼する手順は、Red Hat OpenShift Service on AWS のサポートを受ける を参照してください。
-
エンドポイント URL は、BYO OIDC 設定によって異なります。OIDC 設定を事前に作成している場合、URL の末尾が
OpenShift インストーラーログを監視して、クラスター作成の進捗を追跡します。
rosa logs install --cluster <cluster_name|cluster_id> --watch
$ rosa logs install --cluster <cluster_name|cluster_id> --watch
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow