This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.第4章 vSphere へのインストール
4.1. クラスターの vSphere へのインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform バージョン 4.1 では、プロビジョニングする VMware vSphere インフラストラクチャーにクラスターをインストールできます。
前提条件
- クラスターの永続ストレージをプロビジョニングします。プライベートイメージレジストリーをデプロイするには、ストレージで ReadWriteMany アクセスモードを指定する必要があります。
- OpenShift Container Platform のインストールおよび更新プロセスについての詳細を確認します。
- ファイアウォールを使用する場合、Red Hat Insights にアクセスできるように設定する必要があります。
4.1.1. OpenShift Container Platform のインターネットアクセスおよび Telemetry アクセス リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform 4.1 では、Telemetry はクラスターの健全性および更新の正常な実行についてのメトリクスを提供するコンポーネントです。Red Hat がご使用のクラスターが有効なサブスクリプションを使用しているかどうかを判別できるかどうかを含め、サブスクリプション管理を実行できるようにするには、Telemetry サービスを使用し、Red Hat OpenShift Cluster Manager ページにアクセスできる必要があります。
非接続のサブスクリプション管理はオプションとして選択できないため、データを Red Hat に戻すことを選択しないことと、サブスクリプションを有効にすることは両立できません。非接続のサブスクリプション管理のサポートは OpenShift Container Platform の今後のリリースで追加される可能性があります。
マシンには、クラスターをインストールするためにインターネットへの直接のアクセスが必要です。
インターネットへのアクセスは以下を実行するために必要です。
- Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページにアクセスして、インストールプログラムをダウンロードします。
- クラスターのインストールに必要なパッケージを取得するための Quay.io へのアクセス
- クラスターの更新を実行するために必要なパッケージの取得
- サブスクリプション管理を実行するための Red Hat の SaaS (サービスとしてのソフトウェア) ページへのアクセス
4.1.2. VMware vSphere インフラストラクチャーの要件 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform クラスターを、VMware vSphere のバージョン 6.5 または 6.7U2 以降のインスタンスにインストールする必要があります。
VMware では、vSphere バージョン 6.7 U2 以降を OpenShift Container Platform クラスターで使用することを推奨しています。 vSphere 6.7U2 には以下が含まれます。
- VMware NSX-T のサポート
- インツリー (in-tree) VCP を使用する vSAN、VMFS および NFS のサポート
vSphere 6.5 とハードウェアのバージョン 13 の使用がサポートされていますが、OpenShift Container Platform クラスターは以下の制限を受けます。
- NSX-T SDN はサポートされません。
- OpenShift Container Platform がサポートする別の SDN またはストレージプロバイダーを使用する必要があります。
vSphere バージョン 6.5 インスタンスを使用している場合は、OpenShift Container Platform をインストールする前に 6.7U2 にアップグレードすることを検討してください。
OpenShift Container Platform をインストールする前に、ESXi ホストの時間が同期されていることを確認する必要があります。VMware ドキュメントの「Edit Time Configuration for a Host」を参照してください。
4.1.3. ユーザーによってプロビジョニングされるインフラストラクチャーを使用する場合のクラスターのマシン要件 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーによってプロビジョニングされるインフラストラクチャーを含むクラスターの場合、必要なマシンすべてをデプロイする必要があります。
4.1.3.1. 必要なマシン リンクのコピーリンクがクリップボードにコピーされました!
最小の OpenShift Container Platform クラスターでは以下のホストが必要です。
- 1 つのブートストラップマシン
- 3 つのコントロールプレーン、またはマスター、マシン
- 少なくとも 2 つのコンピュートマシン (ワーカーマシンとしても知られる)。
クラスターでは、ブートストラップマシンが OpenShift Container Platform クラスターを 3 つのコントロールプレーンマシンにデプロイする必要があります。クラスターのインストール後にブートストラップマシンを削除できます。
クラスターの高可用性を維持するには、これらのクラスターマシンについて別個の物理ホストを使用します。
ブートストラップおよびコントロールプレーンマシンでは、Red Hat Enterprise Linux CoreOS (RHCOS) をオペレーティングシステムとして使用する必要があります。
RHCOS は Red Hat Enterprise Linux 8 をベースとしており、そのハードウェア認定および要件が継承されることに注意してください。「Red Hat Enterprise Linux テクノロジーの機能と制限」を参照してください。
4.1.3.2. ネットワーク接続の要件 リンクのコピーリンクがクリップボードにコピーされました!
すべての Red Hat Enterprise Linux CoreOS (RHCOS) マシンでは、起動時に initramfs
のネットワークがマシン設定サーバーから Ignition 設定ファイルをフェッチする必要があります。初回の起動時に、Ignition 設定ファイルをダウンロードできるようネットワーク接続を確立するために、マシンには DHCP サーバーが必要になります。
4.1.3.3. 最小リソース要件 リンクのコピーリンクがクリップボードにコピーされました!
それぞれのクラスターマシンは、以下の最小要件を満たしている必要があります。
マシン | Operating System | vCPU | RAM | ストレージ |
---|---|---|---|---|
ブートストラップ | RHCOS | 4 | 16 GB | 120 GB |
コントロールプレーン | RHCOS | 4 | 16 GB | 120 GB |
コンピュート | RHCOS または RHEL 7.6 | 2 | 8 GB | 120 GB |
4.1.3.4. 証明書署名要求の管理 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーがプロビジョニングするインフラストラクチャーを使用する場合、クラスターの自動マシン管理へのアクセスは制限されるため、インストール後にクラスターの証明書署名要求 (CSR) のメカニズムを提供する必要があります。kube-controller-manager
は kubelet クライアント CSR のみを承認します。machine-approver
は、kubelet 認証情報を使用して要求される提供証明書の有効性を保証できません。適切なマシンがこの要求を発行したかどうかを確認できないためです。kubelet 提供証明書の要求の有効性を検証し、それらを承認する方法を判別し、実装する必要があります。
4.1.4. ユーザーによってプロビジョニングされるインフラストラクチャーの作成 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーによってプロビジョニングされるインフラストラクチャーを使用する OpenShift Container Platform クラスターをデプロイする前に、基礎となるインフラストラクチャーを作成する必要があります。
前提条件
- クラスターでサポートするインフラストラクチャーを作成する前に、「OpenShift Container Platform 4.x Tested Integrations」ページを参照してください。
手順
- DHCP を設定します。
- 必要なロードバランサーをプロビジョニングします。
- マシンのポートを設定します。
- DNS を設定します。
- ネットワーク接続を確認します。
4.1.4.1. ユーザーによってプロビジョニングされるインフラストラクチャのネットワーク要件 リンクのコピーリンクがクリップボードにコピーされました!
すべての Red Hat Enterprise Linux CoreOS (RHCOS) マシンでは、起動時に initramfs
のネットワークがマシン設定サーバーから Ignition 設定をフェッチする必要があります。
初回の起動時に、Ignition 設定ファイルをダウンロードできるようネットワーク接続を確立するために、マシンには DHCP サーバーが必要になります。
クラスターのマシンを長期間管理するために DHCP サーバーを使用することが推奨されています。DHCP サーバーが永続 IP アドレスおよびホスト名をクラスターマシンに提供するように設定されていることを確認します。
Kubernetes API サーバーはクラスターマシンのノード名を解決できる必要があります。API サーバーおよびワーカーノードが異なるゾーンに置かれている場合、デフォルトの DNS 検索ゾーンを、API サーバーでノード名を解決できるように設定することができます。もう 1 つの実行可能な方法として、ノードオブジェクトとすべての DNS 要求の両方において、ホストを完全修飾ドメイン名で常に参照することができます。
マシン間のネットワーク接続を、クラスターのコンポーネントが通信できるように設定する必要があります。すべてのマシンではクラスターの他のすべてのマシンのホスト名を解決できる必要があります。
プロトコル | ポート | 説明 |
---|---|---|
ICMP | 該当なし | ネットワーク到達性のテスト |
TCP |
|
ホストレベルのサービス。 ポート |
| Kubernetes が予約するデフォルトポート | |
| openshift-sdn | |
UDP |
| VXLAN および GENEVE |
| VXLAN および GENEVE | |
|
ポート | |
TCP/UDP |
| Kubernetes NodePort |
プロトコル | ポート | 説明 |
---|---|---|
TCP |
| etcd サーバー、ピア、およびメトリクスポート |
| Kubernetes API |
ネットワークトポロジー要件
クラスター用にプロビジョニングするインフラストラクチャーは、ネットワークトポロジーの以下の要件を満たす必要があります。
OpenShift Container Platform では、すべてのノードが、プラットフォームコンテナーのイメージをプルし、Telemetry データを Red Hat に提供するためにインターネットへの直接のアクセスが必要です。
ロードバランサー
OpenShift Container Platform をインストールする前に、2 つの Layer 4 ロードバランサーをプロビジョニングする必要があります。API には 1 つのロードバランサーが必要で、デフォルトの Ingress コントローラーには、Ingress をアプリケーションに提供する 2 番目のロードバランサーが必要です。
ポート | マシン | 内部 | 外部 | 説明 |
---|---|---|---|---|
| ブートストラップおよびコントロールプレーン。ブートストラップマシンがクラスターのコントロールプレーンを初期化した後に、ブートストラップマシンをロードバランサーから削除します。 | x | x | Kubernetes API サーバー |
| ブートストラップおよびコントロールプレーン。ブートストラップマシンがクラスターのコントロールプレーンを初期化した後に、ブートストラップマシンをロードバランサーから削除します。 | x | マシン設定サーバー | |
| デフォルトで Ingress ルーター Pod、コンピュート、またはワーカーを実行するマシン。 | x | x | HTTPS トラフィック |
| デフォルトで Ingress ルーター Pod、コンピュート、またはワーカーを実行するマシン。 | x | x | HTTP トラフィック |
Ingress ルーターの作業用の設定が OpenShift Container Platform クラスターに必要です。コントロールプレーンの初期化後に Ingress ルーターを設定する必要があります。
Ethernet アダプターのハードウェアアドレス要件
クラスターの仮想マシンをプロビジョニングする場合、各仮想マシンに設定されたイーサネットインターフェースは VMware Organizationally Unique Identifier (OUI) 割り当て範囲から MAC アドレスを使用する必要があります。
-
00:05:69:00:00:00
-00:05:69:FF:FF:FF
-
00:0c:29:00:00:00
-00:0c:29:FF:FF:FF
-
00:1c:14:00:00:00
-00:1c:14:FF:FF:FF
-
00:50:56:00:00:00
-00:50:56:FF:FF:FF
VMware OUI 外の MAC アドレスが使用される場合、クラスターのインストールは成功しません。
4.1.4.2. ユーザーによってプロビジョニングされるインフラストラクチャーの DNS 要件 リンクのコピーリンクがクリップボードにコピーされました!
以下の DNS レコードは、ユーザーによってプロビジョニングされるインフラストラクチャーを使用する OpenShift Container Platform クラスターに必要です。各レコードで、 <cluster_name>
はクラスター名で、<base_domain>
は、install-config.yaml
ファイルに指定するクラスターのベースドメインです。
Component | レコード | 説明 |
---|---|---|
Kubernetes API |
| この DNS レコードは、コントロールプレーンマシンのロードバランサーを参照する必要があります。このレコードは、クラスター外のクライアントおよびクラスター内のすべてのノードで解決できる必要があります。 |
| この DNS レコードは、コントロールプレーンマシンのロードバランサーを参照する必要があります。このレコードは、クラスター内のすべてのノードで解決できる必要があります。 重要 API サーバーは、 Kubernetes に記録されるホスト名でワーカーノードを解決できる必要があります。これがノード名を解決できない場合、プロキシーされる API 呼び出しが失敗し、Pod からログを取得できなくなる可能性があります。 | |
Routes |
| Ingress ルーター Pod を実行するマシンをターゲットにするロードバランサーを参照するワイルドカード DNS レコードです。このレコードは、クラスター外のクライアントおよびクラスター内のすべてのノードで解決できる必要があります。 |
etcd |
|
OpenShift Container Platform では、各 etcd インスタンスの DNS レコードがインスタンスをホストするコントロールプレーンマシンを参照する必要があります。etcd インスタンスは |
|
それぞれのコントロールプレーンマシンについて、OpenShift Container Platform では、そのマシンに優先度 _service._proto.name. TTL class SRV priority weight port target.
|
4.1.5. SSH プライベートキーの生成およびエージェントへの追加 リンクのコピーリンクがクリップボードにコピーされました!
インストールのデバッグまたは障害復旧を実行する必要のある実稼働用の OpenShift Container Platform クラスターでは、ssh-agent
プロセスが使用する SSH キーをインストーラーに指定する必要があります。
このキーを使用して、ユーザー core
としてマスターノードに対して SSH を実行できます。クラスターをデプロイする際に、キーは core
ユーザーの ~/.ssh/authorized_keys
一覧に追加されます。
AWS キーペアなどのプラットフォームに固有の方法で設定したキーではなく、ローカルキーを使用する必要があります。
手順
パスワードなしの認証に設定されている SSH キーがコンピューター上にない場合は、これを作成します。たとえば、Linux オペレーティングシステムを使用するコンピューターで以下のコマンドを実行します。
ssh-keygen -t rsa -b 4096 -N '' \ -f <path>/<file_name>
$ ssh-keygen -t rsa -b 4096 -N '' \ -f <path>/<file_name>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
~/.ssh/id_rsa
などの、SSH キーのパスおよびファイル名を指定します。
このコマンドを実行すると、指定した場所にパスワードを必要としない SSH キーが生成されます。
ssh-agent
プロセスをバックグラウンドタスクとして開始します。eval "$(ssh-agent -s)"
$ eval "$(ssh-agent -s)" Agent pid 31874
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SSH プライベートキーを
ssh-agent
に追加します。ssh-add <path>/<file_name>
$ ssh-add <path>/<file_name>
1 Identity added: /home/<you>/<path>/<file_name> (<computer_name>)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
~/.ssh/id_rsa
などの、SSH プライベートキーのパスおよびファイル名を指定します。
次のステップ
OpenShift Container Platform をインストールする際に、SSH パブリックキーをインストーラーに指定します。クラスターを独自にプロビジョニングするインフラストラクチャーにインストールする場合は、このキーをクラスターのマシンに指定する必要があります。
4.1.6. インストールプログラムの取得 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform をインストールする前に、インストールファイルをローカルコンピューターにダウンロードします。
前提条件
- Linux または macOS を使用するコンピューターからクラスターをインストールする必要があります。
- インストールプログラムをダウンロードするには、300 MB のローカルディスク領域が必要です。
手順
- Red Hat OpenShift Cluster Manager サイトの「Infrastructure Provider」ページにアクセスします。Red Hat アカウントがある場合は、認証情報を使ってログインします。アカウントがない場合はこれを作成します。
選択するインストールタイプのページに移動し、オペレーティングシステムのインストールプログラムをダウンロードし、ファイルをインストール設定ファイルを保存するディレクトリーに配置します。
重要インストールプログラムは、クラスターのインストールに使用するコンピューターにいくつかのファイルを作成します。クラスターインストールの完了後は、インストールプログラムおよびインストールプログラムが作成するファイルの両方を保持する必要があります。
インストールプログラムを展開します。たとえば、Linux オペレーティングシステムを使用するコンピューターで以下のコマンドを実行します。
tar xvf <installation_program>.tar.gz
$ tar xvf <installation_program>.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Red Hat OpenShift Cluster Manager サイトの「Pull Secret」ページから、インストールプルシークレットを
.txt
ファイルとしてダウンロードするか、またはこれをクリップボードにコピーします。このプルシークレットを使用し、OpenShift Container Platform コンポーネントのコンテナーイメージを提供する、Quay.io などの組み込まれた各種の認証局によって提供されるサービスで認証できます。
4.1.7. インストール設定ファイルの手動作成 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーによってプロビジョニングされるインフラストラクチャーを使用する OpenShift Container Platform のインストールでは、インストール設定ファイルを手動で生成する必要があります。
前提条件
- 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
ファイルは、インストールプロセスの次の手順で使用されます。この時点でこれをバックアップする必要があります。
4.1.7.1. VMware vSphere のサンプル install-config.yaml ファイル リンクのコピーリンクがクリップボードにコピーされました!
install-config.yaml
ファイルをカスタマイズして、OpenShift Container Platform クラスターのプラットフォームについての詳細を指定するか、または必要なパラメーターの値を変更することができます。
- 1
- クラスターのベースドメイン。すべての DNS レコードはこのベースのサブドメインである必要があり、クラスター名が含まれる必要があります。
- 2 5
controlPlane
セクションは単一マッピングですが、コンピュートセクションはマッピングのシーケンスになります。複数の異なるデータ構造の要件を満たすには、compute
セクションの最初の行はハイフン-
で始め、controlPlane
セクションの最初の行はハイフンで始めることができません。どちらのセクションも、現時点では単一のマシンプールを定義しますが、OpenShift Container Platform の今後のバージョンでは、インストール時の複数のコンピュートプールの定義をサポートする可能性があります。1 つのコントロールプレーンプールのみが使用されます。- 3 6
- 同時マルチスレッドまたは
hyperthreading
を有効/無効にするかどうか。デフォルトでは、同時スレッドはマシンのコアのパフォーマンスを上げるために有効にされます。パラメーター値をDisabled
に設定するとこれを無効にすることができます。同時マルチスレッドを無効にする場合は、これをすべてのクラスターマシンで無効にする必要があります。重要同時スレッドを無効にする場合は、容量計画においてマシンパフォーマンスの大幅な低下が考慮に入れられていることを確認します。同時マルチスレッドを無効にする場合は、マシンで最低でも 8 CPU および 32 GB の RAM を使用する必要があります。
- 4
replicas
パラメーターの値を0
に設定する必要があります。このパラメーターはクラスターが作成し、管理するワーカーの数を制御します。これは、ユーザーによってプロビジョニングされるインフラストラクチャーを使用する場合にクラスターが実行しない機能です。OpenShift Container Platform のインストールが終了する前に、クラスターが使用するワーカーマシンを手動でデプロイする必要があります。- 7
- クラスターに追加するコントロールプレーンマシンの数。クラスターをこの値をクラスターの etcd エンドポイント数として使用するため、値はデプロイするコントロールプレーンマシンの数に一致する必要があります。
- 8
- DNS レコードに指定したクラスター名。
- 9
- vCenter サーバーの完全修飾ホスト名または IP アドレス。
- 10
- サーバーにアクセスするユーザーの名前。このユーザーには、少なくとも vSphere の動的永続ボリュームのプロビジョニングに必要なロールおよび権限がなければなりません。
- 11
- vSphere ユーザーに関連付けられたパスワード。
- 12
- vSphere データセンター。
- 13
- 使用するデフォルトの vSphere データストア。
- 14
- Red Hat OpenShift Cluster Manager サイトの「Pull Secret」ページから取得したプルシークレット。このプルシークレットを使用し、OpenShift Container Platform コンポーネントのコンテナーイメージを提供する、Quay.io などの組み込まれた各種の認証局によって提供されるサービスで認証できます。
- 15
- Red Hat Enterprise Linux CoreOS (RHCOS) の
core
ユーザーのデフォルト SSH キーの公開部分。注記インストールのデバッグまたは障害復旧を実行する必要のある実稼働用の OpenShift Container Platform クラスターでは、
ssh-agent
プロセスが使用する SSH キーをインストーラーに指定する必要があります。
4.1.8. Ignition 設定ファイルの作成 リンクのコピーリンクがクリップボードにコピーされました!
クラスターマシンは手動で起動する必要があるため、クラスターがマシンを作成するために必要な Ignition 設定ファイルを生成する必要があります。
インストールプログラムが生成する Ignition 設定ファイルには、24 時間が経過すると期限切れになる証明書が含まれます。最初の証明書のローテーションが正常に実行されるようにするには、クラスターのインストールを完了し、クラスターを動作が低下していない状態で 24 時間実行し続ける必要があります。
前提条件
- OpenShift Container Platform インストールプログラム、およびクラスターのプルシークレットを取得すること。
手順
Ignition 設定ファイルを取得します。
./openshift-install create ignition-configs --dir=<installation_directory>
$ ./openshift-install create ignition-configs --dir=<installation_directory>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<installation_directory>
については、インストールプログラムが作成するファイルを保存するためにディレクトリー名を指定します。
重要install-config.yaml
ファイルを作成している場合、それが含まれるディレクトリーを指定します。または、空のディレクトリーを指定します。ブートストラップ X.509 証明書などの一部のインストールアセットの有効期限は短く設定されているため、インストールディレクトリーを再利用することができません。別のクラスターインストールの個別のファイルを再利用する必要がある場合は、それらをディレクトリーにコピーすることができます。ただし、インストールアセットのファイル名はリリース間で変更される可能性があります。インストールファイルを以前のバージョンの OpenShift Container Platform からコピーする場合は注意してコピーを行ってください。以下のファイルはディレクトリーに生成されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.1.9. vSphere での Red Hat Enterprise Linux CoreOS (RHCOS) マシンの作成 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーによってプロビジョニングされるインフラストラクチャーが含まれるクラスターを VMware vSphere にインストールする前に、それが使用する RHCOS マシンを vSphere ホストに作成する必要があります。
前提条件
- クラスターの Ignition 設定ファイルを取得していること。
- お使いのコンピューターからアクセスでき、作成するマシンがアクセスできる HTTP サーバーへのアクセスがあること。
- vSphere クラスターを作成します。
手順
<installation_directory>/bootstrap.ign
という名前のインストールプログラムが作成したブートストラップ Ignition 設定ファイルを HTTP サーバーにアップロードします。このファイルの URL をメモします。ブートストラップ Ignition 設定ファイルはサイズが大きすぎて vApp プロパティーに適さないため、これをホストする必要があります。
ブートストラップノードの以下の二次的な Ignition 設定ファイルを、
<installation_directory>/append-bootstrap.ign
としてコンピューターに保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ホストしているブートストラップの Ignition 設定ファイルの URL を指定します。
ブートストラップマシンの仮想マシン (VM) を作成する場合に、この Ignition 設定ファイルを使用します。
マスター、ワーカー、および二次的なブートストラップ Ignition 設定ファイルを Base64 エンコーディングに変換します。
たとえば、Linux オペレーティングシステムを使用する場合、
base64
コマンドを使用してファイルをエンコードできます。base64 -w0 <installation_directory>/master.ign > <installation_directory>/master.64 base64 -w0 <installation_directory>/worker.ign > <installation_directory>/worker.64 base64 -w0 <installation_directory>/append-bootstrap.ign > <installation_directory>/append-bootstrap.64
$ base64 -w0 <installation_directory>/master.ign > <installation_directory>/master.64 $ base64 -w0 <installation_directory>/worker.ign > <installation_directory>/worker.64 $ base64 -w0 <installation_directory>/append-bootstrap.ign > <installation_directory>/append-bootstrap.64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat カスタマーポータルの「製品のダウンロード」ページまたは「RHCOS イメージミラー」ページから、RHCOS OVA イメージを取得します。
重要RHCOS イメージは OpenShift Container Platform の各リリースごとに変更されない可能性があります。インストールする OpenShift Container Platform バージョンと等しいか、それ以下のバージョンの内で最も新しいバージョンのイメージをダウンロードする必要があります。利用可能な場合は、OpenShift Container Platform バージョンに一致するイメージのバージョンを使用します。
ファイル名には、
rhcos-<version>-<architecture>-vmware.ova
形式の OpenShift Container Platform のバージョン番号が含まれます。vSphere クライアントで、仮想マシンを保管するフォルダーをデータセンターに作成します。
- VMs and Templates ビューをクリックします。
- データセンターの名前を右クリックします。
-
New Folder
New VM and Template Folder をクリックします。 -
表示されるウィンドウで、フォルダー名を入力します。フォルダー名は、
install-config.yaml
ファイルで指定したクラスター名と一致している必要があります。
vSphere クライアントで、OVA イメージのテンプレートを作成します。
注記以下の手順では、すべてのクラスターマシンに同じテンプレートを使用し、仮想マシンのプロビジョニングの際に該当するマシンタイプの Ignition 設定ファイルの場所を指定します。
- Hosts and Clusters タブで、クラスターの名前を右クリックし、Deploy OVF Template をクリックします。
- Select an OVF タブで、ダウンロードした RHCOS OVA ファイルの名前を指定します。
- Select a name and folder タブで、RHCOS などの Virtual machine name を設定し、vSphere クラスターの名前をクリックし、直前のステップで作成したフォルダーを選択します。
- Select a compute resource タブで、vSphere クラスターの名前をクリックします。
Select storage タブで、仮想マシンのストレージオプションを設定します。
- Thin Provision を選択します。
-
install-config.yaml
ファイルで指定したデータストアを選択します。
- Select network タブで、クラスターに設定したネットワークを指定します (ある場合)。
- すべてのクラスターマシンタイプに同じテンプレートを使用する予定の場合、Customize template タブに値を指定しないでください。
テンプレートがデプロイされた後に、マシンの仮想マシンをクラスターにデプロイします。
-
テンプレートの名前を右クリックし、Clone
Clone to Virtual Machine をクリックします。 -
Select a name and folder タブで、仮想マシンの名前を指定します。
control-plane-0
またはcompute-1
などのように、マシンタイプを名前に含めることができるかもしれません。 - Select a name and folder タブで、クラスターに作成したフォルダーの名前を選択します。
- Select a compute resource タブで、データセンター内のホストの名前を選択します。
- オプション: Select storage タブで、ストレージオプションをカスタマイズします。
- Select clone options で、Customize this virtual machine’s hardware を選択します。
Customize hardware タブで、VM Options
Advanced をクリックします。 - オプション: クラスターのパフォーマンスに問題が生じる場合は、Latency Sensitivity 一覧から High を選択します。
Edit Configuration をクリックし、Configuration Parameters ウィンドウで Add Configuration Params をクリックします。以下のパラメーター名および値を定義します。
-
guestinfo.ignition.config.data
: このマシンファイルの base64 でエンコードした Ignition 設定ファイルの内容を貼り付けます。 -
guestinfo.ignition.config.data.encoding
:base64
を指定します。 -
disk.EnableUUID
:TRUE
を指定します。
-
または、仮想マシンの電源を入れる前に vApp プロパティーを使用して追加します。
- vCenter Server インベントリーから仮想マシンに移動します。
- Configure タブで Settings を展開し、vAPP options を選択します。
- スクロールダウンし、Properties の下で上記の設定を適用します。
- Customize hardware タブの Virtual Hardware パネルで、必要に応じて指定した値を変更します。RAM、CPU、およびディスクストレージの量がマシンタイプの最小要件を満たすことを確認してください。
- 設定を完了し、仮想マシンの電源をオンにします。
-
テンプレートの名前を右クリックし、Clone
各マシンごとに先の手順に従って、クラスターの残りのマシンを作成します。
重要この時点でブートストラップおよびコントロールプレーンマシンを作成する必要があります。一部の Pod はデフォルトでコンピュートマシンにデプロイされるため、クラスターのインストール前に、2 つ以上のコンピュートマシンを作成します。
4.1.10. OpenShift コマンドラインインターフェースのインストール リンクのコピーリンクがクリップボードにコピーされました!
oc
として知られる OpenShift コマンドラインインターフェース (CLI) をダウンロードし、インストールすることができます。
以前のバージョンの oc
をインストールしている場合、これを使用して OpenShift Container Platform 4.1 のすべてのコマンドを実行することはできません。新規バージョンの oc
をダウンロードし、インストールする必要があります。
手順
- Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページから、選択するインストールタイプのページに移動し、Download Command-line Tools をクリックします。
表示されているサイトから、オペレーティングシステムの圧縮されたファイルをダウンロードします。
注記oc
は Linux、Windows、または macOS にインストールできます。- 圧縮ファイルを展開して、指定のパスにあるディレクトリーに配置します。
4.1.11. クラスターの作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform クラスターを作成するには、インストールプログラムで生成した Ignition 設定ファイルを使用してプロビジョニングしたマシンで、ブートストラッププロセスが完了するのを待機します。
前提条件
- クラスターに必要なインフラストラクチャーを作成すること。
- インストールプログラムを取得し、クラスターの Ignition 設定ファイルを生成していること。
- クラスターの RHCOS マシンを作成するために Ignition 設定ファイルを使用していること。
- 使用するマシンでインターネットに直接アクセスできること。
手順
ブートストラッププロセスをモニターします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Kubernetes API サーバーでこれがコントロールプレーンマシンにブートストラップされていることを示すシグナルが出されるとコマンドは成功します。
ブートストラッププロセスが完了したら、ブートストラップマシンをロードバランサーから削除します。
重要この時点で、ブートストラップマシンをロードバランサーから削除する必要があります。さらに、マシン自体を削除し、再フォーマットすることができます。
4.1.12. クラスターへのログイン リンクのコピーリンクがクリップボードにコピーされました!
クラスター kubeconfig
ファイルをエクスポートし、デフォルトシステムユーザーとしてクラスターにログインできます。kubeconfig
ファイルには、クライアントを正しいクラスターおよび API サーバーに接続するために CLI で使用されるクラスターについての情報が含まれます。このファイルはクラスターに固有のファイルであり、OpenShift Container Platform のインストール時に作成されます。
前提条件
- OpenShift Container Platform クラスターのデプロイ。
-
oc
CLI のインストール。
手順
kubeadmin
認証情報をエクスポートします。export KUBECONFIG=<installation_directory>/auth/kubeconfig oc whoami
$ export KUBECONFIG=<installation_directory>/auth/kubeconfig
1 $ oc whoami system:admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<installation_directory>
については、インストールファイルを保存したディレクトリーへのパスを指定します。
4.1.13. マシンの CSR の承認 リンクのコピーリンクがクリップボードにコピーされました!
マシンをクラスターに追加する際に、追加したそれぞれのマシンについて 2 つの保留状態の証明書署名要求 (CSR) が生成されます。これらの CSR が承認されていることを確認するか、または必要な場合はそれらを承認してください。
前提条件
- マシンをクラスターに追加していること。
手順
クラスターがマシンを認識していることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力には作成したすべてのマシンが一覧表示されます。
保留中の証明書署名要求 (CSR) を確認し、クラスターに追加したそれぞれのマシンのクライアントおよびサーバー要求に
Pending
またはApproved
ステータスが表示されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、2 つのマシンがクラスターに参加しています。この一覧にはさらに多くの承認された CSR が表示される可能性があります。
追加したマシンの保留中の CSR すべてが
Pending
ステータスになった後に CSR が承認されない場合には、クラスターマシンの CSR を承認します。注記CSR のローテーションは自動的に実行されるため、クラスターにマシンを追加後 1 時間以内に CSR を承認してください。1 時間以内に承認しない場合には、証明書のローテーションが行われ、各ノードに 3 つ以上の証明書が存在するようになります。これらの証明書すべてを承認する必要があります。最初の CSR の承認後、後続のノードクライアント CSR はクラスターの
kube-controller-manger
によって自動的に承認されます。kubelet 提供証明書の要求を自動的に承認する方法を実装する必要があります。それらを個別に承認するには、それぞれの有効な CSR について以下のコマンドを実行します。
oc adm certificate approve <csr_name>
$ oc adm certificate approve <csr_name>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<csr_name>
は、現行の CSR の一覧からの CSR の名前です。
すべての保留中の CSR を承認するには、以下のコマンドを実行します。
oc get csr -o go-template='{{range .items}}{{if not .status}}{{.metadata.name}}{{"\n"}}{{end}}{{end}}' | xargs oc adm certificate approve
$ oc get csr -o go-template='{{range .items}}{{if not .status}}{{.metadata.name}}{{"\n"}}{{end}}{{end}}' | xargs oc adm certificate approve
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.1.14. Operator の初期設定 リンクのコピーリンクがクリップボードにコピーされました!
コントロールプレーンの初期化後に、一部の Operator を利用可能にするためにそれらをすぐに設定する必要があります。
前提条件
- コントロールプレーンが初期化されていること。
手順
クラスターコンポーネントがオンラインになることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 利用不可の Operator を設定します。
4.1.14.1. イメージレジストリーストレージの設定 リンクのコピーリンクがクリップボードにコピーされました!
image-registry
Operator が利用できない場合、そのストレージを設定する必要があります。実稼働クラスターに必要な PersistentVolume の設定方法と、実稼働用ではないクラスターにのみ使用できる空のディレクトリーをストレージの場所として設定する方法が表示されます。
4.1.14.1.1. VMware vSphere のレジストリーストレージの設定 リンクのコピーリンクがクリップボードにコピーされました!
クラスター管理者は、インストール後にレジストリーをストレージを使用できるように設定する必要があります。
前提条件
- クラスター管理者のパーミッション。
- VMware vSphere 上のクラスター。
ReadWriteMany
アクセスモードのプロビジョニングされた永続ボリューム (PV)(例:NFS
)。重要vSphere ボリュームは
ReadWriteMany
アクセスモードをサポートしません。レジストリーストレージを設定するには、NFS
などの異なるストレージバックエンドを使用する必要があります。- 容量は「100Gi」以上である。
手順
-
レジストリーをストレージを使用できるように設定するには、
configs.imageregistry/cluster
リソースのspec.storage.pvc
を変更します。 レジストリー Pod がないことを確認します。
oc get pod -n openshift-image-registry
$ oc get pod -n openshift-image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ストレージタイプが emptyDIR
の場合、レプリカ数が 1
を超えることはありません。ストレージタイプが NFS
で、レジストリー Pod を replica>1
を設定してスケールアップする必要がある場合、no_wdelay
マウントオプションを有効にする必要があります。以下は例になります。
cat /etc/exports /mnt/data *(rw,sync,no_wdelay,no_root_squash,insecure,fsid=0) sh-4.3# exportfs -rv exporting *:/mnt/data
# cat /etc/exports
/mnt/data *(rw,sync,no_wdelay,no_root_squash,insecure,fsid=0)
sh-4.3# exportfs -rv
exporting *:/mnt/data
レジストリー設定を確認します。
oc edit configs.imageregistry.operator.openshift.io
$ oc edit configs.imageregistry.operator.openshift.io storage: pvc: claim:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow claim
フィールドを空のままにし、image-registry-storage
PVC の自動作成を可能にします。clusteroperator
ステータスを確認します。oc get clusteroperator image-registry
$ oc get clusteroperator image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.1.14.1.2. 実稼働以外のクラスターでのイメージレジストリーのストレージの設定 リンクのコピーリンクがクリップボードにコピーされました!
イメージレジストリー Operator のストレージを設定する必要があります。実稼働用以外のクラスターの場合、イメージレジストリーは空のディレクトリーに設定することができます。これを実行する場合、レジストリーを再起動するとすべてのイメージが失われます。
手順
イメージレジストリーストレージを空のディレクトリーに設定するには、以下を実行します。
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"storage":{"emptyDir":{}}}}'
$ oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"storage":{"emptyDir":{}}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 警告実稼働用以外のクラスターにのみこのオプションを設定します。
イメージレジストリー Operator がそのコンポーネントを初期化する前にこのコマンドを実行する場合、
oc patch
コマンドは以下のエラーを出して失敗します。Error from server (NotFound): configs.imageregistry.operator.openshift.io "cluster" not found
Error from server (NotFound): configs.imageregistry.operator.openshift.io "cluster" not found
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 数分待機した後に、このコマンドを再び実行します。
4.1.15. ユーザーによってプロビジョニングされるインフラストラクチャーでのインストールの完了 リンクのコピーリンクがクリップボードにコピーされました!
Operator 設定の完了後に、提供するインフラストラクチャーでのクラスターのインストールを終了できます。
前提条件
- コントロールプレーンが初期化されていること。
- Operator の初期設定を完了していること。
手順
すべてのクラスターコンポーネントがオンラインであることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow すべてのクラスター Operator が
AVAILABLE
の場合、インストールを完了することができます。クラスターの完了をモニターします。
./openshift-install --dir=<installation_directory> wait-for install-complete
$ ./openshift-install --dir=<installation_directory> wait-for install-complete
1 INFO Waiting up to 30m0s for the cluster to initialize...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<installation_directory>
については、インストールファイルを保存したディレクトリーへのパスを指定します。
Cluster Version Operator が Kubernetes API サーバーから OpenShift Container Platform クラスターのデプロイを終了するとコマンドは成功します。
重要インストールプログラムが生成する Ignition 設定ファイルには、24 時間が経過すると期限切れになる証明書が含まれます。最初の証明書のローテーションが正常に実行されるようにするには、クラスターを動作が低下していない状態で 24 時間実行し続ける必要があります。
Kubernetes API サーバーが Pod と通信していることを確認します。
すべての Pod の一覧を表示するには、以下のコマンドを使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを使用して、直前のコマンドの出力に一覧表示される Pod のログを表示します。
oc logs <pod_name> -n <namespace>
$ oc logs <pod_name> -n <namespace>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 直前のコマンドの出力にあるように、Pod 名および namespace を指定します。
Pod のログが表示される場合、Kubernetes API サーバーはクラスターマシンと通信できます。
次のステップ
- クラスターをカスタマイズします。
- 必要な場合は、Telemetry をオプトアウトすることができます。