何だか最近またやたらとDNSへのDDoS攻撃によりサーバのインターネット側の通信がさくらの防衛手段によって長時間遮断されたりしてます。

この結果、その期間中は全サービスが事実上停止してしまっている状況です。

それに加えて以前から感じていたユーザ増加=アクセス増加=メモリ不足の問題もあったので、この際にとサーバ構成を変更しよう、というかいわゆるスケールアウトする事を検討しています。

具体的には、現状では下図のようになっているものを

下図のように変更しようかなと思っています。

さくらの契約にVPSを1つ追加するので追加で初期および月額費用がかかるけど仕方ないかなと。

この構成のポイントとしては、

  • ローカルエリア(石狩ではなく同一リージョンである東京第2)内に新規VPSを契約
  • 同一リージョン内の契約サーバ間をLAN接続する仮想スイッチを作成
  • DB(MySQLサーバ)を新規サーバにのみ持たせる事で既存サーバのメモリ不足を解消
  • WebサーバとDBサーバ間は仮想スイッチ経由による専用インタフェースを使ってアクセスするため安全且つ高速
  • 新規サーバはHDDではなくSSDで契約するのでDB読み書きによるディスクI/Oのパフォーマンス向上が期待できる
  • DNSサーバが攻撃を受けた結果インターネット側の通信を一時遮断されても、Web/Mailのサービスは止まらず、Web/MailとDBサーバ間はプライベートLANによる通信が継続できる(はず)
  • 各DNSのゾーンとレコードには長めのTTLを設定する事で、当DNSサーバが通信遮断中でも世間のDNSが名前解決してくれる
  • 既存VPSのメモリ増プランよりも安価

といったものが挙げられます。

一方で懸念事項もあります。

  • ユーザさんのWebアプリ(WordPress等)が参照するDBサーバ名をconfigファイル等の編集により変更してもらう必要がある(データ移行は管理人が一括で実施)
  • コンパネの指示で新規サーバのDNSゾーンやレコードを反映できる構成にする必要があり、可能ではあるが検証が必要
  • 契約内のVPSが1台でも攻撃を受けた場合、通信遮断処理が本当に1台だけで済むのか、或いは契約内サーバの通信全てが遮断されるのか、さくらへの確認が必要
  • 当サービス開始以来、やりたい事がある程度実現できてる中で、今後本当に追加投資しちゃっていいのかの検討が必要(笑)

以上、考え中ですという日記でございました。