第14章 オプション: vSphere へのインストール
OpenShift Container Platform を vSphere にインストールする場合、Assisted Installer は OpenShift Container Platform クラスターを vSphere プラットフォームと統合できます。これにより、Machine API が vSphere に公開され、自動スケーリングが有効になります。
14.1. vSphere へのホストの追加
オンラインの vSphere クライアントまたは govc
vSphere CLI ツールを使用して、Assisted Installer クラスターにホストを追加できます。次の手順は、govc
CLI ツールを使用してホストを追加する方法を示しています。オンラインの vSphere Client を使用するには、vSphere のドキュメントを参照してください。
vSphere govc
CLI を使用して vSphere にホストを追加するには、Assisted Installer から検出イメージ ISO を生成します。最小限の検出イメージ ISO がデフォルト設定です。このイメージには、ネットワークを使用してホストを起動するために必要なものだけが含まれています。コンテンツの大部分は、起動時にダウンロードされます。ISO イメージのサイズは約 100MB です。
これが完了したら、vSphere プラットフォームのイメージを作成し、vSphere 仮想マシンを作成する必要があります。
前提条件
- vSphere 7.0.2 以降を使用している。
-
vSphere
govc
CLI ツールがインストールされ、設定されている。 -
vSphere で、
clusterSet disk.enableUUID
を true に設定している。 - Assisted Installer の UI でクラスターを作成している。または
以下を行った。
- API を使用して、Assisted Installer のクラスタープロファイルとインフラストラクチャー環境を作成している。
-
シェルのインフラストラクチャー環境 ID が
$INFRA_ENV_ID
としてエクスポートされている。 - 設定が完了している。
手順
- Ignition ファイルを使用して起動する場合は、検出イメージを設定します。
- Cluster details の Integrate with external partner platforms ドロップダウンリストから vSphere を選択します。Include custom manifest チェックボックスはオプションです。
- Host discovery で、Add hosts ボタンをクリックし、プロビジョニングタイプを選択します。
core
ユーザーとして vSphere 仮想マシンに接続できるように、SSH 公開鍵を追加します。クラスターホストにログインすると、インストール中にデバッグ情報を入手できます。- ローカルマシンに既存の SSH キーペアがない場合は、クラスターノード SSH アクセス用のキーペアの生成 の手順に従います。
-
SSH public key フィールドで Browse をクリックして、SSH 公開鍵を含む
id_rsa.pub
ファイルをアップロードします。あるいは、ファイルマネージャーからファイルをフィールドにドラッグアンドドロップします。ファイルマネージャーでファイルを表示するには、メニューで Show hidden files を選択します。
目的の検出イメージ ISO を選択します。
注記Minimal image file: Provision with virtual media では、起動に必要なデータをフェッチする小さなイメージがダウンロードされます。
Networking で、Cluster-managed networking または User-managed networking を選択します。
- オプション: クラスターホストがプロキシーの使用を必要とするファイアウォールの内側にある場合は、Configure cluster-wide proxy settings を選択します。プロキシーサーバーの HTTP および HTTPS URL のユーザー名、パスワード、IP アドレス、およびポートを入力します。
- オプション: クラスターホストが再暗号化中間者 (MITM) プロキシーを使用するネットワーク内にある場合、またはクラスターがコンテナーイメージレジストリーなどの他の目的で証明書を信頼する必要がある場合は、Configure cluster-wide trusted certificates を選択し、追加の証明書を追加します。
- オプション: Ignition ファイルを使用して起動する場合は、検出イメージを設定します。詳しくは、検出イメージの設定 を参照してください。
- Generate Discovery ISO をクリックします。
- Discovery ISO URL をコピーします。
検出 ISO をダウンロードします。
wget - O vsphere-discovery-image.iso <discovery_url>
$ wget - O vsphere-discovery-image.iso <discovery_url>
Copy to Clipboard Copied! <discovery_url>
は、前の手順の Discovery ISO URL に置き換えます。コマンドラインで、電源を落とし、既存の仮想マシンをすべて破棄します。
for VM in $(/usr/local/bin/govc ls /<datacenter>/vm/<folder_name>)
$ for VM in $(/usr/local/bin/govc ls /<datacenter>/vm/<folder_name>) do /usr/local/bin/govc vm.power -off $VM /usr/local/bin/govc vm.destroy $VM done
Copy to Clipboard Copied! <datacenter>
をデータセンターの名前に置き換えます。<folder_name>
を仮想マシンのインベントリーフォルダーの名前に置き換えます。既存の ISO イメージがある場合は、データストアから削除します。
govc datastore.rm -ds <iso_datastore> <image>
$ govc datastore.rm -ds <iso_datastore> <image>
Copy to Clipboard Copied! <iso_datastore>
をデータストアの名前に置き換えます。image
を ISO イメージの名前に置き換えます。Assisted Installer の検出 ISO をアップロードします。
govc datastore.upload -ds <iso_datastore> vsphere-discovery-image.iso
$ govc datastore.upload -ds <iso_datastore> vsphere-discovery-image.iso
Copy to Clipboard Copied! <iso_datastore>
をデータストアの名前に置き換えます。注記クラスター内のすべてのノードは、検出イメージから起動する必要があります。
3 つのコントロールプレーン (マスター) ノードを起動します。
govc vm.create -net.adapter <network_adapter_type> \ -disk.controller <disk_controller_type> \ -pool=<resource_pool> \ -c=16 \ -m=32768 \ -disk=120GB \ -disk-datastore=<datastore_file> \ -net.address="<nic_mac_address>" \ -iso-datastore=<iso_datastore> \ -iso="vsphere-discovery-image.iso" \ -folder="<inventory_folder>" \ <hostname>.<cluster_name>.example.com
$ govc vm.create -net.adapter <network_adapter_type> \ -disk.controller <disk_controller_type> \ -pool=<resource_pool> \ -c=16 \ -m=32768 \ -disk=120GB \ -disk-datastore=<datastore_file> \ -net.address="<nic_mac_address>" \ -iso-datastore=<iso_datastore> \ -iso="vsphere-discovery-image.iso" \ -folder="<inventory_folder>" \ <hostname>.<cluster_name>.example.com
Copy to Clipboard Copied! 詳細は、vm.create を参照してください。
注記前述の例は、コントロールプレーンノードに必要な最小限のリソースを示しています。
少なくとも 2 つのワーカーノードを起動します。
govc vm.create -net.adapter <network_adapter_type> \ -disk.controller <disk_controller_type> \ -pool=<resource_pool> \ -c=4 \ -m=8192 \ -disk=120GB \ -disk-datastore=<datastore_file> \ -net.address="<nic_mac_address>" \ -iso-datastore=<iso_datastore> \ -iso="vsphere-discovery-image.iso" \ -folder="<inventory_folder>" \ <hostname>.<cluster_name>.example.com
$ govc vm.create -net.adapter <network_adapter_type> \ -disk.controller <disk_controller_type> \ -pool=<resource_pool> \ -c=4 \ -m=8192 \ -disk=120GB \ -disk-datastore=<datastore_file> \ -net.address="<nic_mac_address>" \ -iso-datastore=<iso_datastore> \ -iso="vsphere-discovery-image.iso" \ -folder="<inventory_folder>" \ <hostname>.<cluster_name>.example.com
Copy to Clipboard Copied! 詳細は、vm.create を参照してください。
注記上記の例は、ワーカーノードに必要な最小限のリソースを示しています。
仮想マシンが実行されていることを確認します。
govc ls /<datacenter>/vm/<folder_name>
$ govc ls /<datacenter>/vm/<folder_name>
Copy to Clipboard Copied! <datacenter>
をデータセンターの名前に置き換えます。<folder_name>
を仮想マシンのインベントリーフォルダーの名前に置き換えます。2 分後、仮想マシンをシャットダウンします。
for VM in $(govc ls /<datacenter>/vm/<folder_name>)
$ for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.power -s=true $VM done
Copy to Clipboard Copied! <datacenter>
をデータセンターの名前に置き換えます。<folder_name>
を仮想マシンのインベントリーフォルダーの名前に置き換えます。disk.enableUUID
設定をTRUE
に設定します。for VM in $(govc ls /<datacenter>/vm/<folder_name>)
$ for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.change -vm $VM -e disk.enableUUID=TRUE done
Copy to Clipboard Copied! <datacenter>
をデータセンターの名前に置き換えます。<folder_name>
を仮想マシンのインベントリーフォルダーの名前に置き換えます。注記vSphere で自動スケーリングを有効にするには、すべてのノードで
disk.enableUUID
をTRUE
に設定する必要があります。仮想マシンを再起動します。
for VM in $(govc ls /<datacenter>/vm/<folder_name>)
$ for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.power -on=true $VM done
Copy to Clipboard Copied! <datacenter>
をデータセンターの名前に置き換えます。<folder_name>
を仮想マシンのインベントリーフォルダーの名前に置き換えます。-
Assisted Installer のユーザーインターフェイスに戻り、Assisted Installer がホストを検出し、それぞれが
Ready
ステータスになるまで待ちます。 - 必要に応じてロールを選択します。
- Networking で、Allocate IPs via DHCP server のチェックを外します。
- API VIP アドレスを設定します。
- Ingress VIP アドレスを設定します。
- インストール手順を続行します。