virsh管理ツール

5544 ワード

もう一つのコマンドモードのXen管理ツールはvirsh(Virtual Shell)と呼ばれています.virshはlibvirtというソフトウェアによって提供される管理ツールであり、仮想マシンを管理するより高度な能力を提供します.virshのほとんどの機能はxmと同様に、virshを使用してXenの領域を起動、削除、制御、監視することができます.そのため、virshを使用してXen内のすべての仮想マシンを管理することもできます.
xm管理ツールが提供されている以上、なぜRed Hat Enterprise Linuxがvirshを提供する必要があるのか知りたいかもしれません.
これはLinuxの分野ではXenのほかにも多くのメカニズムが仮想化の機能を提供しているためであるが,異なる仮想化システムの使用方法は異なる.Linuxが同じ方法で様々な仮想化サブシステムを読み取り、管理できるようにlibvirtチーム(http://libvirt.org/)libvirtを発行しました.soリンクライブラリは、ソフトウェアの開発者がlibvirtを使用できるようにします.soが提供するAPIは、すべての仮想化システムを管理する.virshはlibvirtを利用していますsoリンクライブラリで作成された管理ツール.したがって、実質的にどのような仮想化サブシステムが実行されているかにかかわらず、virshの使用方法を学ぶだけで、さまざまな仮想化システムが提供する仮想マシンを使用または管理することができます.
このセクションではvirshという管理ツールの使い方について説明します.
1基本文法
virshの基本的な使い方は以下の通りです.
 
virsh [COMMAND] [ARGS...]

さらに、virshは、「ダイレクトモード」と「インタラクティブモード」の2つの実行モードを提供することに注意してください.ダイレクトモードでは、Shellでパラメータ、引数でvirshを実行する必要があります.インタラクティブモードではvirshにプロンプト文字列が提供され、プロンプト文字列の後に実行するコマンドを入力できます.virshを実行してパラメータや引数を指定しない場合は、デフォルトではインタラクティブモードに入ります.
xmと同様にCOMMANDもvirshが提供するコマンドであり,一般的なコマンドは表28−5に示す.
表28-5 virsh常用コマンド一覧表
コマンド#コマンド#
説明
help
コマンドの説明を表示
quit
virshを終えてシェルに戻る
connect
指定したVMサーバへの接続
create
新しい仮想マシンの起動
destroy
仮想マシンを削除
start
起動していない仮想マシンを開く(定義済み)
define
XMLから仮想マシンを定義
undefine
仮想マシンの定義解除
dumpxml
仮想マシンの設定値のダンプ
list
仮想マシンのリスト
reboot
VMの再起動
save
ストレージ仮想マシンの状態
restore
VMの状態に戻す
suspend
VMの実行を一時停止
resume
仮想マシンの実行を続行
dump
仮想マシンのカーネルを指定したファイルにダンプして、分析とエラーを実行します.
shutdown
VMをシャットダウン
setmem
メモリサイズの変更
setmaxmem
メモリの最大値の設定
setvcpus
仮想プロセッサの数の変更
virshコマンド構文のARGSはCOMMANDコーディネートのパラメータである.異なるCOMMANDは異なるパラメータを組み合わせる必要があるかもしれませんが、どのCOMMANDがどのパラメータを組み合わせることができるかについては、各機能の紹介でお話しします.
総じて、ARGSが仮想マシンを指定する必要がある場合は、次のフォーマットを使用して、どの仮想マシンを指定できます.
仮想マシンの名前.
仮想マシンの起動後の識別子.
仮想マシンのUUID.
以下にvirshを用いた例を示す.
[root@linux ~]# virsh ?①
virsh - 。
:  「help」
「quit」
virsh # list
Id           
----------------------------------
0  Domain-0  
virsh # quit  ②
[root@linux ~]# virsh list  ③
Id       
----------------------------------
0  Domain-0 
[root@linux ~]#

1インタラクティブモードでvirshを実行する.
②virshの実行を終了し、デフォルトのShellに戻る.
③これは直接モードでvirshを実行し、結果はインタラクティブモードと全く同じである.virshとxmの一部の機能は同じであるため,本節ではvirshとxmの違いについてのみ説明する.
2 Domain情報の表示
virshは、virshを実行するときに表28-6に示すコマンドに協力するだけで、仮想マシンに関する情報を表示できます.
表28-6 Domain情報の表示実行命令
コマンド#コマンド#
説明
domid
VMの識別子の表示
domname
VM名の表示
domuuid
仮想マシンのUUIDの表示
domstate
VMの現在の状態の表示
dominfo
VMの情報の表示
上記の各コマンドを実行する場合は、仮想マシンの名前、識別子、UUIDを指定する必要があります.以下はvirshを使用して仮想マシン情報を表示する例です.
 [root@linux ~]# virsh domid system1
3 ?①
[root@linux ~]# virsh domname 3
system1  ②
[root@linux ~]# virsh domuuid system1
8f35e0d3-f9d0-11f7-c0a5-30bd84228549 ③?
[root@linux ~]# virsh dominfo system1 ④?
Id: 3
:  system1
UUID:  8f35e0d3-f9d0-11f7-c0a5-30bd84228549
: linux
:  
: 1 : 23.7s : 512000 KB
: 511824 KB
[root@linux ~]#

①これはシステム1仮想マシンの識別子です.
②識別子3の仮想マシンの名前です.
③システム1のUUID.
④これはシステム1の完全な情報です.
3ダンプゾーン構成
上記の機能に加えてvirshは、ある仮想マシンの現在の設定値を格納することも可能である.virshが設定値を格納する動作を「ダンプ(Dump)」と呼ぶ.
仮想マシンの設定値をダンプするメリットは何ですか?
メリットはたくさんあります.少なくとも2つ考えています.まず、仮想マシンの設定値をダンプすると、ある仮想マシンの設定をバックアップして、後で設定構成を復元できます.次にvirshで仮想マシンを起動する場合は、仮想マシンのプロファイルを指定する必要があります.したがって、virshですべての仮想マシンを管理したい場合は、必ず各仮想マシンの設定値をダンプして保存してください.
仮想マシンの設定値をダンプする場合は、次のことができます.
virsh dumpxml DOMAIN

その中のDOMAINはダンプする仮想マシンです.仮想マシンの名前、識別子、またはUUIDを使用して、どの仮想マシンにダンプするかを指定できます.以下はvirshを使用して仮想マシンをダンプする例です.
[root@linux ~]# virsh dumpxml system1 ?①

system1
8f35e0d3f9d011f7c0a530bd84228549
/usr/bin/pygrub

linux
/var/lib/xen/vmlinuz.39zui7
/var/lib/xen/initrd.bTaKXX
ro root=LABEL=/

512000
1
destroy
restart
restart















[root@linux ~]# ls ②
anaconda-ks.cfg  Desktop/  install.log  install.log.syslog
[root@linux ~]# virsh dumpxml system1 > system1.virsh.xml ?③
[root@linux ~]# ls
anaconda-ks.cfg  Desktop/  install.log 
install.log.syslog  system1.virsh.xml ?④

①これはシステム1の データです.
② 、このディレクトリの にはこのいくつかのファイルしかありません.
③システム1のダンプ の データをシステム1に する.virsh.xmlファイルにあります.
④これがシステム1の データバックアップファイルです.