web-dev-qa-db-ja.com

Linux仮想マシンでのメモリのホットリムーブ

Linuxは、VMゲスト、 VMwareの場合 など)として実行するときにメモリのホットアドをサポートします(場合によっては、 ゲストOSに手動で通知する =。)

逆の操作を行う安全な方法はありますか?仮想マシンに割り当てられたメモリの量を減らします。その場合、そのような操作の前にLinuxゲストに手動で通知する必要がありますか? (その場合、手順はVMwareツールに固有ですか、それとも、あらゆる種類の仮想化メカニズムに共通ですか?)

11
200_success

ESXiは、VMからのメモリまたはCPUのホットリムーブをサポートしていません。数か月前にパブで会った誰かが、いとこの*咳*の友人の姉がこの機能を要求する顧客はほとんどいないという答えを得たと私に言った。言い換えると、ホットリムーブの実装にわずらわされることはありません。

ESXiでこれをサポートする場合は、VMwareにアクセスして指示してください。より多くの人々が行うほど、彼らがそれを実装する可能性が高くなります。

7
Mario Lenz

私は確かにvmwareで言うことはできませんが、kvmを使用する場合、実行中の仮想マシンのメモリを減らすとうまくいきます。もちろん限界までですが、ソフトウェアが教えてくれます。これを減らすと、仮想マシンのメモリは徐々に低下し、それ以上下げることができなくなります。メモリを停止した場所よりも低く設定した場合は、仮想マシンを再起動して完全に下げる必要があります。

私は最近、約20の仮想マシンを持つkvmを実行しているシステムでそれを行いました。誰かがメモリをオーバーコミットして、一部の仮想マシンをスワップで実行することを賢明だと思った(doh!)。これを修正するために、仮想マシンの2/3の約20〜40%メモリを削減しました。ほとんどの場合、実行中にメモリを完全に削減できました。新しいメモリ設定を完全に有効にするために、再起動が必要なものもありました。

それから行くと、私はvmware仮想マシンがこの動作も同様に可能にすることができると仮定します。ただし、vmwareプレーヤーでの簡単なテストでは、有効にするには再起動が必要であることがわかります(より洗練されたvmwareソフトウェアはより適切に動作する場合があります)。それ以外の場合は、実行中のシステムで実行しても安全です。もちろん、残っているメモリの量が正しく実行するのに十分かどうかは、別の問題です。

4
aseq