====== Proxmox VEのKSMを止める ====== Proxmox VE 6.2で仮想マシンを起動した途端、CPUファンが唸りを上げ、消費電力が50Wも増える状況に遭遇した。ゲスト側は完全にアイドル状態にもかかわらずだ。 こりゃ何事とホストでtopしてみると、ksmdなるプロセスがCPUを70~80%喰っていた。 {{ :blog:2020:pve_ksmd_top.png |}} ksmdの正体は[[https://www.linux-kvm.org/page/KSM|Kernel Samepage Merging]]デーモンで、複数VMの同一内容のメモリページを共有して実メモリの消費量を抑える役割を担っているようだ。確かにこれはCPUリソースを食いそうだ。 メモリは潤沢にありオーバーコミットの予定もないので、お役御免ってことで無効化してしまう。同一バージョンのゲストOSを大量に起動するような状況じゃないと、イマイチ効果が薄そうな気もするし。 # systemctl disable ksmtuned 公式の解説では、その後ホストを再起動の指示があるが、''systemctl stop ksmtuned''でも同じ効果あるんじゃないかしら。知らんけど。KSMが効きまくってる環境だとヤバそうな気もするので、素直に再起動しときましょうか。 KSM無効後はCPU負荷も消費電力も元に戻った。めでたしめでたし。 ===== 参考サイト ===== * [[https://www.linux-kvm.org/page/KSM|KSM - KVM]] * [[https://pve.proxmox.com/wiki/Dynamic_Memory_Management|Dynamic Memory Management - Proxmox VE]] * [[http://kt-hiro.hatenablog.com/entry/20170623/1498228466|CentOS7 KVM ksmdを停止する - わすれないうちにメモしよう]]