Ansible のインストール手順と簡単な playbook の実行方法をメモしておきます。
CentOS7
yum でインストールする
epel からインストール可能です。
yum -y install epel-release yum -y install ansible
2.1.2.0 がインストールされました。
# ansible --version ansible 2.1.2.0 config file = configured module search path = Default w/o overrides
pip でインストールする
yum -y install epel-release yum -y install --enablerepo=epel python-pip pip install --upgrade pip yum install -y gcc libcurl-devel libffi-devel openssl openssl-devel python-devel pip install ansible pip install --upgrade ansible
2.1.2.0 がインストールされました。
# ansible --version ansible 2.1.2.0 config file = /etc/ansible/ansible.cfg configured module search path = Default w/o overrides
Ubuntu 16.04
標準リポジトリからインストール可能です。
apt-get -y install ansible
2.0.0.2 がインストールされました。
# ansible --version ansible 2.0.0.2 config file = /etc/ansible/ansible.cfg configured module search path = Default w/o overrides
ansible-playbook の実行
ansible の実行元ホストから宛先ホスト(ターゲット)に対しては「sudo 可能な一般ユーザ」を使い、公開鍵方式で SSH ログイン出来るように設定されている前提です。
HOSTS
ansible の実行対象のアドレスを記載しておきます。
10.101.0.12
INSTALL.yml
実行する内容を記載しておきます。今回は yum で sysstat をインストールしてみます。
- hosts: all tasks: - name: install sysstat package. yum: name=sysstat
実行してみる(1 回目)
failed=0 なのでエラー無く完了しているのが分かります。また、changed=1 なので「1 箇所の変更」があったことが分かります。
$ ansible-playbook -s -i ./HOSTS INSTALL.yml PLAY [all] ********************************************************************* TASK [setup] ******************************************************************* ok: [10.101.0.12] TASK [install sysstat package.] ************************************************ changed: [10.101.0.12] PLAY RECAP ********************************************************************* 10.101.0.12 : ok=2 changed=1 unreachable=0 failed=0
実行してみる(2 回目)
再度、実行してみるとエラーにはなりませんが、changed=0 なので「変更はされなかった」のが分かります。
$ ansible-playbook -s -i ./HOSTS INSTALL.yml PLAY [all] ********************************************************************* TASK [setup] ******************************************************************* ok: [10.101.0.12] TASK [install sysstat package.] ************************************************ ok: [10.101.0.12] PLAY RECAP ********************************************************************* 10.101.0.12 : ok=2 changed=0 unreachable=0 failed=0