1:安装ansible配置环境变量
Ubuntu 编译版可在PPA中获得: <https://launchpad.net/~ansible/+archive/ansible>
_. 配置PPA及安装ansible,执行如下命令:
$ sudo apt-get install software-properties-common $ sudo apt-add-repository ppa:ansible/ansible $ sudo apt-get update $ sudo apt-get install ansible
也可从源码checkout中创建 Debian/Ubuntu 软件包,执行:
$ make deb
2:配置密钥
使用以下命令生成密钥并复制到指定主机
ssh-keygen ssh-copy-id -i $hostname
可以执行workplace/script/ip_append脚本来完成批量复制密钥到主机.
3:建立Inventory文件
ansible寻找主机的默认路径为/etc/ansible/hosts,当需要执行的主机文件不在这个路径时候需要在输入命令时候通知ansible,例如
ansible -i workplace/inventory phoenix -m ping
-i后方是主机清单文件所在的路径
单独执行某一机器时候可以输入
ansible $hostname -m ping
选择指定主机来执行操作 在编写inventory文件时候可以使用以下格式: [target] hostname@xx.xxx.x.[180:182] hostname@xx.xxx.x.[183:185] 可以使用与列表相似的格式来储存大量主机名. 同样在使用ansible调用主机时候也可以使用与列表类似的下标进行指定,例如target[0]就是执行hostname@xx.xxx.x.180,需要注意的是这个命令执行的是单一主机,而不是hostname@xx.xxx.x.[180:182]
4:ansible命令相关
ansible -i workplace/inventory phoenix -m shell -a 'java -version'
-i为选择主机文件存放的路径,当没有使用playbook时候需要注意在路径后面选择主机组 -m 为选择需要使用的模块,引号里面放需要执行的指令
ansible-playbook -i workplace/inventory workplace/gpv.yml
使用playbook时候不需要在选择主机组,因为playbook已经内置选择,需要注意playbook也需要指定路径并且使用的roles优先级:同级文件内的roles>ect/ansible/roles