Vultrの非力なサーバにSwapファイルを設定する。

1CPUでメモリ512MB、20GBのSSD…という、契約当時いちばん安価だったプランで運用しているVultrのサーバです。

普通に(訪問者がさほど多くない)Webサーバとして利用する分には何も問題はないのだけれど、ちょっとした好奇心でオンラインストレージ・サーバ:Nextcloudを稼働させてみたら、当然のように慢性的なメモリ不足に陥りました。ソフトウェア・パッケージのインストール時に半ばフリーズする始末。

サーバのアップグレードも検討しつつ、ひとまずスワップファイルを設定して、メモリ不足を補うことにしましょ。

世間一般に、SSDにスワップを作成するのはディスクの寿命を縮めるので推奨されない、と言われています。でも、Vultrでは公式ドキュメントでスワップファイル作成に言及しているので、まぁ気にしなくてよいのではないか、という判断のもと、当該のドキュメント : Setup a Swap File on Linux - Vultr.comを熟読してみます。

手順をまとめると…、

1. Swapファイルを既に設定しているかどうか確認

以下のコマンドを実行。

swapon -s

何も出力されなければスワップファイルは未だ設定されていない。

2. Swapファイルを作成

ルートディレクトリに swapfile という名前の512MiBサイズのファイルを作成するときは以下のような感じ。

sudo dd if=/dev/zero of=/swapfile count=512 bs=1M

3. Swapファイルを有効化する

まず、rootユーザ以外のファイルアクセスを禁止するために、

sudo chmod 600 /swapfile

として、次にスワップファイルのセットアップ。

sudo mkswap /swapfile

4. Swapを有効にする

sudo swapon /swapfile

…でスワップファイルが有効になる。ちゃんと有効になったかどうか、

free -m

…で確認。

5. システム再起動後にもSwapを有効にするために…

システムのリブート後に自動的にスワップを有効にするには、/etc/fstab を編集する。

sudo nano /etc/fstab

エディタが開いたら、ファイルの一番うしろに以下を記述して保存。

/swapfile   none    swap    sw    0   0

fstabの設定を誤ると、システムが起動しなくなる恐れもあるので注意してください。

詳細はオリジナルのドキュメント : Setup a Swap File on Linux - Vultr.comを参照してください。

ということで。

カテゴリ: