2.2.3. 仮想マシンのシリアルコンソールを開く
管理ポータルまたは VM ポータルからコンソールを開く代わりに、コマンドラインから仮想マシンのシリアルコンソールにアクセスできます。シリアルコンソールは、SSH とキーのペアを使用して VirtIO チャネルを介してエミュレートされます。Manager は接続のプロキシーとして機能し、仮想マシンの配置に関する情報を提供して、認証キーを保存します。各ユーザーの公開鍵は、管理ポータルまたは VM ポータルから追加できます。適切なパーミッションを持つ仮想マシンのみのシリアルコンソールにアクセスできます。
仮想マシンのシリアルコンソールにアクセスするには、ユーザーは、その仮想マシンに対する UserVmManager、SuperUser、または UserInstanceManager パーミッションを持っている必要があります。これらのパーミッションはユーザーごとに明示的に定義する必要があります。これらのパーミッションを Everyone に割り当てるだけでは不十分です。
シリアルコンソールには、Manager の TCP ポート 2222 を使用してアクセスします。このポートは、新規インストールの engine-setup
の実行時に開かれます。ポートを変更するには、ovirt-vmconsole/README を参照してください。
シリアルコンソールを使用するには、ファイアウォールルールを設定する必要があります。詳細は以下を参照してください。
シリアルコンソールは、ovirt-vmconsole
パッケージと Manager 上の ovirt-vmconsole-proxy
、および ovirt-vmconsole
パッケージと仮想化ホストの ovirt-vmconsole-host
パッケージに依存します。これらのパッケージは、新規インストールにデフォルトでインストールされます。既存のインストールにパッケージをインストールするには、ホストを再インストールします。Administration Guide の Reinstalling Hosts を参照してください。
仮想マシンのシリアルコンソールの有効化
シリアルコンソールにアクセスしている仮想マシンで、以下の行を /etc/default/grub に追加します。
GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8" GRUB_TERMINAL="console serial" GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
注記GRUB_CMDLINE_LINUX_DEFAULT
は、この設定をデフォルトのメニューエントリーのみに適用します。GRUB_CMDLINE_LINUX
を使用して、すべてのメニューエントリーに設定を適用します。これらの行がすでに /etc/default/grub にある場合は、それらを更新します。複製はしないでください。
/boot/grub2/grub.cfg を再ビルドします。
BIOS ベースのマシン:
# grub2-mkconfig -o /boot/grub2/grub.cfg
UEFI ベースのマシン:
# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
詳細は、Red Hat Enterprise Linux 7 System Administrator's Guide の GRUB 2 over a Serial Console を参照してください。
仮想マシンのシリアルコンソールにアクセスするクライアントマシンで、SSH キーペアを生成します。Manager は、RSA 鍵などの標準の SSH 鍵タイプをサポートします。
# ssh-keygen -t rsa -b 2048 -C "user@domain" -f .ssh/serialconsolekey
このコマンドにより、公開鍵と秘密鍵が生成されます。
- 管理ポータルまたは VM ポータルで、ヘッダーバーのサインインしたユーザーの名前をクリックし、Options をクリックしてEdit Optionsウィンドウを開きます。
- User's Public Key のテキストフィールドに、シリアルコンソールへのアクセスに使用されるクライアントマシンの公開鍵を貼り付けます。
-
をクリックし、仮想マシンを選択します。 - をクリックします。
- Edit Virtual Machine ウィンドウの Console タブで、Enable VirtIO serial console チェックボックスを選択します。
仮想マシンのシリアルコンソールへの接続
クライアントマシンで、仮想マシンのシリアルコンソールに接続します。
1 台の仮想マシンが利用可能な場合、このコマンドはユーザーをその仮想マシンに接続します。
# ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN -i .ssh/serialconsolekey Red Hat Enterprise Linux Server release 6.7 (Santiago) Kernel 2.6.32-573.3.1.el6.x86_64 on an x86_64 USER login:
複数の仮想マシンが利用可能な場合、このコマンドは利用可能な仮想マシンとその ID を一覧表示します。
# ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN -i .ssh/serialconsolekey list 1. vm1 [vmid1] 2. vm2 [vmid2] 3. vm3 [vmid3] > 2 Red Hat Enterprise Linux Server release 6.7 (Santiago) Kernel 2.6.32-573.3.1.el6.x86_64 on an x86_64 USER login:
接続するマシンの数を入力し、
Enter
を押します。または、固有の識別子または名前を使用して仮想マシンに直接接続します。
# ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN connect --vm-id vmid1
# ssh -t -p 2222 ovirt-vmconsole@Manager_FQDN connect --vm-name vm1
仮想マシンのシリアルコンソールからの切断
任意のキーを押してから ~ .
を押し、シリアルコンソールセッションを閉じます。
シリアルコンソールセッションが異常な形で切断されると、TCP のタイムアウトが発生します。タイムアウト期間が終了するまで、仮想マシンのシリアルコンソールに再接続することはできません。