Linux仮想マシン

Linux仮想マシンを作成するときは、その仮想マシン上で実行するオペレーティングシステムに応じて適切なテンプレートを使用します。オペレーティングシステムに提供されるCitrix Hypervisorのテンプレートだけでなく、独自に作成したものも使用できます。仮想マシンを作成するには、XenCenterまたはCLIを使用します。ここでは、CLIの使用方法を中心に説明します。

注:

Citrix Hypervisorのインストールでサポートされているよりも新しいマイナーアップデートのRHELリリースの仮想マシンを作成するには次の手順を実行します:

  • サポートされている最新のメディアからインストールする
  • yum updateを使用して仮想マシンを最新状態にする

この作業は、CentOSやOracle LinuxなどのRHEL派生版にも適用されます。

仮想マシンにオペレーティングシステムをインストールしたら、すぐにCitrix VM Toolsをインストールすることをお勧めします。詳しくは、「Linuxゲストエージェントのインストール」を参照してください。

Linux仮想マシンを作成するには、以下の作業を行います。

  1. XenCenterまたはCLIを使用して、適切なオペレーティングシステム用の仮想マシンを作成します。

  2. ベンダのインストールメディアからオペレーティングシステムをインストールします。

  3. Citrix VM Toolsをインストールします(推奨)。

  4. 通常のLinuxのインストール時と同様に、仮想マシンとVNCで時間およびタイムゾーンを設定します。

Citrix Hypervisorは、多くのLinuxディストリビューションの仮想マシンへのインストールをサポートしています。

警告:

[他のインストールメディア] テンプレートは、サポートされていないオペレーティングシステムの仮想マシンをインストールする上級ユーザーのために用意されています。Citrix Hypervisorは、サポートしているディストリビューションと、付属している標準テンプレートが対応している特定のバージョンでのみその運用性がテストされており[他のインストールメディア] テンプレートでインストールした仮想マシンはサポートされません

特定のLinuxディストリビューションでの手順については、Linuxディストリビューションのインストールに関する考慮事項を参照してください。

サポートされているLinuxディストリビューション

サポート対象Linuxディストリビューションの一覧については、「ゲストオペレーティングシステムのサポート」を参照してください。

その他のLinuxディストリビューションはサポートされていません。ただし、Red Hat Enterprise Linuxと同じインストールメカニズム(Fedora Coreなど)を使用するディストリビューションは、同じテンプレートを使用して正常にインストールされる場合があります。

Linux仮想マシンの作成

ここでは、物理CD/DVDまたはネットワーク上のISOイメージを使用したLinux仮想マシンの作成方法について説明します。

  1. 次のコマンドを実行して、適切なテンプレートから仮想マシンをインストールします。新しい仮想マシンのUUIDが返されます。

    xe vm-install template=template-name new-name-label=vm-name
    
  2. 仮想CD-ROMを新しい仮想マシンに追加します:

    • CDまたはDVDからインストールする場合、次のコマンドでCitrix Hypervisorサーバーの物理CDドライブの名前を取得します:

       xe cd-list
      

      これにより、「SCSI 0:0:0:0」などのドライブ名がname-labelフィールドに表示されます。

      この値をcd-nameパラメーターとして使用します:

       xe vm-cd-add vm=vm_name cd-name="host_cd_drive_name_label" device=3
      
    • ネットワーク上のISOからインストールする場合、cd-nameパラメーターの値としてISOライブラリラベルの対象ISOの名前を使用します:

       xe vm-cd-add vm=vm_name cd-name="iso_name.iso" device=3
      
  3. オペレーティングシステムのインストールCDを、Citrix HypervisorサーバーのCDドライブに挿入します。

  4. XenCenterまたはSSHターミナルで仮想マシンのコンソールを開き、オペレーティングシステムのインストール手順に従って操作します。

  5. 次のコマンドを実行して、仮想マシンを起動します。次のコマンドを実行して、オペレーティングシステムインストーラーを起動します。

    xe vm-start uuid=UUID
    
  6. ゲストユーティリティをインストールし、グラフィカルコンソールを設定します。詳しくは、「Linuxゲストエージェントのインストール」を参照してください。

Linuxゲストエージェントのインストール

サポートされるすべてのLinuxディストリビューションはネイティブに準仮想化されており、完全なパフォーマンスを得るために特別なドライバは不要です。ただし、Citrix Hypervisorにゲストエージェントが含まれ、インストールすると、仮想マシンに関する追加情報をホストに提供できるようになります。動的メモリ制御(DMC:Dynamic Memory Control)を有効にするには、Linux仮想マシンごとにゲストエージェントをインストールします。

Citrix Hypervisorサーバーをアップグレードする場合、Linuxゲストエージェントも最新状態にしてください。詳しくは、「Linuxカーネルとゲストユーティリティのアップデート」を参照してください。

注:

SUSE Linux Enterprise Desktop 15またはSUSE Linux Enterprise Server 15のゲストにゲストエージェントをインストールする前に、 insserv-compat-0.1-2.15.noarch.rpmがゲストにインストールされていることを確認してください。

ゲストエージェントをインストールするには:

  1. 必要なファイルは、組み込みのguest-tools.iso CDイメージ上にあります。また、XenCenterで [VM]>[インストール]Citrix VM Tools オプションを選択することもできます。

  2. 次のコマンドを実行して、イメージをゲストにマウントします。

    mount -o ro,exec /dev/disk/by-label/Citrix VM Tools /mnt
    

    注:

    イメージのマウントに失敗した場合は、次のコマンドでイメージを特定できます:

    blkid -t LABEL="Citrix VM Tools"
    
  3. ルートユーザーとして次のインストールスクリプトを実行します。

    /mnt/Linux/install.sh
    
  4. 次のコマンドを実行して、イメージをゲストからアンマウントします。

    umount /mnt
    
  5. カーネルがアップグレードされている場合、または仮想マシンが以前のバージョンからアップグレードされている場合は、ここで仮想マシンを再起動します。

    注:

    Linux仮想マシンにマウントするCD-ROMドライブやISOイメージは、/dev/cdromではなく/dev/xvddまたは/dev/sddのようにデバイスとして表示されます。これは、真のCD-ROMデバイスではなく、通常のデバイスであるためです。XenCenterやCLIでCDを取り出すと、このデバイスは仮想マシンからホットアンプラグされ、表示されなくなります。一方、Windows仮想マシンではLinuxの場合と異なり、CDは空の状態で仮想マシン内に残ります。

Linuxディストリビューションのインストールに関する考慮事項

以下は、指定したLinux仮想マシンの作成時に考慮すべき、ベンダー特有の追加設定情報に関する説明です。

すべてのディストリビューションに関する詳細なリリースノートについては、「Linux仮想マシンのリリースノート」を参照してください。

Red Hat Enterprise Linux* 7.x(32ビット/64ビット)

これらのゲスト用の新しいテンプレートは、2GBのRAMを指定します。このサイズは、バージョン7.4以降を正しくインストールするための要件です。バージョン7.0~7.3の場合、テンプレートは2GBのRAMを指定しますが、以前のバージョンのCitrix Hypervisorでは、1GBのRAMで十分です。

注:

この情報は、Red HatとRed Hat派生版の両方に適用されます。

Aptリポジトリ(Debian)

Linuxのインストールが1回だけである場合は、Debianミラーサイトから直接行うことも可能ですが、いくつかの仮想マシンをインストールする場合は、キャッシングプロキシやローカルミラーの使用をお勧めします。次のいずれかのツールを仮想マシン上にインストールできます。

  • Apt-cacher:パッケージのローカルキャッシュを保持するプロキシサーバーの実装です
  • debmirror:Debianリポジトリの一部ミラーまたは完全ミラーを作成するためのツールです

Linux仮想マシンの複製の準備

通常、仮想マシンやコンピュータを複製すると、固有であるべき属性が環境内で重複してしまします。重複する固有の属性には、IPアドレス、SID、MACアドレスなどがあります。

Linux仮想マシンの複製により属性の重複が発生する場合は、Citrix Hypervisorにより一部の仮想ハードウェアパラメータが自動的に変更されます。XenCenterを使って仮想マシンを複製すると、XenCenterでMACアドレスとIPアドレスが自動的に変更されます。これらのインターフェイスが動的に設定される環境では、複製後の仮想マシンを変更する必要はありません。ただし、これらのインターフェイスが静的に設定されている環境では、重複が生じないようにネットワーク設定を変更する必要があります。

ここでは、カスタマイズすべき設定について説明します。特定のLinuxディストリビューションでの手順については、Linux仮想マシンのリリースノートを参照してください。

マシン名

複製された仮想マシンは別のコンピュータであるため、ネットワークに新しいコンピュータを追加するときと同様に、そのネットワークドメイン内で固有の名前を持つ必要があります。

IPアドレス

複製された仮想マシンは、所属するネットワークドメイン内で固有のIPアドレスを持つ必要があります。通常、DHCPを使用してアドレスを割り当てる場合、この要件は必要ありません。仮想マシンの起動時に、DHCPサーバーがIPアドレスを割り当てます。複製した仮想マシンが静的なIPアドレスを持つ場合は、仮想マシンの起動前に、ネットワーク上で使用されていないIPアドレスを割り当てる必要があります。

MACアドレス

以下の状況で、MACアドレスルールを無効にしておくことをお勧めします:

  1. Linuxディストリビューションによっては、複製した仮想マシンの仮想ネットワークインターフェイスのMACアドレスが、ネットワーク設定ファイルに記録されている場合があります。このような場合でも、XenCenterで仮想マシンを複製すると、新しい仮想マシンに別のMACアドレスが割り当てられます。このため、ネットワーク設定ファイルに記録されているMACアドレスを更新しないと、この仮想マシンの初回起動時にネットワークに接続できません。

  2. 一部のLinuxディストリビューションでは、各ネットワークインターフェイスのMACアドレスがudevルールで記憶され、インターフェイスの名前が保持されます。これは、同じ物理NICが常に同じethnインターフェイスにマップされるようにするためであり、リムーバブルNICを使用する場合(ノートブックなど)に有用です。ただし、この動作は仮想マシンのコンテキストでは問題があります。

    たとえば、次のような場合の動作を想定します。

    1. Configure two virtual NICs when installing a VM
    1. Shut down the VM
    1. Remove the first NIC
    

    仮想マシンが再起動すると、XenCenterは1つのNICのみを表示しますが、eth0という名称にします 。一方、仮想マシンではこのNICがudevルールによりeth1としてマップされます。この結果、仮想マシンがネットワークに接続できなくなります。

仮想マシンで永続的なインターフェイス名を使用する場合は、これらのルールを無効にしてから仮想マシンを複製します。永続的なインターフェイス名をオフにしない場合は、仮想マシン内で通常の手順に従ってネットワークを再設定する必要があります。この場合、XenCenterに表示される情報が実際のインターフェイス名と異なることに注意してください。

Linuxカーネルとゲストユーティリティのアップデート

Linuxゲストユーティリティをアップデートするには、組み込みのguest-tools.iso CDイメージからLinux/install.shスクリプトを再実行します(「Linuxゲストエージェントのインストール」を参照)。

yum対応のディストリビューション(CentOSおよびRHEL)の場合は、xe-guest-utilitiesによりyumの設定ファイルがインストールされ、それ以降のアップデートはyumによる標準的な方法で実行されるようになります。

Debianの場合、/etc/apt/sources.listのエントリにより、デフォルトでaptコマンドによるアップデートが可能になります。

アップグレード時に必ずLinux/install.shを再実行することをお勧めします。このスクリプトでは、仮想マシンのバージョンが確認され、必要に応じてアップデートされます。

PVからHVMゲストへのアップグレード

サポートされていない既存のPV Linuxゲストを、HVMモードで動作しているサポート対象バージョンにアップグレードするには、ゲスト内アップグレードを実行します。この時点で、アップグレードされたゲストはPVモードでのみ動作します。ただし、これはサポートされている動作ではなく、既知の問題です。次のスクリプトを実行して、新規にアップグレードされたゲストを、サポートされているHVMモードに変換します。

Citrix Hypervisorサーバーで、ローカルシェルを開いてルートユーザーとしてログオンし、次のコマンドを実行します:

/opt/xensource/bin/pv2hvm vm_name

または

/opt/xensource/bin/pv2hvm vm_uuid

仮想マシンを再起動して処理を完了します。

Linux仮想マシンのリリースノート

最近のほとんどのLinuxディストリビューションはXen準仮想化を直接サポートしていますが、インストールメカニズムや一部のカーネルの制限が異なります。

RHELグラフィカルインストールのサポート

グラフィカルインストールを実行するには、XenCenterで、新規VMウィザードの指示に従います。[インストールメディア] ページの [高度なOS起動パラメーター] セクションで、パラメーターの一覧にvncを追加します:

graphical utf8 vnc

![新しい仮想マシンウィザードのスクリーンショット。[インストールメディア]ページで値graphical utf8 vncが[高度なOS起動パラメーター]フィールドに入力されました。](/ja-jp/citrix-hypervisor/media/rhel-graphical-network-install.png)

ここで、新しい仮想マシン用のネットワーク構成を指定して、VNC通信を有効にする必要があります。新規VMウィザードの残りのページの処理を進めます。ウィザードが完了したら、[インフラストラクチャ] ビューで、仮想マシンを選択して、[コンソール] をクリックして仮想マシンのコンソールセッションを表示します。この時点では標準のインストーラーが使用されます。仮想マシンのインストールは、最初はテキストモードで開始されます。また、ネットワーク構成が要求される場合があります。指定したら、[グラフィックコンソールに切り替える] がXenCenterウィンドウの右上隅に表示されます。

Red Hat Enterprise Linux 7

仮想マシンを移行または一時停止した後、RHEL 7.xゲストは再開時にフリーズすることがあります。詳しくは、Red Hatの問題1141249を参照してください。

CentOS 7

CentOS 7.xリリースノートの一覧については、「Red Hat Enterprise Linux 7」を参照してください。

Oracle Linux 7

Oracle Linux 7.xリリースノートの一覧については、「Red Hat Enterprise Linux 7」を参照してください。

Scientific Linux 7

Scientific Linux 7.xリリースノートの一覧については、「Red Hat Enterprise Linux 7」を参照してください。

Debian 10

PXEネットワークブートを使用してDebian 10(Buster)をインストールする場合、console=tty0をブートパラメーターに追加しないでください。このパラメーターは、インストールプロセスで問題を引き起こす可能性があります。ブートパラメーターではconsole=hvc0のみを使用してください。 詳しくは、Debianの問題944106および944125を参照してください。

SUSE Linux Enterprise 12

SLESゲストの複製の準備

注:

SLESゲストの複製を準備するには、次のようにネットワークデバイスのudev構成をクリアしてください:

cat< /dev/null > /etc/udev/rules.d/30-net_persistent_names.rules

SLESゲストの複製を準備するには:

  1. ファイル/etc/sysconfig/network/configを開きます。

  2. 次の行を変更します:

    FORCE_PERSISTENT_NAMES=yes
    

    変更後は以下の通り

    FORCE_PERSISTENT_NAMES=no
    
  3. ファイルを保存して、仮想マシンを再起動します。

詳しくは、「Linux仮想マシンの複製の準備」を参照してください。

Ubuntu 18.04

Ubuntu 18.04は、次のタイプのカーネルを提供します:

  • 一般公開(GA)カーネル。ポイントリリースでは更新されません。
  • ハードウェアイネーブルメント(HWE)カーネル。ポイントリリースで更新されます。

Ubuntu 18.04の一部のマイナーバージョン(18.04.2および18.04.3など)は、グラフィカルコンソールの実行時に問題が発生する可能性のあるHWEカーネルをデフォルトで使用します。そうした問題を回避するには、これらのUbuntu 18.04のマイナーバージョンをGAカーネルで実行するか、グラフィック設定の一部を変更するという選択肢があります。詳しくは、「CTX265663 - Ubuntu 18.04.2 VMs can fail to boot on Citrix Hypervisor」を参照してください。