予兆検知・可視化・アナリティクス

2019.05.27

Author:

データ活用実践 – 自律型ネットワーク②

前回の記事では自律型ネットワーク実現に向けた取り組みの紹介を行いました。前回の記事では紹介しきれなかった、見るべきポイントについて今回の記事で紹介します。今回のトピックスは以下の3つです。

  • 見るべきポイントはネットワークだけでいいのか?
  • 変わらない状態を記録しておくことの重要性
  • 増え続けるデータへのアプローチ

 

見るべきポイントはネットワークだけでいいのか?

自律型ネットワークを実現する際、ネットワークのみに注目すればよいのでしょうか。実際にはそうではなく、他にも注目すべき点があります。それは、システムが正常に動き続けること、それをどう担保するかです。ネットワーク機器自身、可視化自律化のために使うサーバやソフトウェアが正常に動いていることが自律型ネットワークの大前提になります。そのために、トラフィック等のネットワークのデータだけに注目するのではなく、システムを構成するコンポーネントのメトリック(CPU使用率やメモリ使用率等)やログの監視も自律型ネットワーク実現には非常に重要な要素になります。しかし、自律型ネットワークを構成するコンポーネントはマルチベンダー環境であったり、大規模環境であるほど、一般には増えていくものです。これらのコンポーネントひとつひとつにアクセスし、CLIでログを見るということは、私のようにネットワーク機器をほとんど触ってこなかった人にとってはかなり大変な作業になります。また、CLIで見ているログに対して直接検索をかけることもできないため、必要なログを探し出すのに時間を要する可能性があります。このメトリックやログを、ネットワークのデータを可視化/分析するときに使ったものと同じコンポーネントで同時に可視化/一元管理できれば、運用が楽になるのではないでしょうか。そこで、最近では可視化や検索をひとつのソフトウェアで行う、ということも考えるようになりました。


fig2-1

【図1 それぞれのコンポーネントからメトリック、ログを収集】

 

変わらない状態を記録しておくことの重要性

さて、これらの取得したデータを、機械学習を使って自律化に持っていくために、少しだけデータの内容に触れます。ネットワーク機器によっては、ステータスに変化があったとき(例えばインターフェイスのUP/DOWN)にのみ、データを出力するものもあります。通常の監視で言えば、これで問題ないかもしれませんが、機械学習を使うことを考えると、これで良いとは限りません。機械学習の手法として、時系列データを取得し「通常時の振る舞いを学習してモデル化し、その振る舞いから外れた場合に検知する」というものがあります。この場合、データの取得がステータスが変化したタイミングだけになってしまうと、それ以外の時刻ではどのステータスであるかわからないため(人間は想像できるが、機械は想像できない)、良いモデルが作れないことが多々あります。そのため、使う機械学習の手法によっては、変化のないデータでも取り続けることが重要になる場合があります。


fig2-2

【図2 データ取得方式の比較】

 

増え続けるデータへのアプローチ

上記のように、ステータスに変化がなくてもデータを取り続けた場合、次に挙がる課題はデータ量の増加です。機械学習のモデル作成のために、データを学習するとき、起こる振る舞いの周期性を考えると、ある程度長い期間のデータ取得が必要になります。増えていくデータへのアプローチとして、データの圧縮や集約といったデータそのものの容量を減らすもの、必要のなくなった過去データの自動削除等が考えられます。これらもポリシーを設定しておくだけで自動で行ってくれると、運用者としては非常にありがたいものです。

実際に自律型ネットワークの検証環境を構築し、同時にメトリックやログを可視化してみた内容や、ログのライフサイクルを検討した内容は、こちらの匠コラムで詳細を紹介しています。

今後のカギを握る “データ” ついて、日ごろから意識していこう、とあらためて思いました。今流れているデータは可視化や分析のために使いやすい形式になっているか、ということも考える必要がありそうです。

※本記事の内容は執筆者個人の見解であり、所属する組織の見解を代表するものではありません。

MORE「予兆検知・可視化・アナリティクス」記事