yoshiislandblog.net
元営業の駆け出しアラサーSEが、休日にMACと戯れた際の殴り書きメモ。日々勉強。日々進歩。

この記事は3年以上前に書かれた記事で内容が古い可能性があります

ansibleでハマった

2016-09-11

ansible初期にハマったことまとめ

■そもそもansibleコマンドが動かない

ERROR! Unexpected Exception: name 'urllib2' is not defined

のようなエラーが出てansibleコマンドが打てないとき

→ansibleできない問題はpython2にすることであっさり解決

Installation

(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できない。

使ってないVagrant Boxを削除する

Vagrantを使って仮想OSを簡単に作成しよう

Ansible コトハジメ

(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を始められますー