💾
Azure上のLinuxのSwapがデフォルトオフの件
前置き
de:code で聞いた TIPS。念のため自分の所のテスト機を調べたら
主題の通り、Swapoff だったっぽいのでメモ。
細かい話
Azure 上の Linux には必ず、Azure 用エージェントをインストールするように
なっている。
で、その Azure 用エージェントが Linux 起動時に自動的にディスクをマウントしている。
と言うことは起動時にはディスクがないので Swap も設定できない。
(起動時のシーケンスがよく分からんけど、PXE みたいな雰囲気で起動してる?)
というわけで、ディスクをマウントした後であれば、Swap を設定できるものの、
デフォルト値では、Swap はオフになっているので、設定を変更すべき。とのこと。
#スピーカー氏は、NoSwap という漢らしい設定ですが、やめて下さい。
#YesSwap で使ってください。っていうなかなかナイスな表現をしてた。
どうすればいいか
/etc/waagent.conf というファイルがあるのでそこを編集。
以下のような行を確認する。うちの環境では、それぞれ n , 0 と設定されていた。
<code class="language-apache:/etc/waagent.conf"> # Create and use swapfile on resource disk.
ResourceDisk.EnableSwap=y
# Size of the swapfile.
ResourceDisk.SwapSizeMB=1024
やってみた。
編集前
` total used free shared buff/cache available
Mem: 1678 343 179 88 1154 1010
Swap: 0 0 0
-------------------
reboot
-------------------
total used free shared buff/cache available
Mem: 1678 205 252 8 1220 1263
Swap: 1023 0 1023
と言うわけで、ちゃんと Swap が確保された。
めでたしめでたし。
2015/07/28 追記
セッション動画が一般公開されたので URL を追記しておきます。
Discussion