「ネットワーク運用の自動化は、30年前からあまり進んでいないのではないか」――。レッドハットの杉山秀次氏は、インターネットの黎明期に大手ISPでバックボーンの構築・運用に携わった自らの経験も踏まえ、このように述べた。
「SDNの登場を機に、自動化が進むと期待された」が、実際には現在も「新機能を導入する際にはまず試験環境を構築してテストを行い、それに基づいて運用手順書を策定、レビューし、手順書通りに本番環境を構築する」といった旧態然とした手法(MOP:Method of Procedure)が主に使われていると指摘した。
こうした手法は、作業に時間がかかるだけでなく、ヒューマンエラーによる障害発生のリスクもはらむ。
レッドハット APAC テクノロジーオフィス NFV/SDN チーフテクノロジスト 杉山秀次氏
なぜ、ネットワーク運用の自動化は進展しないのか――。これには、多くの理由があるという。例えば、既製の自動化ツールの多くが特定ベンダーの製品を対象に作られていてマルチベンダー環境では使いにくいこと、ネットワークが複雑化していること、運用担当者のスキルや意識の問題などだ。
こうした障壁を突破し、ネットワーク運用を大幅に効率化する手段として杉山氏が推奨するのが、DevOpsで用いられている「Ansible(アンシブル)」である。
開発部門と運用部門が連携してソフトウェア/システムの迅速な開発・導入を実現するDevOpsは、多くの開発ツールによって支えられている。その1つであるAnsibleは、煩雑なサーバーやネットワーク機器の設定を効率化する「構成管理ツール」と呼ばれるソフトウェアだ。
運用手順書をAnsibleのPlaybookに置き換えられる
Ansibleは「Playbook」と呼ばれるファイルに記述した設定内容をサーバーやネットワーク機器に正確に反映させる機能を持っており、運用管理者が多数のサーバーやネットワーク機器に対して、同一の設定を繰り返し行う必要がなくなる。
さらに、「これまでエンジニアが自動化のために個別に作っていたテンプレートやスクリプトをPlaybook化することで、汎用性のある自動運用プロセスを実現できる」という。