Ansible
- Ansible(1)Ansibleの概要
- Ansible(2)ファイル関連モジュール
- Ansible(3)システム管理モジュール
- Ansible(4)コマンド実行モジュール
- Ansible(5)パッケージ管理関連モジュール
Ansibleとは
Ansibleは、インフラストラクチャを自動構成可能(Infrastructure as Code)な構成管理ツールで、作業の省人化と効率化によるコスト削減やコード化による高度な品質保証を実現することができる。
Ansibleは、操作対象マシンにエージェントアプリケーションをインストールすることが不要(エージェントレス)であることが特徴で、SSHでログインできる端末であれば操作可能となるので、エージェントアプリケーションをインストールすることができないネットワーク機器なども、Ansibleの操作対象とすることができる。
Inventory
操作対象となるマシンへの接続情報を記したファイル。API経由でマシンへの接続情報を収集してInventory情報を自動生成するDinamic Inventryという機能を使用することもできる。INI形式もしくはYAML形式で記述できる。グループを定義して[グループ名 vars]でグループごとの変数を定義することができる。
| 変数名 | 内容 |
|---|---|
| ansible_user | SSHでログインするユーザ |
| ansible_ssh_pass | SSHでログインする際のパスワード |
| ansible_ssh_private_key_file | SSHでログインする際の秘密鍵 |
| ansible_become | root権限で実行する |
Playbook
site.ymlとして定義されるマスタープレイブック。実行するプレイを順に羅列する。
| 変数名 | 内容 | 備考 |
|---|---|---|
| name | ||
| hosts | ||
| remote_user | ||
| vars_files | ||
| roles | ||
| environment |
Module
Ansibleで実行するコマンド。YAMLで記述する。変更が生じるときのみ実行され、ある操作を何度事項しても常に同じ結果となる冪等性を担保している。