インストールと展開のシナリオ

ここでは、以下の一般的なインストールおよび展開のシナリオについて説明します:

  • ローカルストレージを備えた1つまたは複数のXenServerホスト

  • 共有ストレージを持つXenServerホストのリソースプール

    • 共有NFSストレージを備えた2つ以上のXenServerホスト

    • 共有iSCSIストレージを備えた2つ以上のXenServerホスト

XenServer ローカルストレージを備えたホスト

XenServerの最もシンプルな展開シナリオは、ローカルストレージを備えた1つまたは複数のXenServerホスト上で仮想マシンを実行する方法です。

注:

XenServerホスト間での仮想マシンのXenMotionライブマイグレーションは、共有ストレージがある場合にのみ使用できます。ただし、ストレージXenMotionは引き続き使用できます。

基本的なハードウェア要件

  • ローカルストレージを備えた1つまたは複数の64ビットx86サーバー

  • XenServerホストと同じネットワーク上にある1台以上のWindowsシステム

基本手順

  1. XenServerホストソフトウェアを各サーバーにインストールする。
  2. XenCenterをシステムにインストールする。
  3. XenCenterでXenServerホストに接続する。

XenCenterでXenServerホストに接続すると、そのホストのローカルディスク上にストレージが自動的に設定されます。

共有ストレージを持つXenServerホストのリソースプール

リソースプールとは、複数のXenServerホストを単一の管理対象としてグループ化したものです。リソースプールに共有ストレージを接続すると、十分なメモリを備えた任意 XenServerのホスト上で仮想マシンを起動できるようになります。さらに、最小限のダウンタイムで、実行中の仮想マシンを別のホスト上に動的に移行することもできます(「ライブマイグレーション」または「XenMotion」とも呼ばれます)。XenServerホストでハードウェア障害が生じた場合、管理者は、そのホスト上の仮想マシンを、同じリソースプール内の別のホスト上で再起動させることができます。

高可用性(HA)機能が有効な場合は、障害が生じたホスト上の仮想マシンを自動的に他のホスト上に移行させることができます。

プールのホスト間で共有ストレージをセットアップするには、ストレージリポジトリを作成する必要があります。XenServerストレージリポジトリ(SR)は仮想ディスクが格納されるストレージコンテナです。仮想ディスクと同様に、ストレージリポジトリはXenServerホストに依存しない永続的なオンディスクオブジェクトです。ストレージリポジトリは、ローカルディスクデバイスや共有ネットワークストレージを含む、内蔵および外付けのさまざまな種類の物理ストレージデバイス上に作成できます。以下の種類のストレージを使用して、ストレージリポジトリを作成できます:

  • NFS VHDストレージ

  • ソフトウェアiSCSIストレージ

  • ハードウェアHBAストレージ

ここでは、XenServerホストのリソースプールのストレージリポジトリとして、NFSとiSCSIという2種類のストレージを使用します。これらのNFSまたはiSCSIストレージは、ストレージリポジトリを作成する前に設定しておく必要があります。設定方法は、使用するストレージソリューションによって異なります。詳しくは、ベンダーのドキュメントを参照してください。使用するストレージの種類に限らず、共有ストレージを提供するサーバーに静的なIPアドレスを設定するか、DNSで正しく名前解決されるように設定しておく必要があります。共有ストレージのセットアップについて詳しくは、「ストレージ」を参照してください。

共有ストレージを追加する前に、リソースプールを作成しておくことをお勧めします。プールの要件および作成手順については、XenCenterのオンラインヘルプまたは「ホストとリソースプール」を参照してください。

XenServer 共有NFSストレージを持つホスト

基本的なハードウェア要件

  • ローカルストレージを備えた2つ以上の64ビットx86サーバー

  • XenServerホストと同じネットワーク上にある1台以上のWindowsシステム

  • NFSで共有ディレクトリをエクスポートするサーバー

基本手順

  1. XenServerホストソフトウェアを各サーバーにインストールする。

  2. XenCenterをシステムにインストールする。

  3. XenCenterでXenServerホストに接続する。

  4. XenServerホストのプールを作成する。

  5. NFSサーバーを設定する。

  6. プールレベルでNFS共有上にストレージリポジトリを作成する。

NFSストレージの設定

ストレージリポジトリを作成する前に、NFSストレージを設定する必要があります。プールで使用されるNFS共有には、静的なIPアドレスを設定するか、DNSでの名前解決を正しく設定する必要があります。また、NFSサーバーには、NFSクライアント(プールのXenServerホストなど)でマウント可能な1つまたは複数のターゲットが存在している必要があります。設定方法は、使用するストレージソリューションによって異なります。詳しくは、ベンダーのドキュメントを参照してください。

XenCenterを使用してプールレベルでNFS共有上にストレージリポジトリを作成するには:

  1. リソースペインでリソースプールを選択します。XenCenterのツールバーで [新規ストレージ] をクリックします。[新規ストレージリポジトリ] ウィザードが開きます。

  2. [仮想ディスクストレージ]で、ストレージの種類として[NFS VHD]を選択します。[次へ]をクリックして続行します。

  3. 新しいストレージリポジトリの名前と、それを格納する共有の名前を入力します。指定した場所に既存のNFSストレージリポジトリがあるかどうかを確認するには、[スキャン] をクリックします。

    注:

    指定したパスがプール内のすべてのXenServerホストにエクスポートされるようにNFSサーバーを設定しておく必要があります。

  4. [完了] をクリックします。

    新しいストレージリポジトリが作成され、リソースペインのリソースプールの下に追加されます。

xe CLIを使用してプールレベルでNFS共有上にストレージリポジトリを作成する

  1. プール内の任意のXenServerホストで、コンソールを開きます。

  2. 次のコマンドを実行して、server:/pathにストレージリポジトリを作成します。

    xe sr-create content-type=user type=nfs name-label=sr_name= \
                    shared=true device-config:server=server \
                    device-config:serverpath=path
    

    ここで、device-config-serverにNFSサーバーの名前を指定し、device-config-serverpathにそのサーバー上のパスを指定します。sharedにtrueを指定しているため、プール内のすべてのホストにこの共有ストレージが自動的に接続されます。また、このプールに後で追加するすべてのホストにもこの共有ストレージが自動的に接続されます。ストレージリポジトリが作成されると、そのUUIDが画面上に出力されます。

  3. pool-listコマンドを実行して、プールのUUIDを確認します。

  4. 次のコマンドを実行して、このストレージリポジトリをプール全体のデフォルトとして設定します。

    xe pool-param-set uuid=pool_uuid \
                    default-SR=storage_repository_uuid
    

    共有ストレージがプールのデフォルトとして設定されたため、今後作成するすべての仮想マシンのディスクがデフォルトでこのストレージリポジトリに作成されます。

XenServer 共有iSCSIストレージを持つホスト

基本的なハードウェア要件

  • ローカルストレージを備えた2つ以上の64ビットx86サーバー

  • XenServerホストと同じネットワーク上にある1台以上のWindowsシステム

  • iSCSIで共有ディレクトリを提供するサーバー

基本手順

  1. XenServerホストソフトウェアを各サーバーにインストールする。

  2. XenCenterをWindowsシステムにインストールする。

  3. XenCenterでXenServerホストに接続する。

  4. XenServerホストのプールを作成する。

  5. iSCSIストレージを設定する。

  6. 必要に応じて、iSCSIデバイスの複数のイニシエータを有効にする。

  7. 必要に応じて、各XenServerホストにiSCSI IQNを設定する。

  8. プールレベルでiSCSI共有上にストレージリポジトリを作成する。

iSCSIストレージの設定

ストレージリポジトリを作成する前に、iSCSIストレージを設定する必要があります。プールで使用されるiSCSIストレージには、静的なIPアドレスを設定するか、DNSでの名前解決を正しく設定する必要があります。また、仮想マシンストレージ用としてSAN上のiSCSIターゲットを提供し、それを認識して接続できるようにXenServerホストを設定する必要があります。これを行うには、各XenServerホスト上の各iSCSIイニシエータとiSCSIターゲットに固有のiSCSI Qualified Name(IQN)を指定します。詳しくは、ベンダーのドキュメントを参照してください。

各XenServerホストのiSCSI IQNの設定

XenServerをインストールすると、そのホストに固有のIQNが自動的に関連付けられます。このIQNを変更する必要がある場合は、そのホストのコンソールで次のコマンドを実行します。

xe-set-iscsi-iqn iscsi_iqn

または、xe CLIを使用して次のコマンドを実行することもできます。

xe host-param-set uuid=host_uuid other-config-iscsi_iqn=iscsi_iqn

XenCenterを使用してプールレベルでiSCSI共有上にストレージリポジトリを作成するには:

警告:

iSCSIおよびNetAppストレージでXenServerストレージリポジトリを作成すると、そのボリューム上のすべてのデータが破棄されます。

  1. リソースペインでリソースプールを選択します。XenCenterのツールバーで [新規ストレージ] をクリックします。[新規ストレージリポジトリ] ウィザードが開きます。

  2. [仮想ディスクストレージ]で、ストレージの種類として[ソフトウェアiSCSI]を選択します。[次へ]をクリックして続行します。

  3. 新しいストレージリポジトリの名前と、iSCSIターゲットのIPアドレスまたはDNS名を入力します。

    注:

    プール内のすべてのXenServerホストがLUNにアクセスできるようにiSCSIストレージターゲットを設定しておく必要があります。

  4. iSCSIターゲットがCHAP認証を使用するように設定されている場合は、[CHAPを使用する]チェックボックスをオンにして詳細を入力します。

  5. [IQNの検出]をクリックして、[ターゲットIQN]ボックスの一覧からiSCSIターゲットのIQNを選択します。

    警告:

    iSCSIターゲットおよびプール内のすべてのホストで、固有のIQNが設定されている必要があります。

  6. [LUNの検出]をクリックして、[ターゲットLUN]ボックスの一覧からLUNを選択します。このLUNにストレージリポジトリが作成されます。

    警告:

    各iSCSIストレージリポジトリは全体が単一のLUNに含まれる必要があり、複数のLUNにまたがることはできません。また、選択したLUN上の既存のデータはすべて破棄されます。

  7. [完了] をクリックします。

    新しいストレージリポジトリが作成され、リソースペインのリソースプールの下に追加されます。

xe CLIを使用してプールレベルでiSCSI共有上にストレージリポジトリを作成するには:

警告:

iSCSIおよびNetAppストレージでXenServerストレージリポジトリを作成すると、そのボリューム上のすべてのデータが破棄されます。

  1. プール内の任意のサーバーのコンソールで、次のコマンドを実行します。

    xe sr-create name-label=name_for_sr \
        host-uuid=host_uuid device-config:target=iscsi_server_ip_address \
        device-config:targetIQN=iscsi_target_iqn device-config:SCSIid=scsi_id \
        content-type=user type=lvmoiscsi shared=true \
    

    device-config:target引数では、iSCSIサーバーの名前またはIPアドレスを指定します。sharedtrueを指定しているため、プール内のすべてのホストにこの共有ストレージが自動的に接続されます。また、このプールに後で追加するすべてのホストにもこの共有ストレージが自動的に接続されます。

    このコマンドにより、作成されたストレージリポジトリのUUIDが返されます。

  2. pool-listコマンドを実行して、プールのUUIDを確認します。

  3. 次のコマンドを実行して、このストレージリポジトリをプール全体のデフォルトとして設定します。

    xe pool-param-set uuid=pool_uuid default-SR=iscsi_shared_sr_uuid
    

    共有ストレージがプールのデフォルトとして設定されたため、今後作成するすべての仮想マシンのディスクがデフォルトでこのストレージリポジトリに作成されます。