DreamerDreamのブログ

夢想家の夢です。〜揚げたてのモヤっとしたものをラフレシアと共に〜

VPSの使い方 ⑤SWAP領域を拡大する

 前回記事

dreamerdream.hateblo.jp

 

 

僕はVPSの格安プランに申し込んだのでメモリ領域は512MBしかありません。

個人のWebサイトだけであれば充分ですが、それならレンタルサーバーの方が安いのでわざわざVPSにはしていません。もちろん他にもアプリを動かします。もし、何かしらでアクセスが集中するとサーバーが落ちてしまいます。そのための予防手段です。

 

システムで使用されているメモリーを調べるために再起動

sudo reboot

freeで確認すると

free
          total     used      free     shared     buff/cache     available
Mem: 499452 83992 281768 4596 133692 386772
Swap: 2097148 0 2097148

最初から約300MB弱しか余裕が無いのが解ります。

 

ここでhttpdを立ち上げてDjangoの初期ページにアクセスしてみました。

sudo systemctl start httpd

再度確認


free
          total     used     free     shared     buff/cache available
Mem: 499452 165212 178624 4684 155616 304212
Swap: 2097148 0 2097148

そうすると200MB弱しか余裕が無くなります。Apachedjangoを起動させたので当然です。

 

モリーは環境にもよりますが、Webページ1件のアクセスで約20MB〜30MB消費されるとされています。(今回はデフォルトページの表示だけで大したことはありませんが)

ベリーキュート Blog » Blog Archive » Webサイトのアクセス数増加と必要メモリ

そうなると同時に10件や20件のアクセスがあるとあっという間にメモリー不足に陥ります。

モリー不足に陥ったサーバーはSwap領域というストレージ上にメモリー領域を確保しにいきます。

 

上の表のSwapと表されているところがメモリー領域として確保されているストレージ領域です。メモリーが足りている場合は当然使用量は0です。

Swap領域は本来高速なRAMメモリーへのアクセスが必要な処理をストレージで補うのでRAMメモリーより低速です。

ですが、Conohaのストレージは全てHDDよりは高速なSSDです。

これを活かさない手はありません。

モリー不測の事態でも、遅くなっても仕事はしてくれます!

 

ということでSwap領域を拡大します。

Linux の SWAP 領域を増やす : まだプログラマーですが何か?

今、約2GBのswapが確保されているのでさらに+2GBの余裕を持たせることにします。

まずはddコマンドで2GBのファイルを作ります。

sudo dd if=/dev/zero of=/var/swapfile bs=1M count=2048
[sudo] password for mitsu:
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 4.59156 s, 468 MB/s

swapファイルとします。

sudo mkswap /var/swapfile
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=b865b7eb-584e-444e-age3-dc4fefei

swapとして登録します。

sudo swapon /var/swapfile
swapon: /var/swapfile: insecure permissions 0644, 0600 suggested.

 

fstabに作ったswap領域を追記します。

sudo nano /etc/fstab

 

/var/spool/swap/swapfile none swap defaults 0 0
/var/swapfile swap swap defaults 0 0 <=追記

これで再起動後もこのファイルがswapとして扱われます。

確認します。

free
total used free shared buff/cache available
Mem: 499452 270908 5876 4676 222668 198116
Swap: 4194296 0 4194296

 

これでSwapが4Gとして認識されています。

f:id:DreamerDream:20180928131757p:plain

 

 

Swapを解除するには

sudo swapoff /var/swapfile

として、追記したfstabファイルからも削除します。

 

実際にこんなに必用か?と問われると・・同時に100件アクセス?一生必用無いかもしれません。しかし、もしストレージいっぱいまで使ってしまってから確保するとなると難しいので予め確保しておきます。

実際に500MBを絶えず軽く超えてくるようなアクセスがある場合はサーバーの追加でWebページの移転作業となるでしょう。その際にも4GBもの余裕があると慌てずに済むでしょう。

ちなみにこの方法だとサーバーを再起動しなくてもswap確保できるのだそうです。

 

※過去記事では、RaspberryPiの場合はSwapを使うとSDカードの寿命に影響を及ぼす可能性があるのでSwapを無効にしていました。

dreamerdream.hateblo.jp

Conohaで使われているSSDフラッシュメモリですが、VPSの場合はミラー化してあったりと物理的に寿命がくるようなシステムは全て管理され定期的に交換されていますので、ユーザーはストレージ寿命を全く気にすることなくストレージを使う事が出来ます。このあたりも自宅サーバーよりVPSをオススメする重要な要素です。

 

全5回に渡ってVPS導入からセキュリティー対策等の使い方を備忘録として記しました。

またどなたかの約に立てば幸いです。

 

 

 

#memo:

ここまでの設定をイメージ保存

f:id:DreamerDream:20180928141108p:plain

SELinuxデフォ無効

https://cdn.profile-image.st-hatena.com/users/DreamerDream/profile.png私、(PONさん (@o_n_pon) | Twitter)を応援してくださるお優しいかたは15円から投げ銭可能ですので↓よりカンパをお願いしますm(_ _)m

kampa.me