インストール〜基本操作

Ansible をインストール

まずは Ansible をインストールしましょう。 Ansible 2.0 をインストールするため、pip を使ってインストールします。

なお、Ansible の実行には python が必要ですが、今回構築した実行環境には既にインストールされているため、インストール作業は不要です。

[vagrant]$ sudo yum install gcc python-devel -y
[vagrant]$ curl https://bootstrap.pypa.io/ez_setup.py -o - | sudo python
[vagrant]$ curl https://bootstrap.pypa.io/get-pip.py -o - | sudo python
[vagrant]$ sudo pip install ansible

ansible --version を実行し、2.0 がインストールされていることを確認してください。

[vagrant]$ ansible --version
ansible 2.0.0.2
  config file =
  configured module search path = Default w/o overrides

inventory ファイルを作成する

Ansible の実行対象サーバーを定義した inventory ファイルを作成します。 inventory ファイルは ini 形式で作成します。

/etc/ansible/hosts に作成すると、実行時に自動的に読み込まれるのでそちらに作成しましょう。

[vagrant]$ sudo mkdir -p /etc/ansible
[vagrant]$ sudo vi /etc/ansible/hosts

ファイルの中身には、事前に配布された EC2 インスタンスのパブリック IP アドレスを記載します。

xx.xx.xx.xx

ansible コマンド

ansible コマンドを使って、簡単なシェルをサーバー上で実行してみましょう。

[vagrant]$ ansible all -m command -a "uptime" -u ec2-user --private-key machiiro-tools.pem
xx.xx.xx.xx | SUCCESS | rc=0 >>
 07:41:19 up 34 min,  1 user,  load average: 0.00, 0.01, 0.05
  • all を指定したことで、inventory ファイルに記載された全サーバーが対象となります

    • all の代わりに IP アドレスを指定すると、対象サーバーのみに対して実行されます
  • -m でモジュールを指定します。詳細は別章で説明します

  • -a で実行シェルを指定します
  • -u で実行ユーザーを指定します
  • --private-key で SSH 秘密鍵を指定します

ansible.cfg ファイルを作成する

毎回 --private-key を指定するのは煩雑なので、Ansible 設定ファイル ansible.cfg を作成しましょう。

[vagrant]$ sudo vi /etc/ansible/ansible.cfg
[defaults]
private_key_file=./machiiro-tools.pem

--private-key を指定せずに、ansible-playbook が実行可能なことを確認してください。

[vagrant]$ ansible all -m command -a "uptime" -u ec2-user
xx.xx.xx.xx | SUCCESS | rc=0 >>
 07:41:19 up 34 min,  1 user,  load average: 0.00, 0.01, 0.05

ansible.cfg には他にも様々な設定項目があります。 http://docs.ansible.com/ansible/intro_configuration.html

results matching ""

    No results matching ""