参考資料
www.oreilly.co.jp
Ansibleとは
多数のサーバーや複数のクラウドインフラを統一的に制御できる構成管理ツール
→PuppetやChefもある
Ansibleインストール
sudo pip install ansible
サーバーの事をAnsibleに知らせる
・playbookディレクトリを作成
私は下記に作りました。
/etc/ansible/playbooks
・playbook配下にhostsファイルを作成
→インベントリファイル
AWS環境を使用したので下記内容にしました。
<エイリアス> ansible_ssh_host=<IPアドレス> ansible_ssh_port=22 ansible_ssh_user=<SSHユーザー名> ansible_ssh_private_key_file=<キーファイル格納場所>
実際に確認してみると下記のようになります。
<コマンド>
ansible <エイリアス名> -i hosts -m ping
※動作が成功しなかった時は-vvvフラグを追加すると詳しくエラーが表示されます。
ansible <エイリアス名> -i hosts -m ping -vvv
ansible.cfgによる簡略化
ansible.cfgでデフォルト値を設定する事でインベントリファイルやコマンドを簡略化できます。
例)
・下記場所にansible.cfgを作成
ファイル場所:/private/etc/ansible
内容
[defaults] hostfile = hosts remote_user = <ユーザー名> private_key_file = <ファイルキー格納場所> host_key_checking = False
・-i hostnameの引数を抜いてチェック
playbookを実行
playbookはネット上にアップされているymlを参考に動かしてみました。
ansible-playbook -i <ymlファイル>
まだ導入レベルなので理解度も初歩的な所ですが他のツールも使いながら学習していきます。