10日間の営業停止を経験し、セキュリティ体制を着実に整備
ゴルフダイジェスト・オンライン(GDO)の主な事業はゴルフ総合メディア、ゴルフ場予約、ゴルフ用品EC。いずれも渡邉信之氏が管轄する情報システムにより支えられている。現在GDOの会員は200万人を超えており、サイトのページビューは、月間1.5億以上となっている。
IT基盤運用手法をテーマにした渡邉氏の基調講演は、セキュリティ−、パフォーマンス、リリース時の品質管理、システム運用評価、運用体制について、の5つの重要キーワードに基づいて行われた。
まず第1のキーワードは「セキュリティ」。GDOは2008年9月30日に発生したSQLインジェクションによる不正アクセスのため、10日間の営業停止を経験している。その際、「障害範囲の特定手法」、「障害が発生した部分を隔離できるシステム構成」、「システム再開の判断基準」、「ステークホルダーへの説明」という課題を得たGDOは、緊急事態における準備事項を整備した。
まず緊急連絡フローを作成。全機能の障害レベルを定義し、どの機能がどれだけ停止したら、誰にエスカレーションするかを全てリスト化している。また障害が発生した場合、サイトに出す告知のテンプレートを13種類用意した。さらに緊急対策本部をレッドマニュアルとして整備。どのタイミングで招集するかは、障害レベル定義に紐付いている。
「追跡できる仕組みの導入」ということでは、可視化、ログ管理、アクセス解析、統合運用管理など、ツールを用いた、追跡できる仕組みを構築した。渡邉氏は「何か事件が起きたとき、ツールや設計書から、状況や影響範囲がすぐに特定できる状況を準備しておくことが、非常に重要」と強調する。
仕組みの導入では、セキュリティ製品、ソリューションの選択が課題になる。ここでのポイントは継続的な運用が可能かどうかだ。また信頼できるベンダーを選ぶことも重要で、ビジネスやシステムへの理解と、相談への対応を見極める。
セキュリティ管理では、相関分析がポイントになる。ファイアウォールからアプリケーションのレベルまで、すべて一貫性を持った相関分析が必要だ。
いちばん効果的なのはアプリケーションそのもののセキュリティを高めることだが、既存のシステム、アプリケーションに対し、監視をかけるのは非常にコストがかかる。そこで渡邉氏は「これから作っていくものに対し、徐々に計画を立てて、セキュリティの向上に努めていくべきだ」と語る。
サービスのパフォーマンスとリリース時の品質をどう担保するかが課題
第2のキーワードは「パフォーマンス」だ。渡邉氏がGDOに加わった2006年当時、一番の基幹である予約サービスとGDO SHOPは、アクセス集中時にエラーが多発。インターネットサービス事業者としては致命的な状態だった。
当時、13名のスタッフで運営しており、障害対応に追われるのだが、原因がなかなか分からない。そのため「とにかくリブート!」が合い言葉となっていた。
一方、インターネットの成熟度とユーザーの成長により、企業規模を問わず「止まらない」、「安心して使える」、「分かりやすい」が“当たり前”になっている。当然、GDOもこの三つを守らなければユーザーが離れてしまう。
では、サービスレベルの維持に必要な事は何か。渡邉氏は、保守運用は大体、三つのステージに分かれると考えている。一番低いレベルのレイヤーが、「障害が起きた場合、その場で対応する」。次のフェーズが「見つけられる」。ログ管理や、相関分析ができる環境を整える。最終段階が「見逃さない」。障害を予見、予防できる仕組みの構築になる。
障害が発生してから復旧まで、どういう対応を考えるか、どのようにオートマチックにフローを流していくかが、ポイントになる。またスキルの低いエンジニアでも原因が特定でき、同時に予防的な運用が可能でなければならない。
現在、GDOでは死活監視、予防的監視体制が整備されている。まず、リアルユーザーの体感、パフォーマンス監視を行い、アプリケーションのレイヤーでもパフォーマンスの監視を実施。さらにIPS、IDSからのログと、今はIISやサーバのログを相関分析する仕組みを我々独自で開発しており、それをカスタムシグネチャに反映する運用を行っている。また、不正なSQLなどを検知し、すぐにアラートを上げる仕組みも導入。当然、ハードウエア監視も行っている。