Linux仮想マシン
Linux仮想マシンを作成するときは、その仮想マシン上で実行するオペレーティングシステムに応じて適切なテンプレートを使用します。ご使用のオペレーティングシステム用にCitrix Hypervisorで用意されているテンプレートだけでなく、独自に作成したものも使用できます。仮想マシンを作成するには、XenCenterまたはCLIを使用します。ここでは、CLIの使用方法を中心に説明します。
注:
Citrix Hypervisorによってインストール用にサポートされているよりも新しいマイナーアップデートのRHELリリースの仮想マシンを作成するには、次の手順を実行します:
- サポートされている最新のメディアからインストールする
yum update
を使用して仮想マシンを最新状態にするこの作業は、CentOSやOracle LinuxなどのRHEL派生版にも適用されます。
仮想マシンにオペレーティングシステムをインストールしたら、すぐにLinux向けCitrix VM Toolsをインストールすることをお勧めします。詳しくは、「Linux向けCitrix VM Toolsのインストール」を参照してください。
Linux仮想マシンを作成するには、以下の作業を行います。
-
XenCenterまたはCLIを使用して、適切なオペレーティングシステム用の仮想マシンを作成します。
-
ベンダのインストールメディアからオペレーティングシステムをインストールします。
-
Linux向けCitrix VM Toolsをインストールします(推奨)。
-
通常のLinuxのインストール時と同様に、仮想マシンとVNCで時間およびタイムゾーンを設定します。
Citrix Hypervisorでは、多くのLinuxディストリビューションの仮想マシンへのインストールがサポートされています。
警告:
[他のインストールメディア] テンプレートは、サポート対象外のオペレーティングシステムを実行する仮想マシンをインストールする、上級ユーザーのために用意されています。Citrix Hypervisorは、サポート対象のディストリビューションと、標準で提供されているテンプレートでカバーされている特定のバージョンのみを実行してテストされています。[他のインストールメディア] テンプレートでインストールした仮想マシンはサポートされません。
特定のLinuxディストリビューションについては、「Linuxディストリビューションのインストールに関する考慮事項」を参照してください。
サポートされているLinuxディストリビューション
サポートされるLinuxディストリビューションの一覧については、「ゲストオペレーティングシステムのサポート」を参照してください。
そのほかのLinuxディストリビューションはサポートされていません。ただし、Red Hat Enterprise Linux(Fedora Coreなど)と同じインストールメカニズムを使用するディストリビューションは、同じテンプレートを使用して正常にインストールされる可能性があります。
Linux仮想マシンの作成
ここでは、物理CD/DVDまたはネットワーク上のISOイメージを使用したLinux仮想マシンの作成方法について説明します。
-
適切なテンプレートから仮想マシンを作成します。新しい仮想マシンのUUIDが返されます。
xe vm-install template=template-name new-name-label=vm-name <!--NeedCopy-->
-
新しい仮想マシンに仮想CD-ROMを追加します:
-
CDまたはDVDからインストールする場合は、次のコマンドを実行して、Citrix Hypervisorサーバーの物理CDドライブの名前を取得します:
xe cd-list <!--NeedCopy-->
これにより、「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 <!--NeedCopy-->
-
ネットワーク上のISOイメージからインストールする場合は、ISOライブラリラベルの対象ISOイメージの名前を
cd-name
パラメーターの値として使用します:xe vm-cd-add vm=vm_name cd-name="iso_name.iso" device=3 <!--NeedCopy-->
-
-
オペレーティングシステムのインストールCDを、Citrix HypervisorサーバーのCDドライブに挿入します。
-
XenCenterまたはSSHターミナルで仮想マシンのコンソールを開き、オペレーティングシステムのインストール手順に従って操作します。
-
仮想マシンを起動します。次のコマンドを実行して、オペレーティングシステムインストーラーを起動します:
xe vm-start uuid=UUID <!--NeedCopy-->
-
ゲストユーティリティをインストールし、グラフィカルコンソールを設定します。詳しくは、「Linux向けCitrix VM Toolsのインストール」を参照してください。
PXEブートを使用したLinux仮想マシンの作成
PXEブートを使用して、Linux仮想マシンのオペレーティングシステムをインストールできます。この方法は、多数のLinux仮想マシンを作成する必要がある場合に役立ちます。
PXEブートを使用してインストールするには、Linux仮想マシンが配置されているネットワークで次の前提条件を設定します:
- PXEブートによるインストール要求をTFTPサーバーに送信するように構成されたDHCPサーバー
- LinuxオペレーティングシステムのインストールファイルをホストするTFTPサーバー
Linux仮想マシンを作成するときは、次のコマンドを実行します:
-
適切なテンプレートから仮想マシンを作成します。新しい仮想マシンのUUIDが返されます。
xe vm-install template=template-name new-name-label=vm-name <!--NeedCopy-->
-
ディスクから起動してからネットワークから起動するように起動順序を設定します:
xe vm-param-set uuid=<UUID> HVM-boot-params:order=cn <!--NeedCopy-->
-
仮想マシンを起動して、PXEブートによるインストールを開始します:
xe vm-start uuid=<UUID> <!--NeedCopy-->
-
ゲストユーティリティをインストールし、グラフィカルコンソールを設定します。詳しくは、「Linux向けCitrix VM Toolsのインストール」を参照してください。
PXEブートを使用してLinuxオペレーティングシステムをインストールする方法について詳しくは、オペレーティングシステムのドキュメントを参照してください:
- Debian:「Installing Debian using network booting」
- RedHat:「Starting a Kickstart installation automatically using PXE」
- CentOS:「PXE Setup」
- SLES:「Setting up a PXE Boot Server」
Linux向けCitrix VM Toolsのインストール
サポートされるすべてのLinuxディストリビューションはネイティブに準仮想化されており、完全なパフォーマンスを得るために特別なドライバーは不要です。ただし、Linux向けCitrix VM Toolsにゲストエージェントが含まれ、インストールすると、仮想マシンに関する追加情報をホストに提供できるようになります。動的メモリ制御(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
がゲストにインストールされていることを確認してください。
Linux向けCitrix VM Toolsをインストールするには:
-
Linux向けCitrix VM ToolsファイルをCitrix Hypervisorのダウンロードページからダウンロードします。
-
LinuxGuestTools-xxx.tar.gz
ファイルを、Linux仮想マシン、またはLinux仮想マシンがアクセスできる共有ドライブにコピーします。 -
tarファイルの内容を展開します:
tar -xzf LinuxGuestTools-xxx.tar.gz
-
ルートユーザーとして次のインストールスクリプトを実行します。
/<extract-directory>/install.sh <!--NeedCopy-->
-
カーネルがアップグレードされている場合、または仮想マシンが以前のバージョンからアップグレードされている場合は、ここで仮想マシンを再起動します。
Linuxディストリビューションのインストールに関する考慮事項
以下は、指定したLinux仮想マシンの作成時に考慮すべき、ベンダー特有の追加設定情報に関する説明です。
すべてのディストリビューションに関する詳細なリリースノートについては、「Linux仮想マシンのリリースノート」を参照してください。
Red Hat Enterprise Linux* 7(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アドレスルールを無効にしておくことをお勧めします:
-
Linuxディストリビューションによっては、複製した仮想マシンの仮想ネットワークインターフェイスのMACアドレスが、ネットワーク設定ファイルに記録されている場合があります。このような場合でも、XenCenterで仮想マシンを複製すると、新しい仮想マシンに別のMACアドレスが割り当てられます。このため、ネットワーク設定ファイルに記録されているMACアドレスを更新しないと、この仮想マシンの初回起動時にネットワークに接続できません。
-
一部のLinuxディストリビューションでは、各ネットワークインターフェイスのMACアドレスが
udev
ルールで記憶され、インターフェイスの名前が保持されます。これは、同じ物理NICが常に同じeth
nインターフェイスにマップされるようにするためであり、リムーバブルNICを使用する場合(ノートブックなど)に有用です。ただし、この動作は仮想マシンのコンテキストでは問題があります。たとえば、次のような場合の動作を想定します。
1. Configure two virtual NICs when installing a VM 1. Shut down the VM 1. Remove the first NIC
仮想マシンが再起動されると、XenCenterでは、1つのネットワークインターフェイスカードのみが表示され、
eth0
という名称になります 。一方、仮想マシンではこのNICがudevルールによりeth1
としてマップされます。その結果、ネットワークが機能しません。
仮想マシンで永続的なインターフェイス名を使用する場合は、これらのルールを無効にしてから仮想マシンを複製します。永続的なインターフェイス名をオフにしない場合は、仮想マシン内で通常の手順に従ってネットワークを再設定する必要があります。この場合、XenCenterに表示される情報が実際のインターフェイス名と異なることに注意してください。
Linuxカーネルとゲストユーティリティのアップデート
Linuxゲストユーティリティをアップデートするには、Linux向けCitrix VM Toolsからinstall.sh
スクリプトを再実行します(「Linux向けCitrix VM Toolsのインストール」を参照)。
yum
対応のディストリビューション(CentOSおよびRHEL)の場合は、xe-guest-utilities
によりyum
の設定ファイルがインストールされ、それ以降のアップデートはyum
による標準的な方法で実行されるようになります。
Debianの場合、/etc/apt/sources.list
のエントリにより、デフォルトでaptコマンドによるアップデートが可能になります。
アップグレード時に必ずinstall.sh
を再実行することをお勧めします。このスクリプトでは、仮想マシンのバージョンが確認され、必要に応じてアップデートされます。
PVからHVMゲストへのアップグレード
サポートされていない既存のPV Linuxゲストを、HVMモードで動作しているサポート対象バージョンにアップグレードするには、ゲスト内アップグレードを実行します。この時点で、アップグレードされたゲストはPVモードでのみ動作します。ただし、これはサポートされている動作ではなく、既知の問題です。次のスクリプトを実行して、新規にアップグレードされたゲストを、サポートされているHVMモードに変換します。
Citrix Hypervisorサーバーで、ローカルシェルを開いてルートユーザーとしてログオンし、次のコマンドを実行します:
/opt/xensource/bin/pv2hvm vm_name
<!--NeedCopy-->
または
/opt/xensource/bin/pv2hvm vm_uuid
<!--NeedCopy-->
仮想マシンを再起動して処理を完了します。
Linux仮想マシンのリリースノート
最近のほとんどのLinuxディストリビューションはXen準仮想化を直接サポートしていますが、インストールメカニズムや一部のカーネルの制限が異なります。
RHELグラフィカルインストールのサポート
グラフィカルインストーラーを実行するには、XenCenterで、新規VMウィザードの指示に従います。[インストールメディア] ページの [高度なOS起動パラメーター] セクションで、パラメーターの一覧にvnc
を追加します:
graphical utf8 vnc
<!--NeedCopy-->
![新しい仮想マシンウィザードのスクリーンショット。[インストールメディア]ページで値graphical utf8 vnc
が[高度なOS起動パラメーター]フィールドに入力されました。](/ja-jp/citrix-hypervisor/media/rhel-graphical-network-install.png)
ここで、新しい仮想マシン用のネットワーク構成を指定して、VNC通信を有効にする必要があります。新規VMウィザードの残りのページの処理を進めます。ウィザードが完了したら、[インフラストラクチャ] ビューで、仮想マシンを選択して、[コンソール] をクリックして仮想マシンのコンソールセッションを表示します。この時点では標準のインストーラーが使用されます。仮想マシンのインストールは、最初はテキストモードで開始されます。また、ネットワーク構成が要求される場合があります。指定したら、[グラフィックコンソールに切り替える] がXenCenterウィンドウの右上隅に表示されます。
Red Hat Enterprise Linux 7
仮想マシンを移行または一時停止した後、RHEL 7ゲストは再開時にフリーズすることがあります。詳しくは、Red Hat issue 1141249を参照してください。
CentOS 7
CentOS 7リリースノートの一覧については、「Red Hat Enterprise Linux 7」を参照してください。
Oracle Linux 7
Oracle Linux 7リリースノートの一覧については、「Red Hat Enterprise Linux 7」を参照してください。
Scientific Linux 7
Scientific Linux 7リリースノートの一覧については、「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ゲストの複製を準備するには:
-
ファイル
/etc/sysconfig/network/config
を開きます。 -
次の行を変更します:
FORCE_PERSISTENT_NAMES=yes <!--NeedCopy-->
変更後は以下の通り
FORCE_PERSISTENT_NAMES=no <!--NeedCopy-->
-
ファイルを保存して、仮想マシンを再起動します。
詳しくは、「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を参照してください。