ansible的roles--04

1. 为什么使用roles

  1. 目录结构不够规范
  2. 编写好的任务如何重复调用
  3. 服务端配置文件改动,客户端参数信息也自动变化
  4. 汇总剧本中没有显示主机角色信息
  5. 一个剧本内容信息过多,不容易进行阅读,如何进行拆分

2. roles的使用

在安装ansible后,会有/etc/ansible/roles这个目录

2.1 规范目录

规范目录结构

cd /etc/ansible/roles

创建相应的角色目录

mkdir nfs

子目录

mkdir nfs/{vars,tasks,templates,handlers,files}

tree

2.2 在roles目录中创相关文件

编写tasks目录中的main.yml文件

- name: 01-copy conf file
  copy: src=exports dest=/etc
  notify: restart nfs server
- name: 02-create data dir
  file: path={{ Data_dir }} state=directory owner=nfsnobody group=nfsnobody   
- name: 03-boot server
  service: name={{ item }} state=started enabled=yes
  with_items:
     - rpcbind
     - nfs

也可以每个功能单独的创建一个剧本,在进行整合

vim main.yml
	- include_tasks: copy_info.yml
	- include_tasks: create_dir.yml
	- include_tasks: boot_server.yml
	
    vim copy_info.yml 	
	- name: 01-copy conf file
      copy: src=exports dest=/etc
      notify: restart nfs server

    vim create_dir.yml
    - name: 02-create data dir
      file: path={{ Data_dir }} state=directory owner=nfsnobody group=nfsnobody 

    vim boot_server.yml
    - name: 03-boot server
      service: name={{ item }} state=started enabled=yes
      with_items:
        - rpcbind
        - nfs	

编写vars目录中的main.yml

Data_dir: /data

编写files目录中的文件

 -rw-r--r-- 1 root root 29 May 17 15:23 exports

编写handlers目录中的main.yml文件

vim main.yml

- name: restart nfs server
  service: name=nfs state=restarted

目录中文件编写好汇总结构

 .
    ├── files
    │   └── exports
    ├── handlers
    │   └── main.yml
    ├── tasks
    │   └── main.yml
    ├── templates
    └── vars
        └── main.yml
		

2.3 编写一个主剧本文件

在roles目录下

vim site.yml

编辑:

- hosts: nfs_server
  roles:
    - nfs-server
    
- hosts: rsync_server
  roles:
    - nfs-client

说明:hosts是配置的主机清单,roles 是roles下的目录,这里只是演示,没有创建nfs的client的roles ,可以自己根据步骤进行配置

2.4 template模块的说明

这里加入你使用了模板文件,那么在进行剧本编写的时候 就需要使用tempalte模块

template: src=  dest= 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长安有故里y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值