ネットワークの管理・運用におけるAIの活用

トレンド情報

この記事では、AIとネットワークを中心としたITシステムの構築・運用業務との関係について紹介します。近年注目が集まるAIが、システム構築や運用業務において、どのように影響し、活用されているかを3回に分けて取り上げます。

ネットワークとAIの関係

ネットワーク技術とAI(人工知能)には、どのような関係があるのでしょうか?

実は、ITインフラの構築や運用とAIはとても相性が良く、AIを活用することで、構築や運用業務をさらに効率化、高度化させることができるのです。

また、ネットワークの分野においてAIの活用が期待される理由もあります。1つ目は、少子高齢化の進展による働き手の減少に伴い、高度なスキルを持ったエンジニアの確保が難しくなるためです。2つ目は、企業においてDXなどの取り組みが進展し、さまざまなITシステムが導入されたことで、IT担当者の業務範囲が広がっているためです。人手不足に加え、オンプレミスとクラウド、IoTなど多種多様なシステムやネットワークの運用をすべて手作業で行うことは難しく、AIによる自動化とサポートが期待されます。

そして、ネットワークだけでなく、ITシステムの運用全体を変革するキーワードとして注目を集めているのが、AIOpsです。AIOpsについては後ほど詳しく説明しますが、この記事では、AIOpsを軸に、特にネットワークとAIが組み合わさることで、何が変わるかを紹介していきます。

AIとは

ここからは、AIOpsのみならず、近年の社会全体における重要なキーワード、AIについて紹介します。AIOpsを理解するために必要な、AIとはどのようなものか、どのような技術から成り立っているのか、ということの全体像を説明します。

AIの概要

AIとはなにか、ということについては様々な議論がありますが、ここでは「人間の知的機能の一部を実現するコンピュータープログラム」と定義しておきます。

ビジネスなどにおける課題解決にAIを活用しようという試みが、これまでに何度も行われてきました。
1950年代から60年代の第一次ブーム、1980年代から90年代の第二次ブーム、そして2010年代から現在に至る第三次ブームにおいて、様々な技術の開発や応用事例が生まれました。そして、現在の生成AIを中心としたブームは、一過性のブームではなく、仕事や生活に必要不可欠なものとして定着するかもしれません。

AIの概要

AIの実現手段

AIを作る方法は大まかに2つあります。一つ目はルールベースのアプローチ、もう一つは機械学習モデルを利用するアプローチです。

AIのアプローチ
AIのアプローチ

ルールベースのアプローチとは、「こういう条件の時にはこう振る舞う」というルールを人間がリストアップし、登録したプログラムのことを指します。しかし、ルールベースのアプローチには限界があります。あらゆるケースを想定してルールを作成するにはコストがかかりますし、これまでに存在しないタイプの問題、例えば未知のウイルスの振る舞いに対応することは難しいです。

そこで、機械学習モデルを用いたAIが必要となります。

機械学習の概要

機械学習(Machine Learning)とは、データの中に含まれるパターン(関係性)をコンピューター自身が発見する仕組みです。コンピューターが見つけたパターンのことをモデルと言います。学習(モデル作成)の仕方は大きく3つあり、それぞれ教師あり学習、教師なし学習、強化学習と呼ばれます。

  • 教師あり学習:データを目的変数と説明変数という役割に分け、説明変数の変動で目的変数の値を予測します。
  • 教師なし学習:データ間の類似度をもとに、似たデータどうしをグループ化します。例えば、顧客の購買履歴をもとに、似た購買傾向の顧客をグループ化することができます。
  • 強化学習:プログラムの振る舞いに報酬または罰則を与えることで、最適な行動を徐々に学習していきます。

これら3つのアプローチの中で、さらにどのようにしてモデルを学習するかというアルゴリズムが複数あります。今回は詳しくは触れませんが、人間の脳の構造を模したネットワークで表現するニューラルネットワークというアルゴリズムなどがあります。

ニューラルネットワークとディープラーニング(深層学習)

ニューラルネットワークは、人間の脳神経系の仕組みを模したアルゴリズムです。ニューラルネットワークを、より複雑で「深い」ネットワークにしたものがディープラーニング(深層学習)です。ディープラーニングはこれまで扱いが難しかった画像や音声、自然言語のテキストなどもデータとして扱いやすくなりました。

ニューラルネットワークとディープラーニング(深層学習)

これにより、画像認識、音声認識などが一気に進展しました。そして、大量のテキストをディープラーニングで学習した成果が、現在最も注目される生成AIです。

生成AIとは

生成AI(Generative AI)の背後には、大量のテキストを学習したディープラーニングモデルがあり、大規模言語モデル(LLM:Large Language Model)と呼ばれます。LLMは、教師あり学習の一種で、与えられた文字列から「次に来る単語」を予測することを繰り返し、文章を生成します。

LLMを使いやすいチャットの形で実装したのが、ChatGPTをはじめとした生成AIです。これらの生成AIは、テキストだけでなく画像・動画やプログラムコード、様々な機器の設定コマンドなども学習しています。そのため、指示の仕方によっては、画像・動画やプログラムを生成したり、ある機器として振る舞わせたりすることも可能です。

生成AIとは

ここまでAIの歴史や概要を紹介してきました。ここからは生成AIをはじめとしたAI技術が、ネットワークを中心としたITシステムの構築、運用にどのような影響を及ぼすのかについて説明していきます。

ネットワークにおけるAI技術の具体的な活用例

ネットワークの構築や運用において、AI技術は以下のような用途での活用が期待されます。

  • 生成AIの活用によるシステム構築や運用の効率化
  • 機械学習によるシステム運用の高度化
  • 生成AIと機械学習によるセキュリティの強化
  • エッジコンピューティングによるネットワーク負荷の低減

なお、このようなネットワークを含めたIT運用にAIを活用する取り組みを、AIOpsと呼びます。

AIOpsは、Artificial Intelligence for IT Operation(IT運用のための人工知能)またはAlgorithmic IT Operations(アルゴリズムを用いたIT運用)という言葉の略称で、ITシステムの運用を自動化、最適化することを目的として、AIや機械学習などの技術を応用することです。

AIOpsのイメージ

AIOpsは、大量のデータを自動的に分析し、そこで得た知識をもとに、インシデントの検知や対処、パフォーマンス、セキュリティの最適化などを行います。

例えば、業界大手のJuniper Networksも、AIOpsに対応したソリューションを開発し、提供しています。Juniper NetworksのAIOpsは、無線、有線、クラウド、セキュリティの全領域で、運用を簡素化・最適化します。

Juniper NetworksのAIOpsに関する取り組みは、以下の記事を参照してください。

それではここから、ネットワークにおいてAI技術を導入する具体的な事例を紹介していきましょう。

AIによるシステム構築・運用の効率化

AIOpsでは、AIを活用することでより高度で効率的なシステム構築・運用を実現します。ここではまず、生成AIを用いることで、作業がより効率的になるケースを紹介しましょう。

生成AIによる各種機器の設定ファイルの作成
前述のように、ChatGPTなどの生成AIは、インターネットに公開されている多数のデータ(テキスト、画像、プログラム等)を学習しています。そのため、例えばネットワーク機器の設定(Config:コンフィグ)などについても、仕様や制約などを指定することで、そのまま利用可能な出力を得ることができます。

ここでは実際に、前出のJuniper Networks製品のOSであるJunosの設定コマンドを出力する例を紹介します。ChatGPTなどに、以下のような指示(プロンプト)を与えてみます。

Juniper EX4300で、VLAN ID 10と20の2つのVLANを作成する設定を出力してください。

すると、次のような回答が得られます。

Juniper EX4300でVLAN ID 10と20の2つのVLANを作成するための設定は以下のようになります。

set vlans VLAN10 vlan-id 10
set vlans VLAN20 vlan-id 20

上記のコマンドは、それぞれVLAN ID 10と20を持つVLANを作成します。VLANの名前は`VLAN10`と`VLAN20`としていますが、これは任意の名前に変更可能です。設定を反映させるには、最後に`commit`コマンドを実行してください。

commit

これで、VLAN ID 10と20の2つのVLANが作成されます。ご確認ください。

ここでは極めてシンプルな例を挙げましたが、生成AIはJuniper製品や他社製品の操作についても学習しているため、該当製品について詳しくないユーザーでも、仕様書や設計書をもとに正しい設定を行うためのコマンドを知ることができます。

また、仕様書に沿って設定を行った場合に生じ得るセキュリティや性能面でのリスクについても、生成AIにレビューさせることが可能です。これにより、設計ミスや考慮漏れなどによるトラブルを避けることができます。

ただし、結果によっては事実と異なる場合もあるため、100%信用するのではなく参考程度にとどめる必要があります。

生成AIによる運用関連ドキュメントの検索
生成AIは、インターネットに公開されているデータだけでなく、社内のローカルな文書、データを情報源として扱うことも可能です。例えば、Microsoft 365で提供される“Copilot for Microsoft 365”では、社内に存在するファイルを参照して回答を生成できます。

つまり、システムやプロジェクトに関するドキュメントを適切な場所に配置すれば、プロジェクト特有の事柄に関する質問にも正確な回答が得られるのです。これにより、知りたい情報がどこのフォルダーのどのファイルに書いてあるか探すようなことがなくなります。他にも、例えば後からプロジェクトに参加したメンバーが、必要な情報やマニュアルなどを素早くキャッチアップできます。

AIによるシステム運用の高度化

次に、AIを活用することでさまざまなリスクをより早く、正確に検知し対応できるようになる、ということについて紹介します。

ログデータ収集の必要性
何より重要なのは、AIに判断させるためのデータを収集することです。従来から、運用管理のために様々なログデータを収集、蓄積していますが、AIはデータの量が多いほど、そして細かいほど正確に判断、予測できますので、今後はより詳細で高頻度なログを収集することが必要になります。また、AIは複数の機器で発生するログデータを組み合わせて、システム全体としてのリスクや異常を発見することも可能です。そのため、ログを統合して一箇所に蓄積することも重要です。

その際、以前から広く使われているツールに、fluentdがあります。fluentdは、多数の製品、サービスに対応したログ収集・統合ツールで、Juniper製品もfluentdに対応しており、Junos Telemetry Interface(JTI)を通じて、機器のログをJSONなどのフォーマットで収集、蓄積できます。以下の記事で、いくつかのfluentdプラグインを紹介しています。

AIによる異常検知
収集したデータに対して機械学習アルゴリズムを適用することで、異常検知モデルを作成することができます。具体的な方法は複数ありますが、例えば、現在問題なく稼働しているシステムのログを学習することで、機器の温度やネットワークの通信量などの「正常な範囲」をAIに理解させることができます。そして、今後その範囲から外れるような異常値が発生した場合に、いち早くそれを検知し、担当者に知らせることができます。

AIによる異常検知
異常検知のイメージ 異常値を検知し、赤い点で示している

このような異常検知の仕組みを運用に組み込むことで、大きなトラブルにつながる予兆に早い段階で気づき、対応できます。実際に障害が発生してからの対応ではなく、予防的に対応することで、システムの稼働率を上げ、安定したサービスを提供できます。

まとめ

この記事では、ネットワークとAI技術の関係と、その基礎となるAIについての概要を紹介しました。そして、ネットワーク構築や運用にAI技術を導入することで実現できる事例として、運用の効率化、高度化について具体的に説明しました。次回は、AIとネットワーク技術の関係について、AIがネットワークセキュリティに及ぼす影響と変化IoTとエッジコンピューティングが及ぼすネットワークへの影響を取り上げます。

Juniper導入実績多数のスペシャリストが
最新情報をみなさまにお届けしています

Juniper社認定資格者