1. installation

  • server

    yum install ansible
  • client

    yum install python-jinja2 python-paramiko python-yaml

2. configuration

# vi /etc/ansible/hosts
///
[gpfs]
srv121
srv122

3. ping

# ansible gpfs -m ping
srv121 | success >> {
    "changed": false,
    "ping": "pong"
}

srv122 | success >> {
    "changed": false,
    "ping": "pong"
}

4. command

# ansible gpfs -m command -a 'hostname'
srv122 | success | rc=0 >>
srv122

srv121 | success | rc=0 >>
srv121
# ansible gpfs -m command -a 'yum -y -d0 install nmap'
srv121 | success | rc=0 >>


srv122 | success | rc=0 >>

5. file tranfer

# ansible gpfs -m copy -a "src=/tmp/resolv.conf dest=/etc/resolv.conf"
srv121 | success >> {
    "changed": false,
    "gid": 0,
    "group": "root",
    "mode": "0664",
    "owner": "root",
    "path": "/etc/resolv.conf",
    "size": 96,
    "state": "file",
    "uid": 0
}

srv122 | success >> {
    "changed": false,
    "gid": 0,
    "group": "root",
    "mode": "0664",
    "owner": "root",
    "path": "/etc/resolv.conf",
    "size": 96,
    "state": "file",
    "uid": 0
}

6. yum

# ansible gpfs -m yum -a "name=httpd state=installed"

7. service

# ansible gpfs -m service -a "name=httpd state=started"
srv122 | success >> {
    "changed": true,
    "name": "httpd",
    "state": "started"
}

srv121 | success >> {
    "changed": true,
    "name": "httpd",
    "state": "started"
}

8. web based management

# yum install ansible mod_ssl
# touch /etc/sysconfig/iptables
# wget http://ansibleworks.com/releases/awx/setup/awx-setup-1.3.0.tar.gz
# tar xzf awx-setup-1.3.0.tar.gz
# cd awx-setup-1.3.0/
# cube group_vars/all 'admin_password: password' with 'admin_password: Passw0rd'
# cube group_vars/all 'pg_password: AWsecret' with 'pg_password: Passw0rd'
# ./setup.sh
# cube /etc/httpd/conf.d/awx.conf 'LoadModule ssl_module' with '#LoadModule ssl_module'
# service httpd restart