【IIJ GIOの裏側を語る#10】ナレッジが詰め込まれた運用管理システム

連載『IIJ GIOの裏側を語る』では、IIJのクラウドサービス「IIJ GIO」の安定稼働を支える仕組みを、サービスの開発者や基盤運用エンジニアが解説します。

今回は、「ナレッジが詰め込まれた運用管理システム」についてご説明します。

滝のように流れるアラートはいったい何者か?

大変ありがたいことに、IIJでは多くのお客様の運用をアウトソースいただいています。IIJのサポートセンターでは監視システムで検知したアラートをチケット管理システムに登録してオペレーションやエンジニアリングをしていますが、実にその数が、日に1万件を超えることもしばしば。以前はこの膨大なアラートを、要るものと要らないものに手作業で仕分けしてオペレーションしていました。

そもそもいったいどんなアラートが出ているのか?と分析してみると、50%近くは復旧メッセージです。障害検知と復旧が大抵は対になるので、それはまぁそうですよね。でもこれは原則オペレーションしないので、そもそも見ないようにすればよいだけです。残りの50%は?というと、作業影響によるもの、アプリケーション不具合等でアクセスするたびに検知しちゃうもの、といった類が結構多いです。連絡してみると作業影響です!とか、ログを調査していると誰かログインして何かやっていた、など現場あるあるです。

事情はあるにせよ、作業に伴うアラートは作業前に連絡をもらって、アラートを静観/無視すればいいのでは?と安易に考えがちですが、なにせ母数が多いので、オペレーターで対応するのはどうしても限界があります。それなら、機械的に消し込むことはできないでしょうか?

アラートフィルタリングシステム

そこで開発に乗り出したのが”中継システム”と呼んでいる、アラートフィルター機能です。要するに、ある一定期間、特定のアラートに機械的に無視フラグを立ててやる。チケット管理システムはフラグをみて表示制御すればよいはずだ、と考えたわけです。発想はいたって単純ですね。

図1:アラートフィルター

理屈は単純なんですが、作業している側からすると作業前に運用者のために依頼や申請を出すのって、結構な負担ですよね。なぜって、すぐ作業したいのに、作業の前工程が増えるわけですし、いざ依頼しようと思ってもそもそも監視の設定情報を知らないと無視対象を伝えられないし、依頼ができない。作業する側も依頼や申請が出しやすい方が良いわけで、依頼の仕方にも工夫が要るだろう。

そこで、申請画面(運用コントロールパネルと呼んでいます)を開いたときに、監視設定の情報を監視システムから引っ張ってきて、ノード情報、監視項目情報を表示しています。そうしておけば、作業者が覚えていなくてもその場で確かめながら申請できます。

でも、障害中にすぐやりたい!といった場合に、運用コントロールパネルをポチポチ開くもの、ちょっと手間なんじゃないか?と考えて、ポータル画面でも操作できるように改良しました。単純にポチポチの回数を減らしたかったんです。最近の利用状況を見てみると、この無視に関する申請数はダントツトップです。結果的に不要なアラートを機械的に消し込める数が大きくなりました。

図2:ポータルでポチッと監視停止

もう一方の、アプリケーション不具合やデータベース障害等で発生する、垂れ流しになってしまうログ関係のアラートは、5分間でまとめてしまおうと考えました。どうやってまとめるかというと、同一のサーバの同一監視項目を1件にマージしています。重複排除と呼んでいます。

障害が発生してしまうのは仕方ないとして、オペレーション現場からみると、突発的にバーストするこの手のアラートの対応は、すごく大変なんです。ずっと出っ放しなので、1件ずつ対応していたのではとんでもない対応遅延になってしまいます。アラート全体から見ると、この重複排除した件数はさほど多くはないですが、運用現場にとってはすごくありがたい機能だったりします。こういった中継システムの機能を使った結果、年間1,000万件を超えるアラートの94%を機械的に無視するまでに至りました。

図3:ノウハウから生まれた自動アラート処理機構

この他にも、中継システムには様々な機能があります。動的な手順書自動生成機能、自動アラート通知機能(これ、電話もメールもできるんです)、大量アラート検出機能、API連動、メール連動などなど、運用現場ならではの機能をスクラッチ開発しています。

運用管理機能をSaaS提供

そんな中継システムを中核に据えた、運用管理システムをSaaSで提供しているのがIIJ統合運用管理サービス、略してUOM(Unified Operation Management)です。主要機能の監視、運用、ジョブに加えて、統合管理ポータル、チケット管理、通知といったサブ機能までをラインナップしたサービスです。実は中継システムは勝手についてくる基本機能です。これらの機能はすべてが結合されていますので、ご契約いただいてからすぐに使い始めることができます。

機能カットでみると、OSS(Open Source Software)や各社から製品が出ていますが、フルSaaSで提供しているのは大きな特徴です。しかも、長年アウトソーシングをやってきたIIJがコア部分をスクラッチ開発していますので、運用者に優しいサービスになっていると思います。

マルチクラウド時代の運用

昨今はマルチクラウドがどんどん浸透しており、現場に求められるスキルセットやスピード、品質が日に日に増しています。従来型のオペレーションのあり方では、到底太刀打ちできないのも明白で、新しい取り組みが必要だろうと感じています。そこでIIJは、「マルチクラウド運用の自動運転」に向けて、新たな挑戦に挑み始めています。

※2017年6月に弊社ブログに掲載した記事を、一部加筆修正しました。