playbook核心元素之 -- 角色role(9)
playbook核心元素之 --> 角色role
角色:
以特定的层级目录结构进行组织的tasks、variables、handlers、templates、files等;
role_name/
files/:存储由copy或script等模块调用的文件;
tasks/:此目录中至少应该有一个名为main.yml的文件,用于定义各task;
其它的文件需要由main.yml进行"包含"调用;
handlers/:此目录中至少应该有一个名为main.yml的文件,用于定义各handler;
其它的文件需要由main.yml进行"包含"调用;
vars/:此目录中至少应该有一个名为main.yml的文件,用于定义各variable;
其它的文件需要由main.yml进行“包含”调用;
templates/:存储由template模块调用的模板文本;
meta/:此目录中至少应该有一个名为main.yml的文件,定义当前角色的特殊设定及其依赖关
系;其它的文件需要由main.yml进行"包含"调用;
default/:此目录中至少应该有一个名为main.yml的文件,用于设定默认变量;
实例
[root@ansible roles]# pwd /etc/ansible/roles --> 配置文件中定义的默认路径 [root@ansible roles]# mkdir nginx [root@ansible roles]# tree nginx nginx ├── default ├── files ├── handlers │ └── main.yml ├── meta ├── tasks │ └── main.yml ├── templates │ └── nginx.conf.j2 └── vars└── main.yml
[root@ansible roles]# vim nginx/tasks/main.yml - name: install nginxyum: name=nginx state=presenttags: insngx - name: install conf filetemplate: src=nginx.conf.j2 dest=/etc/nginx/nginx.conftags: ngxconfnotify: reload nginx service - name: start nginx serviceservice: name=nginx enabled=true state=started
[root@ansible roles]# vim nginx/templates/nginx.conf.j2 //可以简单修改端口号测试 //在配置文件中引用一个变量
[root@ansible roles]# vim nginx/handlers/main.yml - name: reload nginx serviceservice: name=nginx state=restarted
[root@ansible roles]# vim nginx/vars/main.yml ngxport: "8090" --> 修改nginx监听的端口测试
编写playbook调用角色
[root@ansible roles]# vim nginx.yml --> 配置文件中定义的位置(/etc/ansible/ansible.cfg ) - hosts: centos7remote_user: rootroles:- nginx
测试
[root@ansible roles]# ansible-playbook nginx.yml
转载于:https://blog.51cto.com/sixijie123/1878106
playbook核心元素之 -- 角色role(9)相关推荐
- playbook核心元素之 模板template 介绍(7)
playbook核心元素之 --> 模板template 介绍 templates:文件文件,内部嵌套有模板语言脚本(使用模板语言编写) [root@ansible ~]# ansible-do ...
- Ansible Playbook核心元素以及组件
Playbook核心元素 Hosts 执行的远程主机列表 Tasks 任务集 Variables 内置变量或自定义变量在playbook中调用 Templates 模板,可替换模板文件中的变量并实现一 ...
- 三面向对象分析之UML核心元素之参与者
一:版型 --->在UML里有一个概念叫版型.有些书里也称类型,构造型. --->这个概念是对一个UML元素基础定义的扩展.在同一个元素基础定义的基础上赋予 ...
- ReactiveCocoa核心元素与信号流
ReactiveCocoa(以下简称"RAC")是一个函数响应式编程框架,它能让我们脱离Cocoa API的束缚,给我们提供另外一套编码的思路与可能性,它能在宏观层面上提升代码易读 ...
- 《大象:thinking in uml 》(第二版) 3章 UML核心元素 3节 用例
只供参考,喜欢请支持正版图书 3.3 用例 用例在UML建模中是最最重要的一个元素.之所以说它重要,是因为UML是面向对象的,除用例之外,所有其他元素都是"封装"的."独 ...
- 按钮角色 role=“button“
描述 按钮角色用于可点击元素,用户点击按钮来触发一些动作.按钮角色使用 `role="button"` 表示. <div id="saveChanges" ...
- UML::UML核心元素
我对UML的理解:软件工程的东西.(有点模糊,不是很懂.) 建模:个人理解--对现实的一种抽象,对现实的简化,模型比现实更好理解.即是抽象. UML核心元素: 版型(stereotype):版型也称类 ...
- 学习 UML 核心元素
按照描述事物的三种观点:结构(事物的客观存在).功能(事物可利用的价值).使用(对于使用者的意义)来描述<thinking in UML>中的核心元素. 1.版型: 结构:UML中的最基本 ...
- vuex四大核心元素
什么是vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 个人理解就是集中管 ...
最新文章
- 如何查看linux系统的体系结构
- jQuery formValidator表单验证插件4.1.0 下载 演示 文档 可换肤 代码生成器
- JSON.stringify()和JOSN.parse()
- javaScript数据类型(包括基本数据类型和非基本数据类型)
- 根据另外一个表来更新,增加字段
- Java回文数.如12321,123454321(5个数)
- 使用cronolog自动分割apache的日志。
- 2015年下半年的读书技术
- 使用IdleTest进行TDD单元测试驱动开发演练(3) 之 ASP.NET MVC
- 回归预测 | MATLAB实现GLM广义线性模型数据回归预测
- 计算机显示屏显示超出屏幕大小,电脑连接的显示器出错显示超出工作频率范围怎么恢复...
- 手机vnc远程控制软件,手机vnc远程控制软件如何配置
- 把妹需要勇敢,心有猛虎,细嗅蔷薇
- HugeGraph+scylla环境搭建
- 柠檬班培训1软件测试
- Windows DFS
- React-bootstrap 中文文档
- DDN | 时刻准备,马上出发!
- 边看chromium的代码边想骂人……
- Sqli-labs之Less-11和Less-12
热门文章
- php libev pthreads,libuv 与 libev 的对比
- 德富莱智能抹墙机器人_深圳智能制造应急生产联盟成立,大咖共探机器人行业新机遇...
- oracle 查看统计情报,Oracle 查看收集统计信息
- php自动到某个时间提醒,2周后,php脚本cron作业将提醒消息发送到特定的电子邮件地址...
- tcpdump 命令的个常用选项:三
- 6个超实用的Sudo命令使用技巧
- Firewalld共享上网及本地yum仓库搭建步骤
- 51单片机怎么学啊?有推荐的线上网课和书籍么?
- java appendchild_详解javascript appendChild()的完整功能
- java 删除数组指定元素_Java从在数组中删除指定元素