7 VM_MAKERコマンド・リファレンス

vm_makerユーティリティには、Oracle Linux KVMゲストの作成、破棄およびその他の操作をするコマンドが用意されています。

7.1 vm_makerユーティリティについて

vm_makerコマンドライン・ユーティリティを使用して、Oracle Linux KVMゲストを管理できます。

ノート:

Exadataでは、virshコマンドを使用したKVMゲストの直接操作はサポートされていません。

vm_makerコマンドライン・ユーティリティは、各KVMホスト/opt/exadata_ovm/vm_makerにあります。

構文

次に、vm_makerコマンドの一般的な構文を示します。次のトピックでは、個々のコマンドについて説明しています。

vm_maker --command --option [--option ...]

一部のコマンドまたはオプションには、ゲスト名などの引数を指定します。ゲスト名を一意に識別するために十分な文字のみが必要です。

ノート:

Oracle Exadata Deployment Assistant (OEDA)には、Oracle Linux KVMゲストを管理する代替のコマンドライン・ユーティリティを提供する、OEDAコマンドライン・インタフェース(OEDACLI)が含まれます。主な違いは、OEDACLIでは複数のゲストにわたって操作をオーケストレートできるのに対して、vm_makerでは、vm_makerが常駐するOracle Linux KVMホスト上での操作に制限される点です。使用するユーティリティを決定する前に、要件を検討してください。

7.2 add-bonded-bridgeコマンド

--add-bonded-bridgeコマンドを使用して、結合イーサネット・インタフェース上にブリッジを追加します。

構文

vm_maker --add-bonded-bridge bridge_name --first-slave interface1 --second-slave interface2 
[ --vlan vlanid ] [ --bond-mode { active-backup | lacp }]

オプション

  • bridge_name: 新しいブリッジに使用する名前。ブリッジ名は、vmで始まり、インタフェース名が続く必要があります。たとえば、vmeth1
  • --first-slave: ボンディングされたブリッジで構成されるインタフェース・ペアの最初の部分。
  • --second-slave: ボンディングされたブリッジで構成されるインタフェース・ペアの2つ目の部分。
  • --vlan: オプションで、ボンディングされたブリッジに使用するVLAN IDを指定します。
  • --bond-mode: オプションで、ボンディングされたブリッジに使用する結合モードを指定します。
    • active-backupは、1つのネットワーク・インタフェースですべてのネットワーク・トラフィックを処理するボンディングされたブリッジを構成し、もう1つのネットワーク・インタフェースは最初のネットワーク・インタフェースで障害が発生した場合にのみアクティブになります。このモードはフォルト・トレランスを提供し、デフォルト設定です。

    • lacpは、Link Aggregation Control Protocol (LACP)を使用して両方のネットワーク・インタフェースがワークロードを共有するボンディングされたブリッジを構成します。このモードでは、フォルト・トレランスが提供され、ネットワーク帯域幅が増加します。この結合モードは、動的リンク・アグリゲーションとも呼ばれ、IEEE 802.3ad動的リンクをサポートするスイッチを必要とします。

7.3 add-single-bridgeコマンド

--add-single-bridgeコマンドを使用して、単一のイーサネット・インタフェース上にブリッジを追加します。

構文

vm_maker --add-single-bridge bridge_name [ --vlan vlanid ]

オプション

  • bridge_name: 新しいブリッジに使用する名前。ブリッジ名は、vmで始まり、vmeth1などのインタフェース名が続く必要があります。
  • --vlan: オプションで、ブリッジに使用するVLAN IDを指定します。

7.4 allocate-bridgeコマンド

ネットワーク・ブリッジをゲストに関連付けるには、--allocate-bridgeコマンドを使用します。

構文

vm_maker --allocate-bridge bridge-name --domain guest-name [ --vlan vlanid ]

オプション

  • bridge-name: 指定したゲストに関連付ける、以前に作成したネットワーク・ブリッジの名前。
  • guest-name: ネットワーク・ブリッジを追加するゲストの名前。
  • --vlan: オプションで、ネットワーク・ブリッジに使用するVLAN IDを指定します。

使用上のノート

--allocate-bridgeコマンドの出力には、この手順を完了するために実行する必要がある一連の追加の手動ステップが含まれています。

最初の手動ステップでは、KVMゲスト内で使用する一意のネットワーク・インタフェース名を選択する必要があります。このゲスト・インタフェースはKVMホスト上のブリッジ・ネットワーク・インタフェースにマップされます。このインタフェース名にはネーミング規則を使用することも、KVMホストからインタフェース名を引き継ぐこともできます。どちらを選択した場合でも、ステップ2のNAME="guest-interface"エントリが適切に調整されていることを確認します。

次に、手動ステップの例を示します。

ノート:

手順は環境に固有です。したがって、--allocate-bridgeコマンドの出力に示されている追加の手動ステップを実行してください。次の例のコマンドはコピーしないでください。

[INFO] Please perform the following manual steps:
[INFO] 1. Determine a unique network interface name within the domain to which
[INFO]    you are attaching this interface. Typically bonded
[INFO]    interfaces are named bondeth<number>, for example 'bondeth1', and
[INFO]    non-bonded interfaces are named eth<number>, for example 'eth2'.
[INFO]    The name must be unique within the domain. In the example below
[INFO]    the name 'bondeth0' has been chosen.
[INFO] 2. Add the following line to the file
[INFO]    '/etc/udev/rules.d/70-persistent-net.rules' within the domain:
[INFO]    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNELS=="0000:00:PCI-slot-number.0", ATTR{type}=="1", NAME="guest-interface"
[INFO] You MUST execute steps 4 and 5! You CANNOT simply reboot from within
[INFO] the domain.
[INFO] 4. vm_maker --stop-domain guest-name
[INFO] 5. vm_maker --start-domain guest-name
[INFO] 6. Login to the domain and run the following command:
[INFO]    /opt/oracle.cellos/ipconf.pl -nocodes
[INFO]    This command will ask you for configuration information for this
[INFO]    new interface.
[INFO] NOTE: if you have more than one interface to add to this domain,
[INFO] please execute the instructions above, and then call this command again.
[INFO] The domain must be stopped and started between invocations of this
[INFO] command.

7.5 attachコマンド

--attachコマンドを使用して、ディスク・イメージをゲストに接続します。

構文

vm_maker --attach --disk-image image_name --domain guest_name [ --no-reflink ]

オプション

  • --disk-image: 接続するディスク・イメージの名前。

    • 完全修飾ファイル名ではないディスク・イメージ名(例: shared.img)を指定する場合は、共有ディスク・イメージがKVMホスト/EXAVMIMAGES内に存在している必要があります。この場合は、共有ディスク・イメージ・ファイルが、ゲスト固有のディレクトリ/EXAVMIMAGES/GuestImages/guest_nameにコピーされます。デフォルトでは、/EXAVMIMAGES内の共有イメージ・ファイルを参照するreflinkコピーが、ゲスト固有のディレクトリに作成されます。reflinkを使用することなく共有ディスク・イメージ・ファイルをアタッチするには、--no-reflinkオプションを追加します。この場合、ゲスト固有のディレクトリ内のイメージ・ファイルは、/EXAVMIMAGES内のイメージ・ファイルとは別個のコピーになります。

    • ゲスト固有のディレクトリに完全修飾ディスク・イメージ名(例: /EXAVMIMAGES/GuestImages/guest01.example.com/pv2_vgexadb.img)を指定する場合は、指定した場所にディスク・イメージ・ファイルが存在している必要があります。この場合、ディスク・イメージ・ファイルは、ファイル・パス(例: guest01.example.com)で識別されるゲストにのみアタッチできます。追加のコピーが発生することはありません。

  • --domain: ゲストの名前。
  • --no-reflink: このオプションは、共有イメージ・ファイルのゲスト固有のイメージ・ディレクトリに、別個のコピー(reflinkではない)を作成するために使用します。このオプションは、非共有イメージ・ファイルでは無視されます。

使用上のノート

  • KVMゲストには、最大で112個のディスクを接続できます。

7.6 autostartコマンド

--autostartコマンドを使用して、ゲストの自動起動を管理します。

構文

vm_maker --autostart guest_name { --enable | --disable }

オプション

  • guest_name: 構成するゲストの名前。
  • --enable: KVMホストの起動時に自動的に起動するように、ゲストを構成します。
  • --disable: KVMホストの起動時に自動的に起動しないように、ゲストを構成します。

7.7 boot-from-hdコマンド

--boot-from-hdコマンドを使用して、前の--boot-from-isoコマンドの後にプライマリ・ブート・デバイスを使用して起動するゲストを構成します。

構文

vm_maker --boot-from-hd --domain guest-name

オプション

  • guest-name: 構成するゲストの名前。

使用上のノート

--boot-from-hdコマンドは、プライマリ・ブート・デバイスを使用して起動するゲストを構成します。--start-domainコマンドを使用して、ドメインを個別に起動する必要があります。

7.8 boot-from-isoコマンド

--boot-from-isoコマンドを使用して、指定した診断ISOファイルから起動するゲストを構成します。

構文

vm_maker --boot-from-iso ISO-file --domain guest-name

オプション

  • ISO-file: 指定したゲストの起動に使用する診断ISOの名前。
  • guest-name: 指定したISOファイルを使用して起動するゲストの名前。

使用上のノート

--boot-from-isoコマンドは、指定したISOファイルを使用して起動するゲストを構成します。

--boot-from-isoコマンドの出力には、診断モードでゲストを起動してネットワークを構成するための追加コマンドが含まれています。

出力には、ドメインを停止し、そのプライマリ・ブート・デバイスを使用してブートするために再構成するコマンドも含まれています。これらのコマンドは、ゲストを診断モードで使用し終わったら使用します。

たとえば:

# vm_maker --boot-from-iso /root/home/diagnostics.iso --domain dm01vm01
[INFO] Running 'virsh undefine dm01vm01.example.com'...
[INFO] Running 'virsh define /var/log/exadatatmp/dm01vm01.example.com.xml.new.357b'...
[INFO] The domain 'dm01vm01.example.com' is ready for booting.
[INFO] Run the following command to boot from the diagnostic iso:
[INFO] 
[INFO] virsh start dm01vm01.example.com --console
[INFO] 
[INFO] If network is needed to be setup on the VM, run 
[INFO] setup_management.sh from the console after the guest has booted.
[INFO] 
[INFO] When finished, run the following commands to restore
[INFO] the domain to boot from its hard disk:
[INFO] 
[INFO] vm_maker --stop-domain dm01vm01.example.com --force
[INFO] vm_maker --boot-from-hd --domain dm01vm01.example.com

7.9 change-sf-vlanコマンド

--change-sf-vlanコマンドを使用して、Exadata Secure RDMA Fabric IsolationのクラスタおよびストレージVLANを指定します。

構文

vm_maker --change-sf-vlan [ --new-cluster-vlan vlanid ] [ --new-storage-vlan vlanid ] --domain guest_name --restart-domain

オプション

  • --new-cluster-VLAN: クラスタ・ネットワーク・パーティションに使用するVLAN IDを指定します。
  • --new-cluster-VLAN: ストレージ・ネットワーク・パーティションに使用するVLAN IDを指定します。
  • --domain: コマンドの対象であるゲストの名前。
  • --restart-domain: ゲストを再起動して、VLAN設定をファイナライズします(必須)。

7.10 checkコマンド

--checkコマンドを使用して、システムの構成ステータスを確認および表示します

構文

vm_maker --check

7.11 cleanup-ipコマンド

--cleanup-ipコマンドを使用して、--setup-ipコマンドによってplumbされたネットワーク・インタフェースを削除およびクリーン・アップします。

構文

vm_maker --cleanup-ip network_interface [ --vlan vlanid ]

オプション

  • network_interface: クリーン・アップするネットワーク・インタフェースの名前を指定します。
  • --vlan: オプションで、指定されたネットワーク・インタフェースとともに使用されるVLAN IDを指定します。

例7-1 ネットワーク・インタフェースのクリーン・アップ

次に、--cleanup-ipコマンドを使用して、--setup-ipコマンドによってplumbされたネットワーク・インタフェースを削除およびクリーン・アップする例を示します。

# ping 192.0.2.1
PING 192.0.2.1 (192.0.2.1) 56(84) bytes of data.
From 10.32.106.12 icmp_seq=1 Destination Host Unreachable
^C
--- 192.0.2.1 ping statistics ---
2 packets transmitted, 0 received, +1 errors, 100% packet loss, time 999ms
# /opt/exadata_ovm/vm_maker --setup-ip 192.0.2.6 --interface eth3 --netmask 255.255.255.128 --gateway 192.0.2.1 --vlan 144
[INFO] Interface eth3 currently down
[INFO] Bringing up interface eth3
[INFO] Interface eth3.144 is plumbed.
# ping 192.0.2.1 
PING 192.0.2.1 (192.0.2.1) 56(84) bytes of data.
64 bytes from 192.0.2.1: icmp_seq=2 ttl=255 time=0.317 ms
64 bytes from 192.0.2.1: icmp_seq=3 ttl=255 time=0.302 ms
64 bytes from 192.0.2.1: icmp_seq=4 ttl=255 time=0.307 ms
^C
--- 192.0.2.1 ping statistics ---
4 packets transmitted, 3 received, 25% packet loss, time 3077ms
rtt min/avg/max/mdev = 0.302/0.308/0.317/0.021 ms
# ip rule 
0: from all lookup local 
32757: from 192.0.2.6 to 192.0.2.1 iif eth3.144 lookup main 
32758: from all to 10.32.96.5 lookup 220 
32759: from 10.32.96.5 lookup 220 
32760: from all to 10.32.106.0/23 lookup 210 
32761: from 10.32.106.0/23 lookup 210 
32762: from all to 192.168.0.4 lookup 181 
32763: from 192.168.0.4 lookup 181 
32764: from all to 192.168.0.3 lookup 180 
32765: from 192.168.0.3 lookup 180 
32766: from all lookup main 
32767: from all lookup default 
# ip a s | grep eth3
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
67: eth3.144@eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 inet 192.0.2.6/25 scope global eth3.144
# /opt/exadata_ovm/vm_maker --cleanup-ip eth3 --vlan 144
[INFO] Deleting routing rules.
[INFO] Flushing ip-address from interface.
# ip a s | grep eth3
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000

7.12 configure-systemコマンド

--configure-systemコマンドを使用して、システムを構成します。

構文

vm_maker --configure-system [ --no-build-base-image ] [ --qiniq ]

使用上のノート

このコマンドにより、/EXAVMIMAGESが作成され、仮想機能が作成されます。--no-build-base-imageオプションを指定した場合、vm_makerはベース・イメージの存在をチェックしません。--qinqオプションは、Exadata Secure RDMA Fabric Isolationをサポートするための追加構成を実行します。

7.13 console-logコマンド

--console-logコマンドを使用して、Oracle Linux KVMゲストのコンソール出力のロギングを管理します。

構文

vm_maker --console-log { enable | disable | status } --domain guest_name [ --restart-domain ]

オプション

  • --console-log enable: コンソール出力をログ・ファイルに書き込むように、指定されたゲストを構成します。

    以前にロギングを無効にしたゲストでロギングを有効にするには、変更を実装するためにゲストを再起動する必要があります。--restart-domainオプションを使用するか、ゲストを個別に再起動できます。

  • --console-log disable: コンソール出力をログ・ファイルに書き込まないように、指定されたゲストを構成します。

    以前にロギングを有効にしたゲストでロギングを無効にするには、変更を実装するためにゲストを再起動する必要があります。--restart-domainオプションを使用するか、ゲストを個別に再起動できます。

  • --console-log status: 指定したゲストのコンソール・ロギング・ステータスをレポートします。
  • guest_name: コマンドの対象である既存のゲストの名前。
  • --restart-domain: オプションで、指定されたゲストを再起動して、コンソール・ロギングの変更を実装します。このオプションは、--console-log enableまたは--console-log disableとの組合せでのみ有効です。

7.14 createコマンド

--createコマンドを使用して、ディスク・イメージを作成します。

構文

vm_maker --create --disk-image image_name [ --size size ] [ --filesystem filesystem_type ] 
  [ --from-zip zipfile ] [ --attach --domain guest_name [ --no-reflink ]]

オプション

  • --disk-image: 指定のイメージ名を使用して、ディスク・イメージを作成します。

    • 完全修飾ファイル名ではないディスク・イメージ名(例: shared.img)を指定すると、共有ディスク・イメージがKVMホスト/EXAVMIMAGES内に作成されます。この場合、--attachオプションを追加するか、個別のvm_maker --attachコマンドを使用することで、任意のゲストにディスク・イメージ・ファイルをアタッチできます。

    • ゲスト固有のディレクトリに完全修飾ディスク・イメージ名(例: /EXAVMIMAGES/GuestImages/guest01.example.com/pv2_vgexadb.img)を指定すると、指定した場所にゲスト固有のディスク・イメージ・ファイルが作成されます。この場合、ディスク・イメージ・ファイルは、ファイル・パス(例: guest01.example.com)で識別されるゲストにのみアタッチできます。

  • --size: オプションで、イメージのサイズを指定します。指定しない場合、デフォルト・サイズは50GBです。
  • --filesystem: ディスク・イメージに使用するファイル・システム・タイプを指定します。許可されるファイル・システム・タイプは、ext3ext4およびxfsです。デフォルトはxfsです。
  • --from-zip: 指定されたZIPファイルからディスク・イメージを作成する必要があることを示します。
  • --attach: 作成後にディスク・イメージをゲストに直接接続するには、このオプションを使用します。このオプションを指定する場合は、--domainオプションも指定する必要があります。

    • 共有ディスク・イメージ(/EXAVMIMAGESに作成したイメージ)をアタッチすると、共有ディスク・イメージ・ファイルのコピーが、ゲスト固有のディレクトリ/EXAVMIMAGES/GuestImages/guest_nameに作成されます。デフォルトでは、/EXAVMIMAGES内の共有イメージ・ファイルを参照するreflinkコピーが、ゲスト固有のディレクトリに作成されます。reflinkを使用することなく共有ディスク・イメージ・ファイルをアタッチするには、--no-reflinkオプションを追加します。この場合、ゲスト固有のディレクトリ内の新しいディスク・イメージは、/EXAVMIMAGES内のイメージ・ファイルとは別個のコピーになります。

    • ゲスト固有のディレクトリ内にある非共有イメージ・ファイルをアタッチしても、追加のコピーは発生しません。

  • --domain: 作成後にディスク・イメージを接続するゲストを指定するには、このオプションを使用します。
  • --no-reflink: このオプションは、共有イメージ・ファイルのゲスト固有のイメージ・ディレクトリに、別個のコピー(reflinkではない)を作成するために使用します。このオプションは、非共有イメージ・ファイルでは無視されます。

使用上のノート

  • KVMゲストには、最大で112個のディスクを接続できます。

7.15 detachコマンド

--detachコマンドを使用して、ディスク・イメージをゲストから切り離します。

構文

vm_maker --detach --disk-image image_name --domain guest_name [ --delete ]

オプション

  • --disk image: 切り離すディスク・イメージの名前。
  • --domain: ディスク・イメージを切り離すゲストの名前。
  • --delete: オプションで、/EXAVMIMAGESからディスク・イメージを削除するように指定します。このオプションは、ディスク・イメージが他のゲストによって使用されていない場合にのみ成功します。それ以外の場合は、コマンドが失敗し、エラーが報告されます。

7.16 dumpxmlコマンド

--dumpxmlコマンドを使用して、指定したゲストのXML定義を標準出力に送信します。

構文

vm_maker --dumpxml guest_name

使用上のノート

次のように、ファイルへの出力をパイプで連結することで、データを保存できます。
# vm_maker --dumpxml guest1.example.com > guest.xml

7.17 listコマンド

--listコマンドを使用して、ゲストに関する情報を表示します。

構文

ディスク・イメージに関する情報を表示するには:

vm_maker --list --disk-image [ --domain guest_name ]

ゲストに関する情報を表示するには:

vm_maker --list --domain [ guest_name [ --detail ]] 

ゲストの仮想CPU構成に関する情報を表示するには:

vm_maker --list --vcpu [ --domain guest_name ]

ゲストのメモリー構成に関する情報を表示するには:

vm_maker --list --memory [ --domain guest_name ]

オプション

  • --disk-image: /EXAVMIMAGES内のすべての共有ディスク・イメージをリストします。
  • –-domain: すべてのゲストとそのステータスをリストします。ゲスト名を指定すると、表示される情報はそのゲストに限定されます。
  • --vcpu: システム全体の仮想CPU使用率をリストします。
  • --memory: システム全体のメモリー使用量をリストします。

オプションの引数

  • --domain guest_name: 表示される情報を単一のゲストに限定します。
  • --detail: 詳細出力を有効にします。

7.18 list-domainsコマンド

--list-domainsコマンドを使用して、すべてのゲストをリストします。

構文

vm_maker --list-domains

7.19 network-discoveryコマンド

--network-discoveryコマンドを使用して、Oracle RAC単一クライアント・アクセス名(SCAN)などのインタフェース用のネットワークを識別します。

構文

vm_maker --network-discovery XML-config-file

オプション

XML-config-file: ゲストXML構成ファイルの完全なファイル名。たとえば、/EXAVMIMAGES/conf/domain.xml

7.20 rebootコマンド

--rebootコマンドを使用して、特定のゲストを再起動します。

構文

vm_maker --reboot guest_name

7.21 remove-bridgeコマンド

--remove-bridgeコマンドを使用して、ネットワーク・ブリッジを削除します。

構文

vm_maker --remove-bridge bridge_name [ --vlan vlanid ] [ --force ]

オプション

  • bridge_name: 削除するブリッジの名前。ブリッジ名は、vmで始まり、vmeth1などのインタフェース名が続きます。
  • --vlan: オプションで、ブリッジのVLAN IDを指定します。
  • --force: このオプションを使用してブリッジを強制的に削除します。

使用上のノート

ネットワーク・ブリッジは、KVMホストまたは他のゲストが使用していない場合にのみ削除できます。

7.22 remove-domainコマンド

--remove-domainコマンドを使用して、特定のゲストまたはすべてのゲストを停止および削除します。

構文

vm_maker --remove-domain { guest_name | --all [ --reset-kvmhost ]}

オプション

  • guest_name: 停止して削除する特定のゲストの名前。すべてのゲストを削除する場合は、単一のゲスト名のかわりに--allを使用できます。
  • --reset-kvmhost: KVMホストゲストがないときの状態にシステムをリセットします。このオプションは、ゲスト名に--allを指定した場合にのみ使用できます。

使用上のノート

--remove-domainコマンドを使用すると、vm_makerによってゲストが強制的に停止されて削除されます。ゲスト名に-- allが指定されている場合、コマンドによって、すべてのゲストと中間イメージ・ファイルが停止されて削除されます。基礎となるネットワーク・ブリッジは、使用されなくなった場合に削除されます。

オプション--reset-kvmhostを指定すると、ゲストが作成される前の状態にシステムがリセットされます。

7.23 setコマンド

--setコマンドを使用して、ゲストの仮想CPUまたはメモリーを構成します。

構文

ゲストの仮想CPUの数を構成するには:

vm_maker --set --vcpu vcpu [ --domain guest_name [ --config ] [ --force ]]

ゲストのメモリーを構成するには:

vm_maker --set --memory size --domain guest_name [ --restart-domain ] [ --force ]

指定したイーサネット・インタフェースのMACを構成するには:

vm_maker --set --mac mac_address --interface interface_name --domain guest_name [ --restart-domain ]

オプション

  • --vcpu: ゲストの仮想CPUの数を指定します。
  • --memory: 指定したゲストのメモリー・サイズを設定します。メモリーは、KMまたはGを使用して指定できます(たとえば、40Gまたは25000M)。
  • --mac: 指定したネットワーク・インタフェースのメディア・アクセス制御(MAC)アドレスを設定します。
  • –-domain: --vcpuまたは--memoryとともに使用する場合、この引数は、設定が単一のゲストに適用されることを示します。それ以外の場合は、設定がすべてのゲストに適用されます。メモリー・サイズを変更するときは、--domainを使用する必要があります。

  • --config: ゲストを再起動するまで、仮想CPUの数を変更しないことを示します。このオプションは、単一のゲストを変更する場合のみ使用できます。
  • --interface: 構成するEthernetネットワーク・インタフェース。
  • --restart-domain: vm_makerによって構成が変更された後にゲストを自動的に再起動するには、このオプションを使用します。
  • --force: 新しい設定を強制的に実装します。このオプションは、単一のゲストを変更する場合のみ使用できます。

使用上のノート

  • ゲストの仮想CPU数の変更は、デフォルトではゲストを再起動せずに即時に実行されます。
  • メモリーの変更時は、設定を有効にする前にゲストを再起動する必要があります。

7.24 setup-ipコマンド

--setup-ipコマンドを使用して、KVMホストのネットワーク・インタフェースをplumbします。

構文

vm_maker --setup-ip ip_address --interface network_interface
  --netmask netmask --gateway gateway_address [ --vlan vlanid ]
vm_maker --setup-ip ip_address --discover
  --netmask netmask --gateway gateway_address [ --vlan vlanid ]

オプション

  • ip_address: ネットワーク・インタフェースに接続するIPアドレスを指定します。
  • --interface: 接続するネットワーク・インタフェースの名前を指定します。
  • --discover: 名前で指定するのではなく、接続するネットワーク・インタフェースを識別するようにvm_makerに指示します。
  • --netmask: ネットワーク・インタフェースで接続するIPネットマスクを指定します。
  • --gateway: ネットワーク・インタフェースで接続するIPネットワーク・ゲートウェイ・アドレスを指定します。
  • --VLAN: オプションで、ネットワーク・インタフェースで接続するVLAN IDを指定します。

使用上のノート

--setup-ipコマンドを使用して、テストおよびトラブルシューティングの目的で使用できるKVMホストのネットワーク・インタフェースをplumbします。--cleanup-ipコマンドを使用して、ネットワーク・インタフェースを削除およびクリーン・アップします。

例7-2 ネットワーク・インタフェースの設定

次に、--setup-ipコマンドを使用してネットワーク・インタフェースをplumbし、ネットワーク・ゲートウェイへのアクセスに使用する例を示します。

# ping 192.0.2.1
PING 192.0.2.1 (192.0.2.1) 56(84) bytes of data.
From 10.32.106.12 icmp_seq=1 Destination Host Unreachable
^C
--- 192.0.2.1 ping statistics ---
2 packets transmitted, 0 received, +1 errors, 100% packet loss, time 999ms
# /opt/exadata_ovm/vm_maker --setup-ip 192.0.2.6 --interface eth3 --netmask 255.255.255.128 --gateway 192.0.2.1 --vlan 144
[INFO] Interface eth3 currently down
[INFO] Bringing up interface eth3
[INFO] Interface eth3.144 is plumbed.
# ping 192.0.2.1 
PING 192.0.2.1 (192.0.2.1) 56(84) bytes of data.
64 bytes from 192.0.2.1: icmp_seq=2 ttl=255 time=0.317 ms
64 bytes from 192.0.2.1: icmp_seq=3 ttl=255 time=0.302 ms
64 bytes from 192.0.2.1: icmp_seq=4 ttl=255 time=0.307 ms
^C
--- 192.0.2.1 ping statistics ---
4 packets transmitted, 3 received, 25% packet loss, time 3077ms
rtt min/avg/max/mdev = 0.302/0.308/0.317/0.021 ms
# ip rule 
0: from all lookup local 
32757: from 192.0.2.6 to 192.0.2.1 iif eth3.144 lookup main 
32758: from all to 10.32.96.5 lookup 220 
32759: from 10.32.96.5 lookup 220 
32760: from all to 10.32.106.0/23 lookup 210 
32761: from 10.32.106.0/23 lookup 210 
32762: from all to 192.168.0.4 lookup 181 
32763: from 192.168.0.4 lookup 181 
32764: from all to 192.168.0.3 lookup 180 
32765: from 192.168.0.3 lookup 180 
32766: from all lookup main 
32767: from all lookup default 
# ip a s | grep eth3
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
67: eth3.144@eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 inet 192.0.2.6/25 scope global eth3.144
# /opt/exadata_ovm/vm_maker --cleanup-ip eth3 --vlan 144
[INFO] Deleting routing rules.
[INFO] Flushing ip-address from interface.
# ip a s | grep eth3
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000

7.25 start-domainコマンド

--start-domainコマンドを使用して、Oracle Linux KVMゲストを作成および起動します。

構文

vm_maker --start-domain { guest_name | XML-config-file | --all } [ --no-discovery ]
  [ --keep ] [ --locked ] [ --ssh-key key_file ] [ --console ] [ --console-log { enable | disable }]

オプション

  • guest_name: 起動する既存のゲストの名前。
  • XML-config-file: 新しいゲストを作成する場合のXML構成ファイルの完全なファイル名。
  • --all: ホスト上のすべての既存のドメインを起動します。
  • --no-discovery: オプションで、新規ゲストの作成時にネットワーク検出およびブリッジ作成をスキップすることを指定します。
  • --keep: 最初の起動が失敗した場合でもゲストを削除しないことを示します。
  • --locked: --ssh-keyオプションと組み合せて指定すると、rootユーザーに対してパスワードベースの認証が無効になり、ゲストへのアクセスにはキーベースの認証が必要になります。それ以外の場合は、ユーザーが初めてログインしたときに、このオプションによって新しいパスワードを選択するよう要求されます。
  • --ssh-key: オプションで、SSH公開キーを含むファイルの場所を指定します。これは、rootユーザーの認証に使用されます。
  • --console: オプションで、既存のゲストの起動時にvm_makerによってコンソール・メッセージが表示されます。
  • --console-log: オプションで、コンソール出力のロギングの処理方法を指定します:

    • --console-log enable: コンソール出力はログ・ファイルに書き込まれます。
    • --console-log disable: コンソール出力はログ・ファイルに書き込まれません。

7.26 stop-domainコマンド

--stop-domainコマンドを使用して、指定したOracle Linux KVMゲストを停止します。

構文

vm_maker --stop-domain { guest_name | --all } [ --force | --destroy ]

オプション

  • guest_name: 停止するゲストの名前。
  • --all: 特定のゲストではなく、すべてのゲストを停止します。
  • --force: ディスク・イメージ・ファイルのキャッシュをフラッシュし、ゲストを即時に停止することを試みます。
  • --destroy: ディスク・イメージ・ファイルのキャッシュをフラッシュせずに、ゲストをすぐに停止します。ゲストが応答しない場合の最後の手段としてのみ--destroyを使用します。

使用上のノート

--forceまたは--destroyを指定しない場合、正常に停止します。

7.27 update-macコマンド

--update-macコマンドを使用して、ゲスト・ネットワーク構成を更新します。

構文

vm_maker --update-mac --domain guest_name

オプション

  • --domain: コマンドの対象であるゲストの名前。

使用上のノート

このコマンドは、ゲストが別のKVMホストに移動した後、主にゲスト・ネットワーク構成を更新するために使用されます。

7.28 validate-ipコマンド

--validate-ipコマンドを使用して、Oracle Linux KVMゲストの指定したネットワーク詳細を検証します。

構文

vm_maker --validate-ip ip_address --interface network_interface 
  --netmask netmask --gateway gateway_address [ --vlan vlanid ]
vm_maker --validate-ip ip_address --discover 
  --netmask netmask --gateway gateway_address [ --vlan vlanid ]

オプション

  • ip_address: 検証で使用するIPアドレスを指定します。
  • --interface: インタフェースの検証を実行するようvm_makerに指示し、検証で使用するネットワーク・インタフェースを指定します。
  • --discover: 検出の検証を実行するようvm_makerに指示します。
  • --netmask: 検証で使用するIPネットマスクを指定します。
  • --gateway: 検証で使用するIPネットワーク・ゲートウェイ・アドレスを指定します。
  • --vlan: オプションで、検証で使用するVLAN IDを指定します。

使用上のノート

--validate-ipコマンドを使用して、指定したネットワーク詳細がKVMゲストに使用できるかどうかを確認します。これは、KVMゲストのデプロイ中にトラブルシューティングの目的で使用できます。

検証には2つのタイプがあります。

  • --interfaceオプションを使用すると、vm_makerで、指定された詳細で、指定されたネットワークを一時的にplumbし、指定されたゲートウェイに到達できることを確認することで、指定されたインタフェースが検証されます。

  • --discoverオプションを使用すると、vm_makerにより、指定したネットワーク詳細に対して有効なインタフェースが検出されます。

例7-3 インタフェースの検証

次に、--interfaceオプションを使用したインタフェースの検証の例を示します。

# /opt/exadata_ovm/vm_maker --validate-ip 192.0.2.34 --netmask 255.255.240.0 --interface eth1 --gateway 192.0.2.1
[INFO] Interface eth1 is part of bondeth0. Validating bondeth0.
[INFO] Validating network settings, this can take up to a minute.
[INFO] Interface bondeth0 with ip address 192.0.2.34 and netmask 255.255.240.0 can ping gateway 192.0.2.1

例7-4 検出の検証

次に、--discoverオプションを使用した検出の検証の例を示します。

# /opt/exadata_ovm/vm_maker --validate-ip 192.0.2.34 --netmask 255.255.240.0 --discover --gateway 192.0.2.1
[INFO] Potential interfaces for discovery: eth0 eth1 eth2 eth3 eth4
[INFO] Discovering interface eth0
[INFO] Discovering interface eth1
[INFO] Discovering interface eth2
[INFO] Discovering interface eth3
[INFO] Discovering interface eth4
[INFO] Interfaces found: eth1 eth2

7.29 vhostmdコマンド

--vhostmdコマンドを使用して、vhostmdサービスのステータスを有効化、無効化または表示します。

構文

vm_maker --vhostmd { enable | disable | status }