Ansibleを用いたネットワーク設定の自動化

ビジネス推進本部 応用技術部
エンタープライズSDNチーム
杉 亜希子

サーバの運用管理において利用されてきた構成管理ツールが、現在、ネットワークの運用管理でも利用され始めています。
本コラムでは、構成管理ツールであるAnsibleを用いたネットワーク設定の自動化についてご紹介します。

1.構成管理ツール Ansibleとは?

昨今、システム管理者は多くのサーバの運用管理(アプリケーションの追加、パッチ適用など)を行っています。また、新しいシステム環境を構築する際には、複数サーバにいくつものアプリケーションのインストールを行い、設定コマンドを実行するなどといった同一オペレーションを実施することが多々あります。
これらのオペレーションをシステム管理者が手動対応するには、時間・労力的に困難かつ人為的ミスが懸念されています。
そこで利用されてきたのが、構成管理ツールです。構成管理ツールとは、サーバを想定した状態に自動でアプリケーションのインストールや設定を行ってくれるツールです。

図1:構成管理ツール
図1:構成管理ツール

構成管理ツールはいくつもありますが、現在 注目を集めているのがAnsibleです。これまでAnsibleは、サーバの運用管理のツールとして利用されてきましたが、2016年2月のver2.1へのアップグレードに伴い、様々なネットワークベンダーのデバイスがサポートされてきました。また、提供されるモジュールもAnsibleの公式サイトで適時公開されています。

Ansibleの主な特徴は、以下となります。

・エージェントレスな構成管理ツール
(実行対象デバイスにエージェントのインストール不要)

・設定ファイルが少なく、シンプルな記述
(基本的に、InventoryファイルとPlaybookファイルのみ。PlaybookはYAML形式で記述)

図2:Ansibleの概要
図2:Ansibleの概要

 Ansible適用によるメリットは、以下となります。

・人為的ミスを事前に削減
 (オペレーション手順がコード化するため、事前レビューできる)

・作業工数を軽減
 (繰り返し行う作業、単純作業を効率良く実施できる)

2.ネットワーク管理もAnsibleで

上記では、構成管理ツールとAnsibleの概要・特徴を紹介してきました。
ネットワークの管理においても、同一オペレーションを複数ネットワークデバイスに実施することが多々あります。例えば、新しいシステムでサーバ構築が行われた場合、ネットワーク側では対象サーバ用にVlan追加(セグメント)の作業が発生します。このような場合、サーバ管理と同様に1台ずつ機器にログインして設定変更を行う、もしくはベンダー独自の管理ツールを用いて対応してきました。ベンダー独自の管理ツールは、対象デバイスが限られるため汎用性がありませんでした。
Ansible適用によりサーバだけでなく、ネットワークも同一基盤で運用管理できるようになります。

以下、Ansibleを用いてCisco Nexusスイッチ,Juniper QFXスイッチを対象に、vlan設定を行いました。 

図3:Ansibleによるvlan設定(Cisco)
図3:Ansibleによるvlan設定(Cisco)

図4:Ansibleによるvlan設定(Juniper)
図4:Ansibleによるvlan設定(Juniper)

図3と4に記載の通り、各スイッチでvlan150が作成されたことが確認できます。モジュール内で定義されている引数が対応機器ごとに統一されていないため、初期導入に多少時間がかかると考えます。しかし、一度作成したPlyabookは流用できるため、vlan番号の変更を行うことで今後のvlan追加の依頼に容易に対応できます。

3.まとめ

 本コラムでは、構成管理ツールであるAnsibleの概要・特徴を紹介しました。また、従来 サーバ管理にて利用されてきたツールですが、現在はネットワーク管理においても利用可能なことを紹介しました。
 Ansibleにより多数のネットワーク機器に一括設定が行えるため、作業工数の削減を行えます。また、Ansible-Playbookを確認することで実施内容を事前レビューできるため、人為的なミスを事前に低減できます。このように、コード(作業手順)として残すことができるので、Infrastructure as Codeの概念がネットワークでも利用可能となりました。
今後、モジュール提供が引き続き行われ、さらに運用管理の自動化が進むことが期待されます。

執筆者プロフィール

杉 亜希子
ネットワンシステムズ株式会社 ビジネス推進本部
応用技術部 エンタープライズSDNチーム所属

エンタープライズ分野でプリセールスエンジニアとして活動してきた経験を生かし、
現在ではクラウドデータセンターの先端技術の調査・検証と共に、提案および導入を支援する業務に従事
・CCIE DC

イベント/レポート