2012-12-10
_ Ubuntu 12.10 な KVM ゲストに KVM ホストから仮想シリアルコンソールでアクセスする
KVM を利用した仮想環境を作っていて,KVM ホストは固定 IP を割り当てていて,KVM ゲストはブリッジ接続で,DHCP サーバーから IP アドレスを割り当てるような環境になっている.ゲストを再起動したときとかに,割り当てられた IP アドレスが変わってしまうこともあるので,ホストから簡単にアクセスできる仮想シリアルコンソールを利用できるようにした.
はじめに,ゲストにコンソールデバイスが定義されているか,以下のコマンドを実行して確認する.
# virsh ttyconsole my_vm
既に定義されていれば,例えば /dev/pts/1 などが表示される.
次に,ゲストにシリアルコンソールの設定を追加する.以下のようなファイルを /etc/init/ttyS0.conf として作成する.
# ttyS0 - getty # # This service maintains a getty on ttyS0 from the point the system is # started until it is shut down again. start on stopped rc RUNLEVEL=[2345] stop on runlevel [!2345] respawn exec /sbin/getty -L 115200 ttyS0 xterm
その後,以下のコマンドを実行してシリアルコンソールを初期化する.
$ sudo start ttyS0
ホストから以下のコマンドを実行すると,login プロンプトが表示されてアクセスが可能になった.
# virsh console my_vm Connected to domain my_vm Escape character is ^] Ubuntu 12.10 ubuntu ttyS0 ubuntu login: