dfsgwe 发表于 2016-4-8 14:16:04

ansible playbook介绍

Ansible playbook的使用,类似shell

相当于把模块写入到配置文件里面,例:
cd /etc/ansible/
vim /etc/ansible/test.yml   配置文件以yml结尾
---                        #固定写法,不写其实也没错
- hosts: client.wyp.com      #-空格也是固定写法
remote_user: root
tasks:
    - name: test_playbook
      shell: touch /tmp/lishiming.txt
说明: hosts参数指定了对哪些主机进行参作;
user参数指定了使用什么用户登录远程主机操作;
tasks指定了一个任务,其下面的name参数同样是对任务的描述,在执行过程中会打印出来。
执行:ansible-playbook test.yml


再来一个创建用户的例子:
vim /etc/ansible/create_user.yml
---
- name: create_user      #描述信息,可以不加
hosts: client.wyp.com#定义操作的客户端
user: root             #同remote_user: root,可以简写为user:
gather_facts: false    #收集客户端机器的相关信息,用不到可不写
vars:                  #定义一个变量
    - user: "test"
tasks:
    - name: create user
      user: name="{{ user }}"   #{{}}来引用变量,同shell中的$

说明: name参数对该playbook实现的功能做一个概述,后面执行过程中,会打印 name变量的值 ,可以省略;gather_facts参数指定了在以下任务部分执行前,是否先执行setup模块获取主机相关信息,这在后面的task会使用到setup获取的信息时用到;vars参数,指定了变量,这里指字一个user变量,其值为test ,需要注意的是,变量值一定要用引号引住;user指定了调用user模块,name是user模块里的一个参数,而增加的用户名字调用了上面user变量的值。
命令结果为:客户机上创建一个名为test的用户

CO-OP 发表于 2016-4-9 01:13:02

学习学习

CO-OP 发表于 2016-4-9 22:45:06

学习方法
页: [1]
查看完整版本: ansible playbook介绍