注目の技術トレンド「AIOps(エーアイオプス)」とは?

#エンジニアブログ

 

AIOps(エーアイオプス)とは、人工知能(AI)や機械学習(ML)を用いて、システム運用などを自動化したり、効率化を図ったりする概念のことです。既存の問題を解決に導いたり、起こりうる問題を自動で予測することが可能になり、セキュリティ面の脅威を未然に防ぐためにも役立ちます。

 

今回は、近年さまざまな製品が開発され、適用範囲も広がりつつある「AIOps」とはなにかを解説するとともに、注目される理由や期待されていること、AIOpsを導入することのメリット、導入する際の留意点などを紹介します。

 

AIOps(エーアイオプス)とは

 

AIOps(エーアイオプス)とは、「Artificial Intelligence for IT Operations」の頭文字を取ったもので、「IT運用のための人工知能」という意味を持ちます。この言葉は、米国の調査会社ガートナー社が2016年に提唱したものです。

 

AIOpsは、ITシステム運用において、さまざまなデータとAI・機械学習(ML)を組み合わせることで、運用を改善していくための領域を指します。基本的な目的は、これまで人が対処していた部分を、データと分析を通して自動化していくことです。

 

ガートナー社が2020年9月に発表した「日本における未来志向型インフラ・テクノロジのハイプ・サイクル:2020年」によれば、2020年時点で、日本においてAIOpsは黎明期にあり、主流の採用までに要する年数は5~10年、つまり2025~2030年頃と予想されています。そして、その前には「過度な期待」がされる時期が訪れると示唆しています。

 

なお、AIOpsを実現するシステムを「AIOpsプラットフォーム」といいます。ガートナー社は、AIOpsプラットフォームはDX(デジタルトランスフォーメーション)を推進するために欠かせないツールであると言及しています。

 

出典:日本における未来志向型インフラ・テクノロジのハイプ・サイクル:2020年|Gartner

 

 

AIOpsが注目される理由とは

 

AIOpsが注目される理由として、大きく3つの観点が挙げられます。「ITシステムの大規模化・複雑化」と「エンジニア不足」、そして「機械学習の進歩」です。

 

ITシステムの大規模・複雑化により、人がひとつひとつ状況を判断して対処することが現実的ではなくなりつつあります。同時に深刻なエンジニア不足も続いています。AIOpsを用いず、アナログ的手法で対処していくことは、人的リソースの面で限界を迎えつつあるといえるでしょう。

 

ポジティブな理由としては、AIや機械学習の進歩があります。分析を行うためのプログラムライブラリがオープンソースとして公開されたり、クラウドサービス上での分析を可能とする仕組みが登場したりしたことで、多くの人や企業がAIや機械学習の分析を実際に行うための土台が整いつつあります。

 

先ほども取り上げたガートナー社による予想では、2017年からの5年でAIOpsを活用する企業は8倍にもなる見込みです。今後、AIOpsの導入事例が飛躍的に増えることは確実で、すでに将来を見越したAIOpsの導入と、人材確保が始まっています。

 

AIOpsの活用が期待される場面

 

 

AIOpsは、実際にどのような場面での活用が期待されているのでしょうか。ここでは、AIOpsの活用が期待できる場面を紹介します。

 

パフォーマンス監視・異常検知

従来、システムのパフォーマンスを監視したり、異常を検知するためには、監視ツールがアラートを発する”しきい値”やシステムに精通した担当者が予めキーワードを設定する必要がありました。これらは、今までの知識や経験を必要とする”推定”であり、一定部分を人に依存しています。

 

一方、AIOpsでは異なるアプローチをします。システムの稼働実績のデータを元に、過去にどのような状態で稼働し、どの程度のぶれ幅があるのかなどを分析します。これは、今まで人が経験に頼ってきた部分を置き換えるものであり、より正確です。

 

これにより、しきい値などの設定をしなくても、システムの「おかしな挙動」を捉えることができるようになり、さらに、利用を継続して学習期間が長くなるほど正確性を増します。

 

従来の方法では、システムからのアラートやイベントログが常に送られてきていました。しかし、この方法ではシステムが複雑化していく今後、監視業務を担当するエンジニアの負担は増す一方ですが、AIOpsを用いることで、高度なAI及び機械学習を導入し、分析・保守業務を自動で行うことができれば、複雑なインフラや大量のデータに対しても高いレベルの監視が可能になります。

 

問題の原因と相関関係の分析

システムは年々複雑化しているため、たとえば、運用中の”システムA”にパフォーマンスの劣化が起こった場合、その問題はシステムAだけにとどまらず、関連しているシステムBや、システムBに関連しているシステムCなど、さまざまなシステムに影響を与えるケースが多くなっています。

 

こういったケースでは、システムAのパフォーマンス劣化の原因を特定するだけでなく、システムBや、システムCなど、関連しているさまざまなシステムへの影響を、複合的に判断しなくてはなりません。

 

これまで、このようなケースにおいては、ノウハウ豊富なエンジニアの過去の対応経験が頼りというケースも多々ありました。しかしAIOpsを用いることで、こういった場面でも、過去のデータを元に根本原因の分析と対処法の検索を行うことができます。また、対処の要不要の判断も可能なため、運用コストの削減にも貢献します。

 

各種システムの自動化

従来のシステムとツールの場合、起こったインシデントの内容を理解し解決するためには、複数のソースから得られる情報をエンジニアがまとめて、知見に基づいて対応する必要がありました。しかし、AIOpsを用いることで、インシデントの解決のために必要なデータを自動で集めて相関付けることができるため、人が手動で行うのと比べ物にならないスピードと正確性を実現できます。

 

たとえば、すべてのサーバーのログやメッセージなどを収集して相関付け、必要に応じてアラートを生成したり、レポートを作成することが可能になります、また、クラウドインフラストラクチャの使用率や可用性を監視したり、ストレージのパフォーマンスを、関連するアプリケーションやサーバーの状況と関連付けて把握することもできます。

 

AIOpsを導入するメリット

 

 

AIOpsを導入することで、どのようなメリットが得られるのでしょうか。ここでは、代表的な3つのメリットを紹介します。

 

人的ミス・システムダウンを防止できる

AIOpsでは、AIや機械学習を用いてシステムを大幅に自動化します。それにより、ヒューマンエラーの排除が可能となり、今まで不可能だったレベルでパフォーマンスを安定させることができるようになります。

 

また、これまで発生したアラートやパフォーマンスの問題を学習していくため、さまざまなアラートの中から、エンジニアによる対処が必要なアラートのみを切り分けて伝えることも可能です。アラートが発生する可能性が高い状況を検知して対処を行うことで、最小限の労力で、システムダウンを未然に防ぐことができるようになります。

 

人的リソースを温存し、保守・運用コストを削減できる

前述のとおり、AIOpsはアラート発生の原因を自動で分析し、修復も行うことができます。そのため、エンジニアが対処に時間を割く必要がなくなり、貴重な人的リソースを温存することができます。これにより、エンジニアが今まで十分に時間を割けずにいた別の業務も行うことができるようになり、生産性が向上することでしょう。

 

AIOpsを用いることにより、データ収集からトラブルの対処まで正確性が増し、しかも人が関わる工数は劇的に減ります。そのため、システムの安定性を向上させながら、保守・運用のコストを削減することが可能となります。

 

リアルタイムでデータの集約・分析が可能になる

昨今、多くの企業はDXを進めており、それに伴ってオンプレミスとクラウド、エッジ端末やネットワーク機器など、あらゆるソースから大量のデータやログが出力されます。これらのデータを人の手だけで分析するのはもはや現実的ではありませんが、AIOpsであれば、自動的に整形し、リアルタイムにデータ分析を行うことが可能になります。

 

今後、より一層DXは進み、ビジネスでは今まで以上に柔軟な対応力が必要とされることでしょう。その際、AIOpsを用いることで実現可能になる、リアルタイムでのデータ集約・分析は、より一層、不可欠なものになっていくと予想されます。

 

AIOps導入のポイント

 

AIOpsを実際に導入する際は、どのように進めていくことを心がけるべきでしょうか。ここでは、気をつけたいポイントを解説します。

 

小さく始めよう(スモールスタート)

AIOpsは、段階的な導入が可能です。システムすべてを丸ごと、一気に変える必要はありません。まずは、最も優先度すべき課題を選んで、その根本的な原因を見つけることからはじめるとよいでしょう。

 

たとえば、問題の本質を見抜き、課題を解決するためには、大量のデータを収集するための基盤と、そこからパターンを検出することのできる監視機能を備えた、AIOpsプラットフォームを導入するとよいでしょう。その上で、機械学習を取り入れ、根本的な分析を行う流れになります。

 

また、段階的に導入することで、運用チームとエンジニアが、ビッグデータの扱いに慣れる余裕が生まれます。AIOpsは、スモールスタートで着手することをおすすめします。

 

まずは十分なデータを取り込むことに注力しよう

AIOpsを十分に活用するには、マシンデータやリレーショナルデータなど、あらゆるタイプのデータを取り込むことが大切です。そうすることで、システムの状況に応じた有意義な対応を取れるようになります。

 

導入して最初に役立つのは履歴データです。これは、そのシステムが過去にどのような状態であったかを分析するためで、過去の状態をAIOpsが理解することで、現在の状態を正確に把握できるようになります。データログやテキストなど、どのタイプの履歴データを取り込むかは解決したい課題によります。

 

履歴データのデータセットに目処がつく頃には、運用チームもAIOpsにかなり慣れてきているはずです。そうしたら、新しいデータソースを追加して、AIOpsの適用範囲を徐々に広げていくとよいでしょう。

 

まとめ

 

今回は、AIOpsの概要を解説するとともに、具体的な活用シーンや、得られるメリットなどについて紹介しました。

 

AI及び機械学習は革新的な技術であり、大きな可能性を持っています。そして、それらはすでに普及しはじめています。AI、機械学習、ビッグデータに対する大きな期待を現実のものにするための第一歩がAIOpsと言えるかもしれません。

 

AIOpsは、システムすべてを変更せずとも、導入することができます。特定のシステムから段階的に導入することができるため、まずはスモールスタートで始めることを考えてみるとよいでしょう。

関連する記事