この記事は3年以上前に書かれた記事で内容が古い可能性があります
ansibleでハマった
2016-09-11
ansible初期にハマったことまとめ
■そもそもansibleコマンドが動かない
ERROR! Unexpected Exception: name 'urllib2' is not defined
のようなエラーが出てansibleコマンドが打てないとき
→ansibleできない問題はpython2にすることであっさり解決
(ansible_work) ~/ansible_work $ pyenv versions system 2.7.5 2.7.6 2.7.8 2.7.8/envs/ansible_work 3.5.0 3.5.1 3.5.1/envs/pyenv-virtualenv1 * ansible_work (set by ${HOME}/ansible_work/.python-version) pyenv-virtualenv1 (ansible_work) ~/ansible_work $
2.7.5
2.7.6
はダメで、2.7.8はOKでした
■sshできない
以下リンクを参考にしつつ進めましたが、sshできない。
(ansible_work) ~/ansible_work/centos $ cat hosts [vagrant] 192.168.111.222
(ansible_work) ~/ansible_work/centos $ ansible -m ping -i hosts vagrant -vvv 192.168.111.222 | UNREACHABLE! => { "changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true } (ansible_work) ~/ansible_work/centos $
→鍵交換とhostsへの記述で無事解決
鍵交換方式によるssh接続
ansibleでLinuxユーザーの作成と鍵認証を設定する
(ansible_work) ~/ansible_work/centos $ cat hosts [vagrant] 192.168.111.222 [all:vars] ansible_ssh_user=vagrant ansible_ssh_private_key_file=~/.ssh/id_rsa (ansible_work) ~/ansible_work/centos $
(ansible_work) ~/ansible_work/centos $ ansible -m ping -i hosts vagrant 192.168.111.222 | SUCCESS => { "changed": false, "ping": "pong" } (ansible_work) ~/ansible_work/centos $
これでなんとかansibleを始められますー