サーバー設定自動化フレームワーク「Ansible 2.0」公開
サーバー設定などを自動化するためのフレームワークであるAnsible開発チームは1月12日、最新版となる「Ansible 2.0」を発表した。米Red Hatによる買収後初のメジャーリリースとなり、コードリファクタリングを進めてタスクのグループ化などの新機能を導入した。
AnsibleはPythonで書かれたIT自動化フレームワーク。アプリケーションやサービスの実装や管理をシンプルにし、DevOpsを支援する。サーバーに専用のエージェントソフトウェアをインストールすることなしにSSH経由で作業を行えるのが特徴。開発と提供を行うAnsibleは2015年、Red Hatにより買収されている。ライセンスはGPLv3で、Ansibleはサポート付きの有料版「Ansible Tower」も提供する。
2年前に公開された「Ansible 1.0」に続くメジャーリリース。コード名は「Over the Hills and Far Away」で、これまでで最も野心的なリリースとしている。
「V2」として、大部分のソフトウェアをリファクタリングした。YAMLファイルやプレイブック(Ansibleスクリプト)へのパーシングを司るコードも書き直したという。これによりアーキテクチャがクリーンになり、新しい機能の追加が可能になったとしている。
また、Pythonのtry/except/finally構文に倣い、プレイブックの例外処理を導入した。これによりプレイブックやタスクの開発が容易になり、タグや条件を使ったタスクのグループ化が可能になるという。また、プレイブックのパーシング、エラーレポートを改善し、さまざまなエラーに対する修正案を提示する。さらにincludeしたタスクを動的に実行できるようになっている。
また、Ansibleがターゲットホストでタスクを動かす方法を変更できる「Execution Strategy」プラグインを導入した。「free」 Strategyとして、各ホストが順番にタスクリストを処理する方法も用意する。
モジュールも多数導入し、OpenStack管理のためのモジュールやAmazon Web Services対応のためのモジュールなどが加わった。これに加えて、VMwareやMicrosoft Windows環境についても設定管理のためのモジュールが追加され、Dockerモジュールも大きく改善した。
リファクタリングによる後方互換性への影響については、ほぼ保たれているが例外もあるとしている。特にプラグインAPIはコード重複が排除されるなど大きな変更が加わった結果、一部のプラグインについてはバージョン2.0向けにアップデートが必要かもしれないと注意している。
Ansible 2.0はGithubやPypi、各種Linux向けのパッケージマネジャ経由で入手できる。
Ansible
http://www.ansible.com/