Any Any

いつでもどこでも、何でもかんでも。

Ansibleを使ってみる

MacでAnsibleを使う

Macで使うとハマるという噂を聞いていたが、Macにインストールしてみる。

構成

Control Machine

  • Mac OSX (10.10)

Managed Node

環境構築

1. MacにAnsibleをインストール

公式の手順に従う。
特にハマることは無かった。(sudoにしないとPermission Deniedになるくらい。)

$ brew update
$ sudo brew install ansible  
$ ansible --version
ansible 1.7.2
2. vagrant up

適当に。
今回は、特にポートフォワーディング等の設定は不要。

3. ssh設定

下記の設定をしておくと、簡単に接続できる。
※この場合、hostsに指定するのは"centos"

$ vagrant ssh-config --host centos >> ~/.ssh/config

これで、vagrant sshと同じように、VMssh接続($ ssh centos)できるようになる。
参考:Mac OS XでVagrantとChefを使った環境構築のまとめ - Qiita

接続確認

hostsを作る

接続時のhostsファイルを作成。

$ echo "centos" > hosts
サンプル
$ ansible all -m ping -i hosts
centos | success >> {
    "changed": false, 
    "ping": "pong"
}
$ ansible all -i hosts -a "pwd"
centos | success | rc=0 >>
/home/vagrant

参考

ユーザ名とパスワードを使った方式でも動くはずだが、エラー。
the sshpass programが無く、別途インストールする必要が有る模様(未検証)。

$ ansible all -m ping -i hosts --ask-pass
SSH password: 
192.168.33.13 | FAILED => to use the 'ssh' connection type with passwords, you must install the sshpass program

参考:Ansible OS X Mavericks You Must Install the sshpass Program