Home

Awesome

ansible

インストール

リモートホストはpython2か3が入っており、ローカルからSSHが出来れば良い。ansibleを入れる必要はない。
ローカルクライアントには以下の手順でインストールを行う

python3 -m pip install --user ansible

https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html#pip-install

もしくはaptで入れる
https://docs.ansible.com/ansible/2.9_ja/installation_guide/intro_installation.html#ubuntu-ansible

トラブルシューティング

WARNING: The scripts ansible, ansible-config, ansible-connection, ansible-console, ansible-doc, ansible-galaxy, ansible-inventory, ansible-playbook, ansible-pull and ansible-vault are installed in '/home/honahuku/.local/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

と言われた場合は以下を実行

set -o noclobber && echo export PATH='$PATH:$HOME/.local/bin' >> ~/.bashrc
ERROR! couldn't resolve module/action 'community.general.read_csv'.

と言われた場合はansibleのバージョンが最新で有ることを確認する。
apt でリポジトリを追加せず単にapt install ansibleをすると古いものが降ってくるので注意

ansible-vault

ansible-vaultでsecretを暗号化しコミット可能な形にできる

暗号化

ansible-vault encrypt secret.txt user.csv

暗号化したファイルをplaybookで使う時は--ask-vault-passをplaybook.yamlの前につける

ansible-playbook -i inventory.yaml --ask-vault-pass secret.txt

復号

ansible-vault decrypt secret.txt user.csv