当サイト(vonlog.com)がリニューアルしてから3カ月が経過しました。まだ月間PVが500あるかどうかの弱小サイトのため、サーバー負荷を気にするようなレベルではないのですが、ブログを運用しているさくらのVPSをスケールアップするとWordPressサーバーのレスポンスがどの程度改善するのか検証してみたいと思います。
本記事では検証する理由を説明しています。
運用中のさくらのVPSプラン
私はさくらのVPSの下記2つのプランを東京リージョンで契約していますが、
当サイトはメモリ512MBプランで運用中です。
さくらのVPS使い勝手
さくらのVPSは老舗のさくらインターネットが提供しているVPSです。
さくらのVPSの魅力は何といっても安定性です。
使い始めて4年ですが、障害でアクセスできなかった記憶はありません。メンテナンスで止まっていたためアクセスできないという経験もほぼ無いです。
より安価な設定のVPSやより高速な動作をアピールするVPSはほかにもありますが、Webサーバーや踏み台サーバーは一定以上のスピードでいつでも安定して接続できることが最も重要であると私は考えています。
安定したコストパフォーマンスの良いVPSを探している人に最初におすすめしたいVPSだと思います!
なぜ今のタイミングで検証するのか?
当ブログはさくらのVPSで運用中ですが月間PVは500程度。VPSに制限がかけられてしまうような負荷は現状発生していません。
ではなぜ今検証を行うのか、その理由は下記の通りです。
- VPSで常にメモリ不足が発生中
- VPSのプラン選択ミス
- 旧ブログを閉鎖作業が全く進んでいない
本来は上記の①と②が主な理由となるべきですが、正直に言えば③が一番の理由です(笑)
旧ブログを閉鎖したいのですが、同時に①と②をまとめて解決したいのでなかなか作業が進まない。だったらいっそブログのネタにして半強制的に作業を進めようという魂胆です。
VPSで常にメモリ不足が発生中
VPSにログインしてfreeとvmstatのコマンドを実行し、Swapの使用状況を確認してみた結果が下記です。
command
$ free -m
total used free shared buff/cache available
Mem: 473 314 27 25 131 115
Swap: 4095 413 3682
$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 423544 26188 7420 127172 18 17 60 31 17 20 1 0 99 0 0
約413MBのスワップファイルが作られており、siとsoの値から分かる通りswapへの書き込み、読み込みが発生していることが分かります。
続いてさくらのVPSのコントロールパネルにログインし、サーバーの負荷状況を確認してみます。1週間分のグラフとなります。
ネットワーク負荷を伴って1MByte/s超のディスクI/O負荷がある部分(例:5/8)はOSアップデートと思われます。それを除いても100KByte/s程度の負荷が常時発生しているのが分かります。
比較として、Swapが全く発生していないメモリ1GBプランの負荷状況も確認してみます。
こちらは自宅サーバーへ外からアクセスするために使用しているさくらのVPS 1GBプラン上に構築しているVPNサーバーの負荷状況です。512MBプランVPSと同じような負荷をかけるために、vonlog.comで動かしているwordpressサーバーコンテナのコピーが稼働させています(外部からのアクセスは無し)
GW中にネットワーク負荷が高いのはVPNをつないでいたからと思われます。注目はディスクI/Oで、512MBプランと比較をして明らかに負荷が少ないことが分かります。
VPSのプラン選択ミス
私はメモリ512MBプランと1GBプラン両方契約しているにも関わらず、wordpressサーバー(vonlog.com)を512MBプランで運用しています。これは完全なVPSのプラン選択ミスです。
ではなぜこんな状況になっているのか?
ぼんぼん家の現在のネットワーク構成(下記)をみると少し状況が分かると思います。
我が家にはテレビ番組を録画するためのサーバー、録画したテレビ番組を外から見るためのメディアサーバー、家族向けの共有ファイルに外からアクセスするためのファイルサーバー、メインの作業環境となるWindowsリモートデスクトップサーバーが稼働しています。
VPS メモリ1GBプランを契約したのは2018年です。
契約の理由は2018年のマンションへの引っ越しでグローバルIPの割り当てが無くなり自宅サーバーを外部公開できなくなったため、外からのアクセスの踏み台用にVPSを契約し、VPNサーバーを稼働させVPN経由で自宅サーバーに外部ネットワークから接続できるようにしました。
このVPNは私と家族しか使用しないため、アクセス制限をかけており完全にプライベート用です。
2020年にVPS メモリ512MBプランを契約し、vonlog.comの公開を始めました。
VPSメモリ1GBプランは踏み台用なので、実質負荷はほとんどかかっていません。1GBプラン上でvonlog.comを公開する、もしくは自宅サーバー内で公開する選択肢も当時ありました。
しかしプライベート用VPN上でアクセス制限なしで公開するサーバーを動かすのはセキュリティリスクが高いと考え、追加のVPSを契約することとしました。
スペック不足を感じたら後からスケールアップをすれば良いと考え、コスト優先で後から追加したVPSは最安プランを契約した。これが今512MBプランを使っている理由ですね。さくらのVPSはスケールダウンに対応していないので、1GBプランを512MBプランに変えられなかったという点も理由の一つです。
旧ブログの閉鎖作業が全く進んでいない
旧ブログのdockerコンテナは2つのVPSをローカルネットワークで相互接続し、当初VPS 1GBプラン上で動かしていました。
しかし現在はVPS 1GBプランの解約⇒新規作り直しに備え、自宅サーバーのファイルサーバー上に移動させています。こういった移動が簡単にできるのがDockerのメリットですね♪
旧ブログを閉鎖するためには古い記事をあといくつか新ブログに移行させる必要があるのですが、その前にVPSのメンテナンスが先と計画していたため作業が滞っていました。自分自身にはっぱをかける意味で、VPSのメンテナンスをブログのネタとして記事化して、半強制的に作業を進める。
これが今回一番の狙いです(笑)
まとめ
なぜさくらのVPSメモリ512MBプランをスケールアップして1GBプランにするとWordPressサーバーの負荷やレスポンスが改善するのか検証する理由を説明させて頂きました。
次回は実践編ということで、スケールアップ後に性能がどう変わったか紹介させていただきます。
またVPSを作り直す番外編として、「グローバルIPの割り振りがないマンションのネットワーク環境で自宅サーバーを公開する方法」を別途紹介させていただきます。