第9章 Oracle VMユーティリティの使用方法
Oracle VMユーティリティは、仮想マシンが実行されているOracle VM Serverホストに関するメトリックの収集やCPU固定の構成(これはハード・パーティショニングとも呼ばれる)など、Oracle VM環境で特定のタスクを実行できるようにするコマンドライン・スクリプトのコレクションです。
The Oracle VMユーティリティは、Oracle VM APIを使用して直接Oracle VM Managerと通信します。 Oracle VMユーティリティは、Oracle VM Manager管理ユーザー名およびパスワードを使用してOracle VM APIに接続します。 Oracle VM Managerは、ポート7002(HTTPS)でOracle VMユーティリティをリッスンします。
-
Oracle VMユーティリティのバージョン2.1以降は、Oracle VM Managerリリース3.4で動作します。 さらに、ovm_vmdisks、ovm_vmhostd、vm_dump_metricsおよびovm_vmcontrolスクリプトのみが、Oracle VM Managerリリース3.4で使用できます。 他のすべてのスクリプトはOracle VM Managerコマンドライン・インタフェースでは、廃止済または推奨されていません。 Oracle VM環境で管理タスクを実行する方法の詳細は、Oracle VM Managerコマンドライン・インタフェース・ユーザーズ・ガイドを参照してください。
-
Oracle VMユーティリティは、そのまま提供され、Oracleではサポートされません。 ただし、Oracleは次の場合、Oracle VMユーティリティをサポートします。
-
Oracle VM環境のOracle LinuxゲストでSAPアプリケーションを実行している場合、ovm_vmhostdスクリプトおよびvm_dump_metricsスクリプトがサポートされます。
-
ovm_vmcontrolスクリプトは、ハード・パーティショニングを構成しているときのみサポートされ、これはCPU固定とも呼ばれます。 詳細は、『Oracle VM概要ガイド』の「仮想マシンCPUのハード・パーティショニングの設定」に関する項を参照してください。
-
Oracle VMユーティリティのダウンロードとインストール
Oracle VMユーティリティをインストールするには、次の操作を実行します。
-
Oracle VMのダウンロード・ページから、Oracle VMユーティリティを
.zip
ファイルでダウンロードします。https://www.oracle.com/technetwork/server-storage/vm/downloads/index.html
-
.zip
ファイルのコンテンツを展開します。 具体的な手順に関しては、readme
ファイルを参照してください。
9.1 Oracle VM Virtual Machine Control (ovm_vmcontrol)
ovm_vmcontrolスクリプトによって、CPU固定を構成できます。これは、仮想マシンに対するハード・パーティショニングとも呼ばれます。
-
ovm_vmcontrolスクリプトは、x86ベースのOracle VM Server上でのみ実行される仮想マシンのCPUの固定をサポートします。 Oracle VM Server for SPARCで実行されている仮想マシンのCPU固定を構成することはできません。
-
Oracle VM Release 3.4.1またはリリース3.4.2を使用している場合、仮想マシンのCPU固定を構成した後、構成が反映されるように仮想マシンを停止してから起動する必要があります。 仮想マシンを再起動しても、CPU固定の構成変更はロードされません。
-
Oracle VM Release 3.4.3では、動的CPU固定がサポートされています。 そのため、仮想マシンのCPU固定を構成した後、構成を有効にするために仮想マシンを停止してから起動する必要性がなくなりました。
構文
ovm_vmcontrol
{ -u
} [ username
-p
| password
-E
] { -h
} { hostname
-c
} { command
-v
| vm_name
-U
} [ vm_uuid
-s
... ]cpu_thread_list
ここで、
は次のようになります。
command
{ setvcpu
| getvcpu
| rmvcpu
}
オプション
次の表に、このコマンドで使用可能なオプションを示します。
オプション |
説明 |
---|---|
|
Oracle VM Managerの管理ユーザーのユーザー名。 このオプションは必須です。 |
[ |
Oracle VM Managerの管理ユーザーの対応するパスワード。 次のようにパスワードを指定できます。
|
{ |
Oracle VM Managerを実行しているサーバーのホスト名。 |
|
実行するコマンド。 このオプションは必須です。
|
|
仮想マシン名。 |
|
仮想マシンUUID。 |
|
仮想CPUをバインドできる物理スレッド番号のリスト。 値は、次のように設定できます。
ノート
このコマンドは次のオプションと組み合せて使用してください。
|
例
この例では、仮想マシンの仮想CPUをスレッド0、1、3、5および7にバインドします。
# ./ovm_vmcontrol -u admin -h localhost -v MyVM01 -c setvcpu -s 0-3,^2,5-7,^6
Oracle VM VM Control utility 2.1.
Connecting to OVM Manager using Web Service.
Connected.
OVM Manager version: version
Command : setvcpu
Pinning vCPU '0-3,^2,5-7,^6' to VM 'MyVM01'
Pin vCPU succeed.
この例では、仮想マシンの仮想CPUがスレッド0、1、3、5および7にバインドされていることを示します。
# ./ovm_vmcontrol -u admin -h localhost -v MyVM01 -c getvcpu
Oracle VM VM Control utility 2.1.
Connecting to OVM Manager using Web Service.
Connected.
OVM Manager version: version
Command : getvcpu
Getting pinned CPU list...
Current pinned CPU:0-3,^2,5-7,^6
9.2 Oracle VM Retrieve Disk (ovm_vmdisks)
ovm_vmdisksスクリプトは、仮想ディスクに関する詳細を取得します。 このスクリプトは、仮想マシン構成(vm.cfg
)ファイルに加えて、指定した仮想マシンのすべての仮想ディスクをリスト表示します。 仮想ディスクが仮想マシンに直接アタッチされている物理デバイスである場合、このスクリプトは仮想マシンが割り当てられているOracle VM Server上のデバイス・マッパー・エントリを表示します。 仮想ディスクがNFSサーバー上のファイルである場合、ユーティリティは、NFSサーバー名、マウント・ポイント、およびファイル名と場所を表示します。
構文
ovm_vmdisks
{ -u
} { username
-p
| password
-E
} { -h
} { hostname
-v
| vm_name
-U
}vm_uuid
オプション
次の表に、このコマンドで使用可能なオプションを示します。
オプション |
説明 |
---|---|
|
Oracle VM Managerの管理ユーザーのユーザー名。 このオプションは必須です。 |
[ |
Oracle VM Managerの管理ユーザーの対応するパスワード。 次のようにパスワードを指定できます。
|
{ |
Oracle VM Managerを実行しているサーバーのホスト名。 |
|
仮想マシン名。 |
|
仮想マシンUUID。 |
例
# ./ovm_vmdisks -u admin -p Welcome1 -h localhost -v MyVM01 Oracle VM Retrieve Disk utility 2.1. Connecting to OVM Manager using Web Service. Connected. Virtual Machine : 'MyVM01' Assigned Server : OVS_01 Virtual Disk : '0004fb00001200003a3384c82332cce4.img' size : 50GB repository='MyRepo' Mounted Path=/OVS/Repositories/ \ 0004fb0000030000c96714fda5ef202f/ \ VirtualDisks/0004fb00001200003a3384c82332cce4.img Absolute Path=IP_address
:/ \ nfs/mypath/sp1/VirtualDisks/0004fb00001200003a3384c82332cce4.img Config File : Mounted Path=/OVS/Repositories/ \ 0004fb0000030000c96714fda5ef202f/ \ VirtualMachines/0004fb000006000097e4d197a07005d9/vm.cfg Absolute Path=IP_address
:/ \ nfs/mypath/sp1/VirtualMachines/0004fb000006000097e4d197a07005d9/vm.cfg
9.3 メトリック・メッセージング用Oracle VM Hostd (ovm_vmhostd)
ovm_vmhostdスクリプトは、仮想マシンが実行されているOracle VM Serverホストに関するメトリックを収集します。 60秒ごとに、スクリプトは仮想マシンが実行されていることを確認し、仮想マシン自体にホストに関するメトリックを送信します。 つまり、同じ仮想マシンがOracle VM Serverホストに関するメトリックを送信および受信します。
ovm_vmhostdスクリプトが送信する仮想マシン・メッセージには、vmhost
のキーがあります。 Oracle VM Serverホストに関するメトリックは、仮想マシン・メッセージの値として定義されています。
仮想マシンからホスト・メトリックを取得するには、Oracle VM Guest Additionsデーモンovmdを使用するか、またはvm-dump-metricsスクリプトを使用します。 9.4項「仮想マシンからのホスト・メトリックの取得(vm-dump-metrics)」を参照してください。
ovm_vmhostdスクリプトは、Oracle VM Guest Additionsを使用して、仮想マシン・メッセージとしてメトリックを送受信します。 このため、ゲスト仮想マシンが、Oracle VM Guest AdditionsのインストールされたOracle Linuxを実行している必要があります。 第 8 章 Oracle VM Guest Additionsのインストールおよび使用方法を参照してください。
構文
ovm_vmhostd
{ -u
} [ username
-p
| password
-E
] { -h
} { hostname
-v
| vm_name
-U
}vm_uuid
オプション
次の表に、このコマンドで使用可能なオプションを示します。
オプション |
説明 |
---|---|
|
Oracle VM Managerの管理ユーザーのユーザー名。 このオプションは必須です。 |
[ |
Oracle VM Managerの管理ユーザーの対応するパスワード。 次のようにパスワードを指定できます。
|
{ |
Oracle VM Managerを実行しているサーバーのホスト名。 |
|
仮想マシン名。 仮想マシンの名前は、仮想マシンの作成時に割り当てる名前です。 |
|
仮想マシンUUID。 |
例
# ./ovm_vmhostd -u admin -h localhost -v MyVM01 Oracle VM Hostd 2.1. Connecting to OVM Manager using Web Service. Connected. Processing VM : 'MyVM01' VM : 'MyVM01' has status : Running. Message sent. Sleeping 60 seconds. Sleeping 60 seconds. Sleeping 60 seconds.
9.4 仮想マシンからのホスト・メトリックの取得(vm-dump-metrics)
vm-dump-metricsスクリプトは、Oracle VM Serverホストに関するメトリックを、仮想マシン・ゲストで実行しているSAPアプリケーションが使用できるXML形式で出力します。
ホスト・メトリックを収集する方法は次のとおりです。
-
ovm_vmhostdスクリプトを実行して、Oracle VM Serverホストに関するメトリックを仮想マシン・メッセージとして送信します。
-
仮想マシン・メッセージを受信したゲスト仮想マシンにvm-dump-metricsスクリプトをコピーします。
-
vm-dump-metricsスクリプトを実行します。 vm-dump-metricsスクリプトはコマンドやオプションを使用しません。
vm-dump-metricsスクリプトは、ovmdに問い合せて、キーvmhost
を持つメッセージを取得します。 取得後、スクリプトでは次のいずれかの操作を実行します。
-
メッセージを解析し、XMLを標準出力(stdout)に出力します。
-
vmhost
キー付きのメッセージが存在しない場合、ステータス1
で終了します。
次に、vm-dump-metricsスクリプトからのXML出力の例を示します。
<metrics> <metric type='real64' context='host'> <name>TotalCPUTime</name> <value>2694.3596</value> </metric> <metric type='uint64' context='host'> <name>PagedOutMemory</name> <value>0</value> </metric> <metric type='uint64' context='host'> <name>PagedInMemory</name> <value>0</value> </metric> <metric type='uint64' context='host'> <name>UsedVirtualMemory</name> <value>6747</value> </metric> <metric type='uint64' context='host'> <name>FreeVirtualMemory</name> <value>9817</value> </metric> <metric type='uint64' context='host'> <name>FreePhysicalMemory</name> <value>9817</value> </metric> <metric type='uint64' context='host'> <name>MemoryAllocatedToVirtualServers</name> <value>6747</value> </metric> <metric type='uint32' context='host'> <name>NumberOfPhysicalCPUs</name> <value>4</value> </metric> <metric type='string' context='host'> <name>HostSystemInfo</name> <value>ovm3</value> </metric> <metric type='string' context='host'> <name>VirtProductInfo</name> <value>Oracle VM 3</value> </metric> <metric type='string' context='host'> <name>VirtualizationVendor</name> <value>Oracle Corporation</value> </metric> <metric type='uint64' context='host'> <name>Time</name> <value>1360606566774</value> </metric> <metric type='string' context='host'> <name>HostName</name> <value>ovm3</value> </metric> <metric type='uint64' context='vm' id='0' uuid='0004fb00-0006-0000-d72b-647e20a85939'> <name>PhysicalMemoryAllocatedToVirtualSystem</name> <value>1024</value> </metric> <metric type='uint64' context='vm' id='0' uuid='0004fb00-0006-0000-d72b-647e20a85939'> <name>ResourceMemoryLimit</name> <value>1024</value> </metric> <metric type='uint32' context='vm' id='0' uuid='0004fb00-0006-0000-d72b-647e20a85939'> <name>ResourceProcessorLimit</name> <value>1</value> </metric> <metric type='real64' context='vm' id='0' uuid='0004fb00-0006-0000-d72b-647e20a85939'> <name>TotalCPUTime</name> <value>2694.3596</value> </metric> </metrics>
Oracle VM Guest Additionsデーモンの直接問合せ
vm-dump-metricsスクリプトを使用するかわりに、次に示すように、ovmdを問い合せてOracle VM Serverホストに関するメトリックを含むメッセージを表示できます。
# ovmd -g vmhost com.sap.host.VirtualizationVendor=Oracle Corporation;com.sap.host.VirtProductInfo=Oracle VM 3; com.sap.host.PagedInMemory=0;com.sap.host.PagedOutMemory=0;com.sap.host.PageRates=0; com.sap.vm.uuid=0004fb0000060000d72b647e20a85939;com.sap.host.HostName=ovm3; com.sap.host.HostSystemInfo=ovm3;com.sap.host.NumberOfPhysicalCPUs=4;com.sap.host.NumCPUs=4; com.sap.host.TotalPhyMem=16383;com.sap.host.UsedVirtualMemory=6747; com.sap.host.MemoryAllocatedToVirtualServers=6747;com.sap.host.FreeVirtualMemory=9817; com.sap.host.FreePhysicalMemory=9817;com.sap.host.TotalCPUTime=381175.97; com.sap.host.Time=1360606887997;com.sap.vm.PhysicalMemoryAllocatedToVirtualSystem=1024; com.sap.vm.ResourceMemoryLimit=1024;com.sap.vm.TotalCPUTime=2696.2214; com.sap.vm.ResourceProcessorLimit=1;
Oracle VM Guest Additionsデーモンovmdの詳細は、第 8章 Oracle VM Guest Additionsのインストールおよび使用を参照してください。