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