web-dev-qa-db-ja.com

KVM

KVMゲストの帯域幅を監視/制限することは可能ですか?サーバー上のVMをユーザーに提供したいのですが、毎月の帯域幅制限を超えないように注意したいのです。唯一の場所これをサポートするのは「クラウド」フレームワークであることがわかります。Linuxで単純なものが不足しているか、上のルーター(アクセスできない)と通信する必要があると思います。

4
Jess

KVM仮想マシンの管理には libvirt を使用することをお勧めします。単なるQEMU/KVMよりもはるかに簡単で、Nice CPU、IO andnetwork statistics)も提供します。上で動作するvirt-topvirt-managerなどのツールlibvirtフレームワークの.

スクリプトから仮想マシンインターフェイスの統計を収集するには、virshコマンドラインインターフェイスを使用してlibvirtにアクセスします。またはいくつかの言語API。 virshコマンドの形式は次のとおりです。

virsh domifstat VMNAME IFNAME

..ここで、VMNAMEは仮想マシンの名前であり、IFNAMEは(仮想)ネットワークインターフェイスの名前です。ネットワークインターフェイスの名前を見つけるには、次の操作を実行できます。

virsh dumpxml VMNAME

結果のXML出力で、ネットワークインターフェイス定義を探します。次のような行を探します。

<target dev='vnet0'/>

この場合、IFNAMEは「vnet0」になります。

あるいは、libvirt統計の監視をサポートするcollectdなどの統計収集デーモンを使用することもできますが、単純なシェルスクリプトはこの場合、「virshdomifstat」の出力で十分な場合があります。

8
snap