ansible
環境 [#bf71ef7e]
-MacOS X 10.10 -Ansible 1.8(※書きが2.0.0)
書き方基本 [#c0e08f89]
- hosts: test-svr <-- インベントリファイル(hosts)に記述した対象グループ or ALLで全部カンマ区切りで複数もOK
remote_user: hogeuser <-- SSHログインするユーザー名を指定
su: True <-- su で実行する場合
su_user: root <-- rootを明示的に記述
vars:
HOGE01: hogehoge <-- $HOGE01,${HOGE01},{{ HOGE01 }}といった形式で変数として使用可能
tasks:
- name: yum update ntp
yum: name=ntp state=latest
- name: touch file
action: touch /tmp/test-20150129.txt <--サーバー上で実行するコマンド
※2.0.0
su,sudoの書き方が非推奨になり、become,become_userとなっています。
実行 [#qd23e247]
# ansible-playbook -i hosts.test playbook.yml -k --ask-su-pass
※ -k で一般ユーザーのパスワードを入力
※ --ask-su-passでrootのパスワードを入力
SSH password:
su password:
PLAY [test-svr] ***************************************************************
GATHERING FACTS ***************************************************************
ok: [192.168.99.3]
TASK: [yum update ntp] ********************************************************
ok: [192.168.99.3]
PLAY RECAP ********************************************************************
192.168.99.3 : ok=2 changed=0 unreachable=0 failed=0
チェック [#ca13fb57]
ansible-playbook --syntax-check playbook.yml
エラーがでなければOK
注意 [#d75518a0]
:の後は半角スペースをいれること。いれないとSyntax errorとなる。