Ansible チュートリアルをやってみた

プロビジョニングツールとしてChefをかじっていたけど,自分が使う分にはもっと簡単なものがいいなという理由でAnsibleを覚えることにした.

 

以下のサイトで日本語でチュートリアルが載っていたので試してみた.

Ansible チュートリアル | Ansible Tutorial in Japanese

 

が,エラーがいくつか出てきたので解決法のメモを残す.

 

1. vagrant upで Authentication failure. Retrying...が繰り返し出てエラーになる.

これは公開鍵ログインに失敗しているため.

最初に疑ったのは公開鍵と秘密鍵の不一致である.

$ vagrant ssh-config

で表示される中のIdentityFileに秘密鍵のパスが記載されている.

$ ssh-keygen -yf 秘密鍵のパス

とすると,その秘密鍵に対応する公開鍵が表示される.

この公開鍵が,ゲストOS側で/home/vagrant/.ssh/authorized_keysに記載されているかを確認する.

今回のケースは秘密鍵と公開鍵は一致していた.

実際の原因はauthorized_keysのパーミションが664だったためであった.

$ chmod 600 ~/.ssh/authorized_keys

パーミションを適切に設定したところ,公開鍵によるSSHログインが可能となった.

 

2. Ansibleのインストールに失敗する

pip のバージョンが古いのが原因だった.

$ sudo /opt/python-2.7/bin/pip install --upgrade pip

$ sudo /opt/python-2.7/bin/pip install ansible

で解決した.