機械翻訳について

第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_vmdisksovm_vmhostdvm_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ユーティリティをインストールするには、次の操作を実行します。

  1. Oracle VMのダウンロード・ページから、Oracle VMユーティリティを.zipファイルでダウンロードします。

    https://www.oracle.com/technetwork/server-storage/vm/downloads/index.html

  2. .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 }

オプション

次の表に、このコマンドで使用可能なオプションを示します。

オプション

説明

-u username

Oracle VM Managerの管理ユーザーのユーザー名。 このオプションは必須です。

[ -p password | -E ]

Oracle VM Managerの管理ユーザーの対応するパスワード。 次のようにパスワードを指定できます。

  • コマンドラインでパスワードのオプションを設定しないでおきます。 そうすると、Oracle VMユーティリティが、指定するようにプロンプトを表示します。 この方法を使用してパスワードを設定してください。

  • 環境変数としてパスワードを設定し、-Eオプションを使用します。 環境変数は、必要がなくなったら削除することをお薦めします。

    OVMUTIL_PASS環境変数を-Eオプションとともに使用する必要があります。 次のように、この変数を単一のセッションに設定します。

    # export OVMUTIL_PASS=password
  • コマンドラインで、-pオプションを使用してパスワードを指定します。 このオプションは、Oracle VM Release 3.4では非推奨です。

{ -h hostname }

Oracle VM Managerを実行しているサーバーのホスト名。

-c { setvcpu | getvcpu | rmvcpu }

実行するコマンド。 このオプションは必須です。

setvcpuコマンドは、仮想CPUをスレッドにハードバインドまたは固定します。 たとえば、-c setvcpu -s 0,1,2は、vcpu0をthread0に、vcpu1をthread1に、vcpu2をthread2に物理的にバインドします。 getvcpuコマンドを使用して、選択した仮想マシンの固定された仮想CPUに関する情報を取得します。 CPUバインディングはただちに有効になり、その後の仮想マシンの起動時にも継続されます。

-v vm_name

仮想マシン名。

-U vm_uuid

仮想マシンUUID。 -v vm_nameオプションで仮想マシン名を指定しない場合、仮想マシンのUUIDを指定する必要があります。

-s cpu_thread_list ...

仮想CPUをバインドできる物理スレッド番号のリスト。 値は、次のように設定できます。

  • カンマで区切られた、1つ以上の番号。 たとえば、0,1,2,3,4です。

  • 番号の範囲。 たとえば、0-4は、0,1,2,3,4と同じです。

  • 1つの番号を除いた番号の範囲。 たとえば、0-4,^2は、0,1,3,4と同じです。

  • カンマ区切りの番号と範囲の組合せ。 たとえば、0-2,4,6-8は、0,1,2,4,6,7,8と同じです。

ノート

-sオプションの値には、サーバーの物理CPU数より大きい数を設定しないでください。 たとえば、サーバーに8つの物理CPUがある場合、0から7を設定できます。 8以上を設定すると無効です。

このコマンドは次のオプションと組み合せて使用してください。

-c setvcpu

例 9.1 仮想マシンの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.

例 9.2 仮想マシンのCPU固定の確認

この例では、仮想マシンの仮想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 }

オプション

次の表に、このコマンドで使用可能なオプションを示します。

オプション

説明

-u username

Oracle VM Managerの管理ユーザーのユーザー名。 このオプションは必須です。

[ -p password | -E ]

Oracle VM Managerの管理ユーザーの対応するパスワード。 次のようにパスワードを指定できます。

  • コマンドラインでパスワードのオプションを設定しないでおきます。 そうすると、Oracle VMユーティリティが、指定するようにプロンプトを表示します。 この方法を使用してパスワードを設定してください。

  • 環境変数としてパスワードを設定し、-Eオプションを使用します。 環境変数は、必要がなくなったら削除することをお薦めします。

    OVMUTIL_PASS環境変数を-Eオプションとともに使用する必要があります。 次のように、この変数を単一のセッションに設定します。

    # export OVMUTIL_PASS=password
  • コマンドラインで、-pオプションを使用してパスワードを指定します。 このオプションは、Oracle VM Release 3.4では非推奨です。

{ -h hostname }

Oracle VM Managerを実行しているサーバーのホスト名。

-v vm_name

仮想マシン名。

-U vm_uuid

仮想マシンUUID。 -v vm_nameオプションで仮想マシン名を指定しない場合、仮想マシンのUUIDを指定する必要があります。

例 9.3 仮想マシンの仮想ディスクのリスト表示
# ./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 }

オプション

次の表に、このコマンドで使用可能なオプションを示します。

オプション

説明

-u username

Oracle VM Managerの管理ユーザーのユーザー名。 このオプションは必須です。

[ -p password | -E ]

Oracle VM Managerの管理ユーザーの対応するパスワード。 次のようにパスワードを指定できます。

  • コマンドラインでパスワードのオプションを設定しないでおきます。 そうすると、Oracle VMユーティリティが、指定するようにプロンプトを表示します。 この方法を使用してパスワードを設定してください。

  • 環境変数としてパスワードを設定し、-Eオプションを使用します。 環境変数は、必要がなくなったら削除することをお薦めします。

    OVMUTIL_PASS環境変数を-Eオプションとともに使用する必要があります。 次のように、この変数を単一のセッションに設定します。

    # export OVMUTIL_PASS=password
  • コマンドラインで、-pオプションを使用してパスワードを指定します。 このオプションは、Oracle VM Release 3.4では非推奨です。

{ -h hostname }

Oracle VM Managerを実行しているサーバーのホスト名。

-v vm_name

仮想マシン名。 仮想マシンの名前は、仮想マシンの作成時に割り当てる名前です。

-U vm_uuid

仮想マシンUUID。 -v vm_nameオプションで仮想マシン名を指定しない場合、仮想マシンのUUIDを指定する必要があります。

例 9.4 仮想マシンへのOracle VM Server詳細の送信
# ./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形式で出力します。

ホスト・メトリックを収集する方法は次のとおりです。

  1. ovm_vmhostdスクリプトを実行して、Oracle VM Serverホストに関するメトリックを仮想マシン・メッセージとして送信します。

  2. 仮想マシン・メッセージを受信したゲスト仮想マシンにvm-dump-metricsスクリプトをコピーします。

  3. 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のインストールおよび使用を参照してください。