超级简单的ansible-playbook 例子

ansible-playbook
1.拷贝文件:
[root@cet1 playbooks]# cat copytest.yml 
---
#copy file test
- hosts: test2                                                                                                                    
  tasks: 
  - name: copy file to client
    copy: src=/tmp/copy.file dest=/tmp owner=root group=root mode=0644                              ----owner group mode 可以不写没有关系 

[root@cet1 playbooks]# ansible-playbook copytest.yml 


PLAY [test2] ****************************************************************** 


GATHERING FACTS *************************************************************** 
ok: [192.168.100.79]


TASK: [copy file to client] *************************************************** 
changed: [192.168.100.79]


PLAY RECAP ******************************************************************** 
192.168.100.79             : ok=2    changed=1    unreachable=0    failed=0   
客户端(也可在服务端验证):
[root@localhost tmp]# ls -l
total 48
-rw-r--r--  1 root root   18 Mar 16 00:36 copy.file         -----存在文件

2.创建自己指定用户 加上了变量
  [root@cet1 playbooks]# cat createuser.yml 
---
#create user 
- name: create user
  hosts: dns 
  user: root
  vars: 
  tasks:
  - name: create {{ user }}
    user: name="{{ user }}"
 [root@cet1 playbooks]# ansible-playbook createuser.yml  --extra-vars "user=abc"


PLAY [create user] ************************************************************ 


GATHERING FACTS *************************************************************** 
ok: [192.168.100.79]


TASK: [create abc] ************************************************************ 
changed: [192.168.100.79]


PLAY RECAP ******************************************************************** 
192.168.100.79             : ok=2    changed=1    unreachable=0    failed=0  
服务端:
           [root@cet1 playbooks]# ansible dns -m shell -a "id abc"
192.168.100.79 | success | rc=0 >>
uid=501(abc) gid=501(abc) groups=501(abc)


3.服务是否开启:
[root@cet1 playbooks]# cat test.yml 
---
#This is a test file
- hosts: test_server
  vars:
    http_port: 80
    max_clients: 200
  remote_user: root
  tasks:
  - name: ensure apache is running
    service:
      name: httpd
      state: started
  handlers:
  - name: restart apache
    service:
       name: httpd
       state: restarted
                                               
 4.安装服务                        
 [root@cet1 test]# cat install_nginx.yml 
---
 - hosts: test2
   tasks:
    - name: copy files 
      copy: src=/tmp/nginx.repo dest=/etc/yum.repos.d
    - name: install nginx
      shell: yum install nginx -y
    - name: start nginx
      service:
         name: nginx
         state: started
   handlers: 
    service:
      name: nginx
      state: restarted
----------------------------------------------------------------缺少yum模块 我 只好把nginx的yum配置拷贝咯
可以YUM      安装 我少了包要装什么捏 = =                                       
[root@cet1 test]# cat /tmp/nginx.repo 
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1
=====================================================
PS : 那个对齐很重要 然后语法是树型 中间还出过该模块不是同一等级 = =                                                     
         

    

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30629069/viewspace-2058244/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30629069/viewspace-2058244/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值