Red Hat Training

A Red Hat training course is available for Red Hat Satellite

第9章 VMware vSphere での仮想マシンのプロビジョニング

VMware vSphere は VMware のエンタープライズクラスの仮想化プラットフォームです。Red Hat Satellite 6 は、新規仮想マシンの作成やそれらの電源状態の制御を含む、vSphere プラットフォームとの対話を実行することができます。本章では、ACME の vSphere 環境に接続を追加し、仮想マシンをプロビジョニングします。

9.1. VMware vSphere プロビジョニングの要件定義

VMware vSphere プロビジョニングの要件には以下が含まれます。

  • Red Hat Enterprise Linux 7 の同期済みのコンテンツリポジトリー。詳細は、『コンテンツ管理ガイド』「Red Hat リポジトリーの同期」 を参照してください。
  • vSphere 環境でネットワークを管理する Capsule Server。Capsule Server との競合を避けるために DHCP サービスがこのネットワークで実行されていないことを確認します。詳細は、4章ネットワークの設定 を参照してください。
  • 既存の VMware テンプレート (イメージベースのプロビジョニングを使用する場合)。
  • ホスト登録のためのアクティべーションキーのサンプル。詳細は、「アクティベーションキーの作成」 を参照してください。

9.2. VMware vSphere ユーザーの作成

VMware vSphere サーバーには、Satellite Server の通信用に管理者に相当するユーザーが必要になります。セキュリティー上の理由により、この通信に administrator ユーザーを使用しないことをお勧めします。その代わりに、以下の権限を持つ新規のユーザーを作成してください。

  • All Privileges (すべての権限) → Datastore (データストア) → Allocate Space (スペースの割り当て)
  • All Privileges (すべての権限)→ Network (ネットワーク) → Assign Network (ネットワークの割り当て)
  • All Privileges (すべての権限) → Resource (リソース) → Assign virtual machine to resource pool (仮想マシンのリソースプールへの割り当て)
  • All Privileges (すべての権限)→ Virtual Machine (仮想マシン) → Configuration (All) (設定 (すべて))
  • All Privileges (すべての権限)→ Virtual Machine (仮想マシン)→ Interaction (対話)
  • All Privileges (すべての権限)→ Virtual Machine (仮想マシン) → Inventory (インベントリー)
  • All Privileges (すべての権限)→ Virtual Machine (仮想マシン)→ Provisioning (プロビジョニング)

9.3. Satellite Server への VMware vSphere 接続の追加

このプロセスは、Satellite Server のコンピュートリソースで VMware vSphere 接続を追加します。

Web UI を使用する場合

インフラストラクチャー > コンピュートリソース に移動し、新規のコンピュートリソース をクリックします。UI には、コンピュートリソースの一連のフィールドがあります。

  • 名前: リソースのテキスト形式の名前。例: ACME's vSphere
  • プロバイダー: コンピュートリソースプロバイダーを選択するためのフィールド。VMware を選択すると、新規のフィールドのセットが表示されます。
  • 説明: リソースのテキスト形式の説明。例: VMware vSphere at vsphere.example.com
  • VCenter/Server (サーバー): vCenter サーバーの IP アドレスまたはホスト名。例: vsphere.example.com
  • ユーザー名: vCenter のリソースにアクセスするパーミッションを持つユーザー。例: SatelliteUser
  • パスワード: 選択されたユーザーのパスワード。
  • データセンター: URLユーザー名 および パスワード を入力したら データセンターのロード をクリックし、VMware vSphere 環境からデータセンターの一覧を入力します。この一覧から管理する特定のデータセンターを選択します。
  • フィンガープリント: vSphere 環境にアクセスするための証明書フィンガープリント。通常、このフィールドには選択したデータセンターのフィンガープリントが設定されます。
  • コンソールのパスワード: ランダムに生成されたパスワードで新規ホストのコンソールアクセスのセキュリティーを保護します。
  • キャッシングの有効化 - コンピュートリソースのキャッシングを有効化します。詳細は、「コンピュートリソースのキャッシング」 を参照してください。

ロケーション および 組織 タブは現在のコンテキストに自動的に設定されます。他のコンテキストをこれらのタブに追加します。

送信 をクリックして接続を保存します。

CLI を使用する場合

hammer compute-resource create コマンドで接続を作成します。--providerVmware を選択し、--uuid でデータセンターのインスタンス UUID を設定します。

# hammer compute-resource create --name "ACME's vSphere" \
--provider "Vmware" \
--description "vSphere server at vsphere.example.com" \
--server "vsphere.example.com" --user "SatelliteUser" \
--password "p@55w0rd!" --locations "New York" --organizations "ACME" \
--uuid 72cb9454-81cd-4231-a863-d9baf0f399f8
注記

Satellite が TCP ポート 443 を介して vCenter と通信できるよう、ホストおよびネットワークベースのファイアウォールが設定されていることを確認します。Satellite が vCenter のホスト名を解決でき、vCenter が Satellite Server のホスト名を解決できることを確認します。

9.4. Satellite Server での VMware vSphere イメージの追加

VMware vSphere は、新規仮想マシンを作成するためのイメージとしてテンプレートを使用します。イメージベースのプロビジョニングを使用して新規ホストを作成する場合、VMware vSphere テンプレートの詳細を Satellite Server に追加する必要があります。これには、アクセスの詳細およびテンプレート名が含まれます。

Web UI を使用する場合

インフラストラクチャー > コンピュートリソース に移動し、VMware vSphere 接続の名前をクリックします。UI には、イメージ タブを含む接続についての情報が表示されます。このタブには、新規プロバイダーのイメージは含まれませんが、新規イメージを追加することができます。新規イメージ をクリックすると、UI に VMware vSphere テンプレートの一連のフィールドが表示されます。

  • 名前: イメージのテキスト形式の名前。例: Test vSphere Image
  • オペレーティングシステム: イメージのベースオペレーティングシステムを選択するためのフィールド。例: RedHat 7.2
  • アーキテクチャー: オペレーティングシステムのアーキテクチャーを選択するためのフィールド。例: x86_64
  • ユーザー名: イメージにアクセスするための SSH ユーザー名。通常、これは root ユーザーになります。
  • ユーザーデータ - イメージが cloud-init データなどのユーザーデータ入力をサポートするかどうかを設定します。
  • パスワード: イメージにアクセスするための SSH パスワード。
  • イメージ: vSphere 環境でのテンプレートの相対パスおよび名前 (例: Templates/RHEL72)。相対パスにデータセンターを組み込まないでください。

送信 をクリックしてイメージの詳細を保存します。

CLI を使用する場合

hammer compute-resource image create コマンドでイメージを作成します。--uuid フィールドを使用して vSphere 環境の相対テンプレートパスを保存します。

# hammer compute-resource image create --name "Test vSphere Image" \
--operatingsystem "RedHat 7.2" --architecture "x86_64" \
--username root --uuid "Templates/RHEL72" \
--compute-resource "ACME's vSphere"

9.5. VMware vSphere の詳細をコンピュートプロファイルへ追加

VMware vSphere の仮想マシンの特定のハードウェア設定を事前に定義することができます。これは、これらのハードウェア設定をコンピュートプロファイルに追加して実行できます。この例では、4-Example プロファイルにいくつかの基本的なハードウェア設定を組み込みます。

Web UI を使用する場合

インフラストラクチャー > コンピュートプロファイル に移動し、プロファイルの名前をクリックします。たとえば、事前に作成した 4-Example プロファイルを使用します。UI には、コンピュートリソースの一覧が表示されます。vSphere 接続をクリックします。

UI には、プロファイルに VMware 固有の詳細を入力できる一連のフィールドがあります。これには以下が含まれます。

  • CPU: 新規ホストに割り当てる CPU の数。
  • 1 ソケットあたりのコア数: 各 CPU に割り当てるコアの数。
  • メモリー: 新規ホストに割り当てるメモリーの容量。
  • クラスター: VMware 環境のターゲットホストクラスター。
  • リソースプール: ホストの利用可能なリソース割り当てを含むリソースプール。
  • フォルダー: ホストを整理するためのフォルダー。
  • ゲスト OS: VMware vSphere で基礎となるオペレーティングシステムを定義します。
  • SCSI コントローラー: ディスクアクセス方法を定義します。
  • 仮想ハードウェアのバージョン: 仮想マシンに使用する基礎となる VMware ハードウェアの抽象化を定義します。
  • メモリーホット追加 または CPU ホット追加: 仮想マシンの電源をオンにしたままリソースを追加できるかどうかを定義します。
  • イメージ: イメージベースのプロビジョニングを実行している場合に使用するイメージ。この例では、Test VMware Image を使用します。
  • ネットワークインターフェース: ホストのネットワークインターフェースのネットワークパラメーターを定義します。複数のネットワークインターフェースを作成することができます。ただし、少なくとも 1 つ以上のインターフェースが Capsule で管理されるネットワークをポイントしている必要があります。ネットワークインターフェースのオプションには、以下が含まれます。

    • NIC タイプ: VMware ネットワークインターフェースのタイプを定義します。
    • ネットワーク: 使用する仮想ネットワークを定義します。
  • ストレージ: ホストのボリュームを定義します。ホストに複数のボリュームを作成することができます。ストレージのオプションには以下が含まれます。

    • データストア: ボリュームの保管場所を定義します。
    • サイズ (GB): ボリュームのサイズ (GB) を定義します。
    • シンプロビジョニング: シンプロビジョニングまたはフルディスクの事前割り当てを使用するかどうかを定義します。
    • Eager Zero: Eager Zero シックプロビジョニングを使用するかどうかを定義します。これにチェックを付けない場合、ディスクは Lazy Zero シックプロビジョニングを使用します。

送信 をクリックしてコンピュートプロファイルを保存します。

CLI を使用する場合

コンピュートプロファイルの CLI コマンドは、Red Hat Satellite 6.3 ではまだ実装されていません。代替方法として、ホストの作成プロセスで同じ設定を直接組み込むことができます。

9.6. VMware vSphere サーバーでのネットワークベースのホストの作成

VMware vSphere プロビジョニングプロセスは、ネットワーク接続を介して新規ホストを作成するオプションを提供します。この場合、新規ホストは Satellite Server の統合 Capsule または VMware vSphere 仮想ネットワークの外部 Capsule Server のいずれかにアクセスする必要があります。これは、ホストが PXE プロビジョニングサービスにアクセスできるようにするためです。

重要

プロビジョニングのために VMware vSphere サーバーで仮想ネットワークを使用している場合、DHCP 割り当てを提供しないネットワークを選択します。そうしないと、新規ホストの起動時に Satellite Server と DHCP との競合が生じるからです。

Web UI を使用する場合

ホスト > 新規ホスト に移動します。UI には、ホストの詳細を入力できる一覧のフィールドがあります。

  • ホスト タブ:

    • ホストの 名前 を入力します。これは、プロビジョニングされたシステムのホスト名になります。この例では、vmware-test1 になります。
    • プロビジョニングコンテキスト (組織 および ロケーション) は現在のコンテキストに自動的に設定されます。例: ACME および New York
    • ホストグループ を選択します。これにより、新規ホストのほとんどのフィールドが自動的に設定されます。例: Base
    • デプロイ先 で、VMware vSphere 接続を選択します。この例では、ACME's vSphere になります。仮想マシンの新規タブが表示されます。
    • コンピュートプロファイル で、仮想マシンベースの設定を自動的に行うために使用するプロファイルを選択します。例: 4-Example
  • インターフェース タブ:

    • ホストのインターフェースの 編集 をクリックします。
    • ほとんどのフィールドには、値が自動的に含まれるはずです。特に以下の点に注意してください。

      • ホスト タブの 名前DNS 名 になります。
      • Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
    • MAC アドレス を空白にします。VMware vSphere サーバーは MAC アドレスをホストに割り当てます。
    • Satellite Server は、ホストの最初のインターフェースで Managed (管理)Primary、および Provision オプションを自動的に選択するはずです。選択されていない場合は、それらを選択してください。
    • インターフェース画面には、コンピュートプロファイルの設定が入力された VMware vSphere 固有のフィールドが表示されます。必要に応じてこれらの設定を変更します。
  • オペレーティングシステム タブ:

    • すべてのフィールドには値が自動的に含まれるはずです。オペレーティングシステムの各要素を確認してください。
    • プロビジョニング方法ネットワークベース に設定されていることを確認します。
    • プロビジョニングテンプレート解決 をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
  • 仮想マシン タブ:

    • これらの設定には、選択されたホストグループおよびコンピュートプロファイルの詳細が入力されているはずです。必要に応じてこれらの設定を変更します。
  • パラメーター タブ:

    • kt_activation_keys パラメーターが存在し、サンプルのアクティべーションキーを使用していることを確認します。

送信 をクリックします。

CLI を使用する場合

hammer host create コマンドでホストを作成し、--provision-method build を組み込んでネットワークベースのプロビジョニングを使用します。以下は例になります。

# hammer host create --name "vmware-test1" --organization "ACME" \
--location "New York" --hostgroup "Base" \
--compute-resource "ACME's vSphere" --provision-method build \
--build true --enabled true --managed true \
--interface "managed=true,primary=true,provision=true,compute_type=VirtualE1000,compute_network=mynetwork" \
--compute-attributes="cpus=1,corespersocket=2,memory_mb=1024,cluster=MyCluster,path=MyVMs,start=true" \
--volume="size_gb=20G,datastore=Data,name=myharddisk,thin=true"
注記

このコンピュートリソースの追加のホスト作成パラメーターについての詳細は、付録B Hammer CLI の追加のホストパラメーター を参照してください。

新規ホストのエントリーは、VMware vSphere サーバーが仮想マシンを作成するようにトリガーします。仮想マシンが仮想ネットワーク経由で定義済みの Capsule Server を検出する場合、仮想マシンは PXE で起動し、選択したオペレーティングシステムのインストールを開始します。

9.7. VMware vSphere サーバーでのイメージベースのホストの作成

VMware vSphere プロビジョニングプロセスは、VMware vSphere サーバーで既存イメージから新規ホストを作成するオプションも提供します。

Web UI を使用する場合

ホスト > 新規ホスト に移動します。UI には、ホストの詳細を入力できる一覧のフィールドがあります。

  • ホスト タブ:

    • ホストの 名前 を入力します。これは、プロビジョニングされたシステムのホスト名になります。この例では、vmware-test1 になります。
    • プロビジョニングコンテキスト (組織 および ロケーション) は現在のコンテキストに自動的に設定されます。例: ACME および New York
    • ホストグループ を選択します。これにより、新規ホストのほとんどのフィールドが自動的に設定されます。例: Base
    • デプロイ先 で、VMware vSphere 接続を選択します。この例では、ACME's vSphere になります。仮想マシンの新規タブが表示されます。
    • コンピュートプロファイル で、仮想マシンベースの設定を自動的に行うために使用するプロファイルを選択します。例: 4-Example
  • インターフェース タブ:

    • ホストのインターフェースの 編集 をクリックします。
    • ほとんどのフィールドには、値が自動的に含まれるはずです。特に以下の点に注意してください。

      • ホスト タブの 名前DNS 名 になります。
      • Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
    • MAC アドレス を空白にします。VMware vSphere サーバーは MAC アドレスをホストに割り当てます。
    • Satellite Server は、ホストの最初のインターフェースで Managed (管理)Primary、および Provision オプションを自動的に選択するはずです。選択されていない場合は、それらを選択してください。
    • インターフェース画面には、コンピュートプロファイルの設定が入力された VMware vSphere 固有のフィールドが表示されます。必要に応じてこれらの設定を変更します。
  • オペレーティングシステム タブ:

    • すべてのフィールドには値が自動的に含まれるはずです。オペレーティングシステムの各要素を確認してください。
    • プロビジョニング方法イメージベース に設定されていることを確認します。新規の イメージ フィールドが表示されます。このフィールドから、新規ホストの root ボリュームのベースとしてイメージを選択できます。これは、ホスト タブで選択されたコンピュートプロファイルから自動的に設定されます。
    • プロビジョニングテンプレート解決 をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。
  • 仮想マシン タブ:

    • これらの設定には、選択されたホストグループおよびコンピュートプロファイルの詳細が入力されているはずです。必要に応じてこれらの設定を変更します。
  • パラメーター タブ:

    • kt_activation_keys パラメーターが存在し、サンプルのアクティべーションキーを使用していることを確認します。

送信 をクリックします。

CLI を使用する場合

hammer host create コマンドでホストを作成し、--provision-method image を組み込んでイメージベースのプロビジョニングを使用します。以下は例になります。

# hammer host create --name "vmware-test2" --organization "ACME" \
--location "New York" --hostgroup "Base" \
--compute-resource "ACME's RHEV" --provision-method image \
--image "Test RHEV Image" --enabled true --managed true \
--interface "managed=true,primary=true,provision=true,compute_type=VirtualE1000,compute_network=mynetwork" \
--compute-attributes="cpus=1,corespersocket=2,memory_mb=1024,cluster=MyCluster,path=MyVMs,start=true" \
--volume="size_gb=20G,datastore=Data,name=myharddisk,thin=true"
注記

このコンピュートリソースの追加のホスト作成パラメーターについての詳細は、付録B Hammer CLI の追加のホストパラメーター を参照してください。

この新規ホストのエントリーは、VMware vSphere サーバーが新規ボリュームのベースとして既存イメージを使用し、仮想マシンを作成するようトリガーします。

9.8. コンピュートリソースのキャッシング

コンピュートリソースのキャッシングは、VMware 情報のレンダリングを迅速化します。

9.8.1. コンピュートリソースのキャッシングの有効化

コンピュートリソースのキャッシングの有効化または無効化

  1. インフラストラクチャー > コンピュートリソース に移動します。
  2. 更新したい VMware サーバーの右側にある 編集 ボタンをクリックします。
  3. キャッシングの有効化 のチェックボックスを選択します。

9.8.2. コンピュートリソースのキャッシュのリフレッシュ

コンピュートリソースのキャッシュをリフレッシュして、コンピュートリソース情報を更新するには、以下を実行します。

Web UI を使用する場合

  1. インフラストラクチャー > コンピュートリソース に移動します。
  2. コンピュートリソースのキャッシュをリフレッシュしたい VMware サーバーを選択し、キャッシュのリフレッシュ ボタンをクリックします。

CLI を使用する場合

この API の呼び出しを使用して、コンピュートリソースのキャッシュをリフレッシュします。

# curl -H "Accept:application/json,version=2" \
-H "Content-Type:application/json" -X PUT \
-u username:password -k \
https://satellite.example.com/api/compute_resources/compute_resource_id/refresh_cache

コンピュートリソースのキャッシュをリフレッシュしたい VMware サーバーの id を決定します。

9.9. 本章のまとめ

本章では、Red Hat Satellite 6 を設定して VMware vSphere サーバーを使用する方法と、VMware vSphere サーバーを使用して新規ホストをプロビジョニングする方法を説明しました。ここでは、ネットワークベースのホストおよびイメージベースのホストの両方について紹介しました。

Red Hat Satellite 6 で設定が必要なコンピュートリソースが他にない場合は、13章プロビジョニングの最終設定 のプロビジョニングについての最終メモを参照してください。

次章では、Red Hat OpenStack Platform 環境からのプロビジョニング方法について説明します。