3.8. インストール設定ファイルの手動作成
クラスターをインストールするには、インストール設定ファイルを手動で作成する必要があります。
前提条件
- インストールプログラムで使用するための SSH 公開鍵がローカルマシン上に存在する。この鍵は、デバッグや障害復旧のために、クラスターノードへの SSH 認証に使用できます。
- OpenShift Container Platform インストールプログラムとクラスターのプルシークレットを取得している。
手順
- 必要なインストールアセットを保存するためのインストールディレクトリーを作成します。 - mkdir <installation_directory> - $ mkdir <installation_directory>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 重要- このディレクトリーは必ず作成してください。ブートストラップ X.509 証明書などの一部のインストールアセットは、有効期限が短いため、インストールディレクトリーを再利用しないでください。別のクラスターインストールの個別のファイルを再利用する必要がある場合は、それらをディレクトリーにコピーすることができます。ただし、インストールアセットのファイル名はリリース間で変更される可能性があります。インストールファイルを以前のバージョンの OpenShift Container Platform からコピーする場合は注意してください。 
- 提供されているサンプルの - install-config.yamlファイルテンプレートをカスタマイズし、ファイルを- <installation_directory>に保存します。注記- この設定ファイルの名前を - install-config.yamlと付ける必要があります。
- 多くのクラスターのインストールに使用できるように、 - install-config.yamlファイルをバックアップします。重要- インストールプロセスの次のステップで - install-config.yamlファイルを使用するため、今すぐこのファイルをバックアップしてください。
3.8.1. IBM Power のサンプル install-config.yaml ファイル
					install-config.yaml ファイルをカスタマイズして、OpenShift Container Platform クラスターのプラットフォームに関する詳細を指定するか、必要なパラメーターの値を変更することができます。
				
- 1
- クラスターのベースドメイン。すべての DNS レコードはこのベースのサブドメインである必要があり、クラスター名が含まれる必要があります。
- 2 5
- controlPlaneセクションは単一マッピングですが、- computeセクションはマッピングのシーケンスになります。複数の異なるデータ構造の要件を満たすには、- computeセクションの最初の行はハイフン- -で始め、- controlPlaneセクションの最初の行はハイフンで始めることができません。1 つのコントロールプレーンプールのみが使用されます。
- 3 6
- 同時マルチスレッディング (SMT) は、インストール後のタスクとして設定されます。
- 4
- OpenShift Container Platform を user-provisioned infrastructure にインストールする場合は、この値を0に設定する必要があります。installer-provisioned installation では、パラメーターはクラスターが作成し、管理するコンピュートマシンの数を制御します。user-provisioned installation では、クラスターのインストールの終了前にコンピュートマシンを手動でデプロイする必要があります。注記3 ノードクラスターをインストールする場合は、Red Hat Enterprise Linux CoreOS (RHCOS) マシンをインストールする際にコンピュートマシンをデプロイしないでください。 
- 7
- クラスターに追加するコントロールプレーンマシンの数。クラスターをこれらの値をクラスターの etcd エンドポイント数として使用するため、値はデプロイするコントロールプレーンマシンの数に一致する必要があります。
- 8
- DNS レコードに指定したクラスター名。
- 9
- Pod IP アドレスの割り当てに使用する IP アドレスのブロック。このブロックは既存の物理ネットワークと重複できません。これらの IP アドレスは Pod ネットワークに使用されます。外部ネットワークから Pod にアクセスする必要がある場合、ロードバランサーおよびルーターを、トラフィックを管理するように設定する必要があります。注記クラス E の CIDR 範囲は、将来の使用のために予約されています。クラス E CIDR 範囲を使用するには、ネットワーク環境がクラス E CIDR 範囲内の IP アドレスを受け入れるようにする必要があります。 
- 10
- それぞれの個別ノードに割り当てるサブネット接頭辞長。たとえば、hostPrefixが23に設定されている場合、各ノードに指定のcidrから/23サブネットが割り当てられます。これにより、510 (2^(32 - 23) - 2) Pod IP アドレスが許可されます。外部ネットワークからのノードへのアクセスを提供する必要がある場合には、ロードバランサーおよびルーターを、トラフィックを管理するように設定します。
- 11
- インストールするクラスターネットワークプラグイン。サポートされる値はデフォルト値のOVNKubernetesのみです。
- 12
- サービス IP アドレスに使用する IP アドレスプール。1 つの IP アドレスプールのみを入力できます。このブロックは既存の物理ネットワークと重複できません。外部ネットワークからサービスにアクセスする必要がある場合、ロードバランサーおよびルーターを、トラフィックを管理するように設定します。
- 13
- プラットフォームをnoneに設定する必要があります。IBM Power® インフラストラクチャー用に追加のプラットフォーム設定変数を指定できません。重要プラットフォームタイプ noneでインストールされたクラスターは、Machine API を使用したコンピュートマシンの管理など、一部の機能を使用できません。この制限は、クラスターに接続されている計算マシンが、通常はこの機能をサポートするプラットフォームにインストールされている場合でも適用されます。このパラメーターは、インストール後に変更することはできません。
- 14
- FIPS モードを有効または無効にするかどうか。デフォルトでは、FIPS モードは有効にされません。FIPS モードが有効にされている場合、OpenShift Container Platform が実行される Red Hat Enterprise Linux CoreOS (RHCOS) マシンがデフォルトの Kubernetes 暗号スイートをバイパスし、代わりに RHCOS で提供される暗号モジュールを使用します。重要クラスターで FIPS モードを有効にするには、FIPS モードで動作するように設定された Red Hat Enterprise Linux (RHEL) コンピューターからインストールプログラムを実行する必要があります。RHEL で FIPS モードを設定する方法の詳細は、RHEL から FIPS モードへの切り替え を参照してください。 FIPS モードでブートされた Red Hat Enterprise Linux (RHEL) または Red Hat Enterprise Linux CoreOS (RHCOS) を実行する場合、OpenShift Container Platform コアコンポーネントは、x86_64、ppc64le、および s390x アーキテクチャーのみで、FIPS 140-2/140-3 検証のために NIST に提出された RHEL 暗号化ライブラリーを使用します。 
- 15
- <local_registry>には、レジストリードメイン名と、ミラーレジストリーがコンテンツを提供するために使用するポートをオプションで指定します。例:- registry.example.comまたは- registry.example.com:5000- <credentials>に、ミラーレジストリーの base64 でエンコードされたユーザー名およびパスワードを指定します。
- 16
- Red Hat Enterprise Linux CoreOS (RHCOS) のcoreユーザーの SSH 公開鍵。注記インストールのデバッグまたは障害復旧を実行する必要のある実稼働用の OpenShift Container Platform クラスターでは、 ssh-agentプロセスが使用する SSH キーを指定します。
- 17
- ミラーレジストリーに使用した証明書ファイルの内容を指定します。
- 18
- リポジトリーのミラーリングに使用したコマンドの出力に従って、imageContentSourcesセクションを指定します。重要- 
										oc adm release mirrorコマンドを使用する場合は、imageContentSourcesセクションの出力を使用します。
- 
										oc mirrorコマンドを使用する場合は、コマンドの実行によって生成されるImageContentSourcePolicyファイルのrepositoryDigestMirrorsセクションを使用します。
- 
										ImageContentSourcePolicyは非推奨になりました。詳細は、イメージレジストリーリポジトリーミラーリングの設定 を参照してください。
 
- 
										
3.8.2. インストール時のクラスター全体のプロキシーの設定
					実稼働環境では、インターネットへの直接アクセスを拒否し、代わりに HTTP または HTTPS プロキシーを使用することができます。プロキシー設定を install-config.yaml ファイルで行うことにより、新規の OpenShift Container Platform クラスターをプロキシーを使用するように設定できます。
				
前提条件
- 
							既存の install-config.yamlファイルがある。
- クラスターがアクセスする必要のあるサイトを確認済みで、それらのいずれかがプロキシーをバイパスする必要があるかどうかを判別している。デフォルトで、すべてのクラスター Egress トラフィック (クラスターをホストするクラウドに関するクラウドプロバイダー API に対する呼び出しを含む) はプロキシーされます。プロキシーを必要に応じてバイパスするために、サイトを - Proxyオブジェクトの- spec.noProxyフィールドに追加している。注記- Proxyオブジェクトの- status.noProxyフィールドには、インストール設定の- networking.machineNetwork[].cidr、- networking.clusterNetwork[].cidr、および- networking.serviceNetwork[]フィールドの値が設定されます。- Amazon Web Services (AWS)、Google Cloud Platform (GCP)、Microsoft Azure、および Red Hat OpenStack Platform (RHOSP) へのインストールの場合、 - Proxyオブジェクトの- status.noProxyフィールドには、インスタンスメタデータのエンドポイント (- 169.254.169.254) も設定されます。
手順
- install-config.yamlファイルを編集し、プロキシー設定を追加します。以下に例を示します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- クラスター外の HTTP 接続を作成するために使用するプロキシー URL。URL スキームはhttpである必要があります。
- 2
- クラスター外で HTTPS 接続を作成するために使用するプロキシー URL。
- 3
- プロキシーから除外するための宛先ドメイン名、IP アドレス、または他のネットワーク CIDR のコンマ区切りのリスト。サブドメインのみと一致するように、ドメインの前に.を付けます。たとえば、.y.comはx.y.comに一致しますが、y.comには一致しません。*を使用し、すべての宛先のプロキシーをバイパスします。
- 4
- 指定されている場合、インストールプログラムは HTTPS 接続のプロキシーに必要な 1 つ以上の追加の CA 証明書が含まれるuser-ca-bundleという名前の設定マップをopenshift-confignamespace に生成します。次に Cluster Network Operator は、これらのコンテンツを Red Hat Enterprise Linux CoreOS (RHCOS) 信頼バンドルにマージするtrusted-ca-bundle設定マップを作成し、この設定マップはProxyオブジェクトのtrustedCAフィールドで参照されます。additionalTrustBundleフィールドは、プロキシーのアイデンティティー証明書が RHCOS 信頼バンドルからの認証局によって署名されない限り必要になります。
- 5
- オプション:trustedCAフィールドのuser-ca-bundle設定マップを参照するProxyオブジェクトの設定を決定するポリシー。許可される値はProxyonlyおよびAlwaysです。Proxyonlyを使用して、http/httpsプロキシーが設定されている場合にのみuser-ca-bundle設定マップを参照します。Alwaysを使用して、常にuser-ca-bundle設定マップを参照します。デフォルト値はProxyonlyです。
 注記- インストールプログラムは、プロキシーの - readinessEndpointsフィールドをサポートしません。注記- インストーラーがタイムアウトした場合は、インストーラーの - wait-forコマンドを使用してデプロイメントを再起動してからデプロイメントを完了します。以下に例を示します。- ./openshift-install wait-for install-complete --log-level debug - $ ./openshift-install wait-for install-complete --log-level debug- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ファイルを保存し、OpenShift Container Platform のインストール時にこれを参照します。
					インストールプログラムは、指定の install-config.yaml ファイルのプロキシー設定を使用する cluster という名前のクラスター全体のプロキシーを作成します。プロキシー設定が指定されていない場合、cluster Proxy オブジェクトが依然として作成されますが、これには spec がありません。
				
						cluster という名前の Proxy オブジェクトのみがサポートされ、追加のプロキシーを作成することはできません。
					
3.8.3. 3 ノードクラスターの設定
オプションで、3 台のコントロールプレーンマシンのみで構成されるベアメタルクラスターに、ゼロコンピュートマシンをデプロイできます。これにより、テスト、開発、および実稼働に使用するための小規模なリソース効率の高いクラスターが、クラスター管理者および開発者に提供されます。
3 ノードの OpenShift Container Platform 環境では、3 つのコントロールプレーンマシンがスケジュール対象となります。つまり、アプリケーションのワークロードがそれらで実行されるようにスケジュールされます。
前提条件
- 
							既存の install-config.yamlファイルがある。
手順
- 以下の - computeスタンザに示されるように、コンピュートレプリカの数が- install-config.yamlファイルで- 0に設定されることを確認します。- compute: - name: worker platform: {} replicas: 0- compute: - name: worker platform: {} replicas: 0- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注記- デプロイするコンピュートマシンの数にかかわらず、OpenShift Container Platform を user-provisioned infrastructure にインストールする際に、コンピュートマシンの - replicasパラメーターの値を- 0に設定する必要があります。installer-provisioned installation では、パラメーターはクラスターが作成し、管理するコンピュートマシンの数を制御します。これは、コンピュートマシンが手動でデプロイされる、user-provisioned installation には適用されません。
3 ノードのクラスターのインストールで、以下の手順を実行します。
- ゼロ (0) コンピュートノードで 3 ノードクラスターをデプロイする場合、Ingress コントローラー Pod はコントロールプレーンノードで実行されます。3 ノードクラスターデプロイメントでは、HTTP および HTTPS トラフィックをコントロールプレーンノードにルーティングするようにアプリケーション Ingress ロードバランサーを設定する必要があります。詳細は、user-provisioned infrastructure の負荷分散要件 のセクションを参照してください。
- 
							以下の手順で Kubernetes マニフェストファイルを作成する際に、<installation_directory>/manifests/cluster-scheduler-02-config.ymlファイルのmastersSchedulableパラメーターがtrueに設定されていることを確認します。これにより、アプリケーションのワークロードがコントロールプレーンノードで実行できます。
- Red Hat Enterprise Linux CoreOS (RHCOS) マシンを作成する際にはコンピュートノードをデプロイしないでください。