こんにちは、デジタル インフラストラクチャー部の倉持です。
Merakiで自動化/Automationを実現しましたのでブログでご紹介します。
まず、Merakiとは何か。
簡単に説明しますと、Merakiは全てのネットワーク機器をクラウドで管理するソリューションです。Merakiのクラウドにアクセスするためにはインターネットに接続出来ることが条件です。そのため、世界のどこからでもネットワーク管理が可能でとても便利です。
自動化を実現するためには、以図の3つの要素が必要です。
①Pythonで開発した自動化のスクリプト ファイル、このスクリプト内に
②Excelファイルで用意した設定変更のデータを読み込み、このデータをもとに
③Merakiクラウドに設定変更の指示を出します。
【自動化vs 手作業】
今回の自動化案件のきっかけは、お客様内で組織名の変更がございまして、400台の機器のネットワーク名とデバイス名の変更の依頼を受けました。この作業を手作業で実施した場合、9~18時の業務時間で実施した場合3~4日間掛かっていました。その一方、自動化で作業を実施した場合、1~2日間しか掛かりません。
Merakiの標準機能には、Templateといった便利な機能があり複数のデバイスに対して共通の設定を一度に行うことが可能です。しかし、今回の変更箇所には、他機器と区別するためのユニーク(オンリーワン)の文字を設定する必要があるためTemplate機能は利用しません。
大事な書類等の確認作業をされた経験は誰もがあると思いますが、こちらの作業ではお客様のネットワーク環境を変更するため責任とプレッシャーは大きいです。そのため、ミスを起こさないように神経を使うことになります。今流行っている、アニメの鬼滅の刃に例えると「全集中」の状態を4日間保つことですね。
機械を通じて自動化で実施した場合、機械は休憩を取る必要はなく誤入力は起きないため、素早くかつ正確に作業が処理されるので安心できます。以下の表にざっくりした、手作業と自動化の二つの方法で作業を実施した場合の作業時間の内訳と合計時間がございます。
【自動化のパフォーマンス】
自動化がどのくらい便利かを伝えるため、以下の表に作業時のデータを記録致しました。
1回目の作業では10台の機器の設定変更を実施して、40秒掛りました。同じことを手作業でした場合、30分ぐらい掛かっていますので作業時間の短縮を達成出来ました。
2回目以降からの作業では、設定変更の台数を10台ずつ追加して行き、その度30秒ぐらい時間が増えていきました。例外なのが3回目の作業(30台の設定変更)、こちらの作業時では、ある1台の機器への疎通を取るために少し時間要してしまいましたので、作業が完了するため時間が掛かりました。
合計、400台の設定変更を20分以下で実施できました。作業から工夫出来たことがありまして、次回同様な作業がある場合、作業時間をもっと短縮出来るかと思います。
【自動化の注意点】
自動化スクリプトの開発後には、検証作業は欠かせません。検証は出来る限り本番環境と近い環境でテストするのが理想ですが、必ずそのようにはいきません。設定変更の規模(機器の台数)が増えると影響範囲が広がるため、本番環境で作業を実施する時は、慎重にする必要があり、始めは小規模な台数から実施します。
今回の自動化の作業で一番最悪のシナリオは、全400台の対象機器に誤った設定をしてしまい、元の状態に戻すため、数日間掛けて手動で修正し、その間はお客様へのビジネス影響を起こしてしまうことです。とても怖いシナリオなので、検証することや手順書を用意すること等はとても大事です。
私はデモ環境で数台で小規模のテストを実施し、開発したスクリプトが想定通りに動作した確認が取れました。そのため、本番環境でも上手くいく自信がありました。しかし、トラブルが起きる可能性はゼロではないので、本番環境でも慎重に実施しました。上記の表の通り、一回目の作業では10台だけで進め、確認作業を行い、問題がないことを確認してから残りの機器を対応しました。
まとめ
最後まで読んでいただきまして誠にありがとうございました。今回はCisco Merakiで自動化/Automationを実現についてご説明させていただきました。これから導入を検討されているお客様へ少しでも参考になれば幸いです。本ブログにつきましてご質問等ございましたら、お気軽にお問合せいただけますでしょうか。どうぞよろしくお願いいたします。