過去5年間の運用情報を活かしたシステムリニューアルの事例

2014年8月18日(月)
株式会社アールワークス

リニューアル後の運用から得られた情報によるシステム改善

ここでは、システムリニューアル後に発生した問題と、それに対する対応について、紹介してみる。

DBサーバーへの接続障害

一部サービスにおいて、ときおり、WebサーバーからDBサーバーへの接続障害を検知することがあった。WebサーバーからDBサーバーへの接続は、すべてロードバランサーを経由するようにしていたため、調査はロードバランサーとDBサーバーの双方で実施した(図2)。

図2 DBサーバーへの接続障害調査:システム構成図
図2:DBサーバーへの接続障害調査:システム構成図

ロードバランサーのログを調査した結果、接続障害を検知したタイミングで、一部のDBサーバーがロードバランサーのヘルスチェックでエラーとなり、ロードバランサーから切り放されていたことが判明した。ロードバランサーのヘルスチェックがエラーとなったときのDBサーバーのリソース状況とデータベースへの処理内容を調査すると、アプリケーション側で特定の処理が実行されたタイミングで、DBサーバーの負荷が上昇していることが判明した。

このとき、ロードバランサーのヘルスチェック設定変更が難しいことと、アプリケーション側の改修に時間がかかることから、障害を検知しているサービスへのDBサーバーの割り当て数を増加させることで、DBサーバーの負荷を軽減することにした。ただし、DBサーバー全体の台数を増加させることはできないため、負荷の小さいサービスのDBインスタンスを統合することで、DBサーバーに空きをつくることにした。

DBインスタンスの統合作業

DBインスタンスの統合案は、次のことを考慮して作成した。

  1. サービスごとのDBサーバーへの接続数(ロードバランサーで情報収集)
  2. クエリーの実行数(各データベースインスタンスで収集)
  3. サービス間の依存関係(インスタンスを統合することでサービス 間に依存関係が発生するため)

このDBインスタンスの統合作業は、MySQLのレプリケーション機能を利用して、サービスへの影響をアプリケーション側でDBサーバーを切り替える時のみに抑えた。

このようなDBインスタンス統合によって、空いたDBサーバーを別サービスに追加した後、ロードバランサーでのヘルスチェックエラーや、WebサーバーからDBサーバーへの接続障害の件数が、大幅に減少したことを確認した。

著者
株式会社アールワークス
1985年に株式会社アステックとして創業。2000年10月の株式会社アールワークス設立を経て、2005年6月より現在の1社体制に移行。同時に、社名を(株)アールワークス(Rworks, Inc.)に変更。
設立以来、IDC事業やITマネージドサービスを行い、そこで培ったネットワークインフラの運用ノウハウや、さまざまなソフトウェアを開発した技術力を結集し、現在、ITシステムのリモート運用サービスをはじめとして、インフラ構築、ハウジングやホスティングサービス、SaaS/ASP型のシステム監視基盤の提供を行う。単純なオペレーターではない技術提供をベースにした24時間365日の統合的なフルマネージドサービスを提供している。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています