第14章 オプション: vSphere へのインストール

OpenShift Container Platform を vSphere にインストールする場合、支援付きインストーラーは OpenShift Container Platform クラスターを vSphere プラットフォームと統合できます。これにより、Machine API が vSphere に公開され、自動スケーリングが有効になります。

14.1. vSphere へのホストの追加

オンラインの vSphere クライアントまたは govc vSphere CLI ツールを使用して、支援付きインストーラークラスターにホストを追加できます。次の手順は、govc CLI ツールを使用してホストを追加する方法を示しています。オンラインの vSphere Client を使用するには、vSphere のドキュメントを参照してください。

vSphere govc CLI を使用して vSphere にホストを追加するには、支援付きインストーラーから検出イメージ ISO を生成します。最小限の検出イメージ ISO がデフォルト設定です。このイメージには、ネットワークを使用してホストを起動するために必要なものだけが含まれています。コンテンツの大部分は、起動時にダウンロードされます。ISO イメージのサイズは約 100MB です。

これが完了したら、vSphere プラットフォームのイメージを作成し、vSphere 仮想マシンを作成する必要があります。

前提条件

  • vSphere 7.0.2 以降を使用している。
  • vSphere govc CLI ツールがインストールされ、設定されている。
  • vSphere で、clusterSet disk.enableUUIDtrue に設定している。
  • 支援付きインストーラーの UI でクラスターを作成している。または
  • 以下を行った。

    • API を使用して、支援付きインストーラーのクラスタープロファイルとインフラストラクチャー環境を作成している。
    • シェルのインフラストラクチャー環境 ID が $INFRA_ENV_ID としてエクスポートされている。
    • 設定が完了している。

手順

  1. Ignition ファイルを使用して起動する場合は、検出イメージを設定します。
  2. 支援付きインストーラーの UI から ISO を生成してダウンロードします。

    1. Host discovery で、Add hosts ボタンをクリックし、インストールメディアを選択します。
    2. Minimal image file: Provision with virtual media を選択して、起動に必要なデータを取得する小さなイメージをダウンロードします。
    3. core ユーザーとして vSphere 仮想マシンに接続できるように、SSH 公開鍵を追加します。クラスターホストにログインすると、インストール中にデバッグ情報を入手できます。
    4. オプション: クラスターホストがプロキシーの使用を必要とするファイアウォールの内側にある場合は、Configure cluster-wide proxy settings を選択します。プロキシーサーバーの HTTP および HTTPS URL のユーザー名、パスワード、IP アドレス、およびポートを入力します。
    5. オプション: クラスターホストが再暗号化中間者 (MITM) プロキシーを使用するネットワーク内にある場合、またはクラスターがコンテナーイメージレジストリーなどの他の目的で証明書を信頼する必要がある場合は、Configure cluster-wide trusted certificates を選択し、追加の証明書を追加します。
    6. オプション: Ignition ファイルを使用して起動する場合は、検出イメージを設定します。詳しくは、検出イメージの設定 を参照してください。
    7. Generate Discovery ISO をクリックします。
    8. Discovery ISO URL をコピーします。
    9. 検出 ISO をダウンロードします。

      $ wget - O vsphere-discovery-image.iso <discovery_url>

      <discovery_url> を前の手順の URL に置き換えます。

  3. コマンドラインで、電源を落とし、既存の仮想マシンをすべて破棄します。

    $ 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

    <datacenter> をデータセンターの名前に置き換えます。<folder_name> を仮想マシンのインベントリーフォルダーの名前に置き換えます。

  4. 既存の ISO イメージがある場合は、データストアから削除します。

    $ govc datastore.rm -ds <iso_datastore> <image>

    <iso_datastore> をデータストアの名前に置き換えます。image を ISO イメージの名前に置き換えます。

  5. 支援付きインストーラーの検出 ISO をアップロードします。

    $ govc datastore.upload -ds <iso_datastore>  vsphere-discovery-image.iso

    <iso_datastore> をデータストアの名前に置き換えます。

    注記

    クラスター内のすべてのノードは、検出イメージから起動する必要があります。

  6. 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

    詳細は、vm.create を参照してください。

    注記

    前述の例は、コントロールプレーンノードに必要な最小限のリソースを示しています。

  7. 少なくとも 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

    詳細は、vm.create を参照してください。

    注記

    上記の例は、ワーカーノードに必要な最小限のリソースを示しています。

  8. 仮想マシンが実行されていることを確認します。

    $  govc ls /<datacenter>/vm/<folder_name>

    <datacenter> をデータセンターの名前に置き換えます。<folder_name> を仮想マシンのインベントリーフォルダーの名前に置き換えます。

  9. 2 分後、仮想マシンをシャットダウンします。

    $ for VM in $(govc ls /<datacenter>/vm/<folder_name>)
    do
         govc vm.power -s=true $VM
    done

    <datacenter> をデータセンターの名前に置き換えます。<folder_name> を仮想マシンのインベントリーフォルダーの名前に置き換えます。

  10. disk.enableUUID 設定を TRUE に設定します。

    $ for VM in $(govc ls /<datacenter>/vm/<folder_name>)
    do
         govc vm.change -vm $VM -e disk.enableUUID=TRUE
    done

    <datacenter> をデータセンターの名前に置き換えます。<folder_name> を仮想マシンのインベントリーフォルダーの名前に置き換えます。

    注記

    vSphere で自動スケーリングを有効にするには、すべてのノードで disk.enableUUIDTRUE に設定する必要があります。

  11. 仮想マシンを再起動します。

    $  for VM in $(govc ls /<datacenter>/vm/<folder_name>)
    do
         govc vm.power -on=true $VM
    done

    <datacenter> をデータセンターの名前に置き換えます。<folder_name> を仮想マシンのインベントリーフォルダーの名前に置き換えます。

  12. 支援付きインストーラーのユーザーインターフェイスに戻り、支援付きインストーラーがホストを検出し、それぞれが Ready ステータスになるまで待ちます。
  13. Integrate with your virtualization platform スライダーを動かして、vSphere との統合を有効にします。
  14. 必要に応じてロールを選択します。
  15. Networking で、Allocate IPs via DHCP server のチェックを外します。
  16. API VIP アドレスを設定します。
  17. Ingress VIP アドレスを設定します。
  18. インストール手順を続行します。