weblog of key_amb

主にIT関連の技術メモ

Ansible チュートリアル by Vagrant の環境構築時のトラブルシュート

Ansible チュートリアル | Ansible Tutorial in Japanese を参考に Vagrant で Ansible する環境を構築していたときにハマったことのメモ。

いろいろ足りない、xbuild 動かず

結論から言うと xbuild は動かなかったので諦めました。 素の OpsCode の CentOS 6 の VM だといろいろ入ってないようで、下記を入れる必要がありました。

sudo yum install git
sudo yum install gcc
sudo yum install patch

readline, zlib は入っていたか、この過程のどっかで入ったのですが、ないと怒られるので xbuild は諦めました。

easy_setup, pip

次に、公式ドキュメントのインストールガイド(http://docs.ansible.com/intro_installation.html )を参考にしました。

まず easy_setup, pip がなかったので、入れました。

wget http://peak.telecommunity.com/dist/ez_setup.py
sudo python ez_setup.py
sudo easy_install pip

pip で必要な python パッケージをインストール

UnicodeDecodeError

いくつかのパッケージをインストールするとき、これが出て失敗しました。 対処法は [Trac]Trac0.11.2.1.ja1でUnicodeDecodeErrorへの対応方法 | Ryuzee.com を参考にしました。

以下の内容で /usr/lib/python2.6/site-packages/sitecustomize.py を作成しました。

import sys
sys.setdefaultencoding("utf-8")

Python.h がない

いくつかのパッケージをインストールしている際に、pipでインストール中にエラー「Python.h: そのようなファイルやディレクトリはありません」 - 座敷牢日誌 に書いてあるのと全く同じエラーが出ました。

上の記事は Mint でしたが、ここでは CentOS なので下記で対処しました。

sudo yum install python-devel

パッケージが足りない

上述の公式ドキュメントに従って、下記をインストールしました。

sudo pip install paramiko PyYAML jinja2 httplib2

が、paramiko を動かすのに依存パッケージが不足していたようです。 下記を実行するとエラーが出ました。

python
>>> import paramiko

ぐぐりながら、足りなかった以下をインストールしました。

sudo pip install pycrypto ecdsa

ansible インストール

これでようやく Ansible を動かす準備が整いました。 この後は公式ドキュメントに従って最新のソースコードで動かしてもいいし、下記で pip でインストールしても動きました。

sudo pip install ansible

その他参考記事