VMwareESXのvswapの役割とはこのブログは、日々頭の中に蓄積されては薄れていく技術情報を書き留めておく為のものです。VMware前回に引き続きESXのお話。仮想マシンを作成しPowerOnすると、LUN上に仮想ディスクのvmdkファイル以外にvswapという巨大な物理ファイルが作成される。これは仮想マシンに割り当てたメモリと同じだけ領域が取られので、仮に仮想ディスクを10GB、仮想マシンのメモリを4GB割当てたと仮定すると合計14GBの領域がLUN上に必要になる。仮想マシンのPowerOnが出来ない。vswapは仮想マシン起動時に作成されるが、こいつが作れないと起動にこけるからである。(ちなみにPowerOffのステータスだとこのvswapのファイルは作成されない)ではこいつはそもそも何の為に必用なのか?ここでまた前回お話したメモリバルーニングという言葉が出てくる。実際は仮想マシンに上にインストールされているvmmemctlというドライバが行っている。以下の理由でvmmemctlが使用できない場合このvswap領域にスワッピングされる。・vmmemctlドライバが未インストール・vmmemctlドライバが無効にされている・vmmemctlドライバがOSのブート中などで実行されていない・vmmemctlドライバが仮想OS自体の負荷などですばやくメモリを解放してくれないスワップは性能的によろしくないので、普段はバルーニングが優先して行われる。上記の理由などでバルーニングが出来ない場合には、確実にメモリの解放を行う為スワップが使用されるのである。その為、割当てメモリと同サイズの領域が必要らしい。ちなみにデフォルトではvswapは仮想ディスクと同LUN領域に作成されるが、sched.swap.dirパラメータで変更は可能である。CowboyフリーランスのLinuxエンジニア(仕事募集中@20代後半)生業として主にインフラ系(サーバ、ネットワーク、ストレージとなんでも)設計、構築、運用を行ってます。技術書の執筆などなど仕事があれば何でもこなします。問いませんのでご興味のある方はご相談下さい。記事にご質問、ご興味のある方はご連絡頂ければ可能な限り回答致します。