これまで4回にわたってネットワークの運用管理の自動化について連載してきました。

  1. ネットワーク運用の自動化の全体像とライフサイクル
  2. ネットワーク機器自身が持つ機能による自動化(ZTP)
  3. 自動化ツールによる構成管理(Ansible)
  4. ライブラリを使って簡単にデータの取得、機械的な判断を実行(Python)、表示(Jupyter)

 第4回でも少し触れましたが、自動化できる作業的な部分と人の判断が必要な部分を明確に分けることで、作業は機械に任せ、人は判断に集中できる運用が可能になります。最終回の今回は、イベントドリブンな自動化とネットワーク運用の将来像について紹介します。

作業の自動化をサポートする方法

 これまで紹介してきた自動化ツールは、それぞれ特定の業務を自動化するのに有効なものです。これらを運用の一部に取り入れるだけでも、運用負荷をかなり低減できます。そこからもう一歩自動化を進め、業務の自動化の比率を上げるには、複数のツールの連携が重要です。なぜツール間の連携が重要なのかを見ていきましょう。

 ツール間の連携がない場合にはこのようになります。

[画像のクリックで拡大表示]

 オペレーターが作業の中核になり、各ツールを操作、実行する形になります。個々の作業を確認できるという点はメリットですが、オペレーターがすべてのツールの操作方法を習得せねばならず、オペレーションの負荷が上がる可能性があります。

 これに対し、ツール間の連携がある場合はこのようになります。

[画像のクリックで拡大表示]

 オペレーターがある一つの作業をするだけで、業務フローを実行できるようになります。いったん作業が始まれば、必要に応じて確認を行うだけで済みます。これにより、オペレーターが直接操作するツールの数が減り、工数を削減できます。

 より細かい業務分業も可能です。「ユーザーを追加する」というサービスオーダーの作業を例に考えてみましょう。従来は、コンフィグ作成から機器追加、確認までをオペレーターが担当していました。自動化やツール連携を導入すると、手順が整理されるため、次のような完全分業が可能になります。

  • 自動化・ツール連携の作り込み→ 開発チーム
  • サービスオーダーの必要情報入力 → サービスオーダーチーム
  • 生成されたコンフィグ承認と確認のみ → オペレーションチーム