Ansible中的角色使用(ansible roles)

news2024/11/17 8:41:42

文章目录

  • 一、ansible 角色简介
  • 二、roles目录结构
  • 三、role存放的路径:配置文件ansible.cfg中定义
  • 四、创建目录结构
  • 五、playbook中使用roles
    • playbook变量会覆盖roles中的定义变量
  • 六、控制任务执行顺序
  • 七、ansible—galaxy命令工具
  • 八、安装选择的角色
    • 1.从网上下载,安装网上角色:#install https://galaxy.ansible.com roles
    • 2.本地角色:#install local roles


一、ansible 角色简介

* Ansible roles 是为了层次化,结构化的组织Playbook
* roles就是通过分别将变量、文件、任务、模块及处理器放置于单独的目录中,并可以便捷地include它们
* roles一般用于基于主机构建服务的场景中,在企业复杂业务场景中应用的频率很高
* 以特定的层级目录结构进行组织的tasks、variables、handlers、templates、files等;相当于函数的调用把各个功能切割
成片段来执行。

二、roles目录结构

files              ##存放copy或script等模块调用的函数
tasks              ##定义各种task,要有main.yml,其他文件include包含调用
handlers           ##定义各种handlers,要有main.yml,其他文件include包含调用
vars               ##定义variables,要有main.yml,其他文件include包含调用
templates          ##存储由template模块调用的模板文本
meta               ##定义当前角色的特殊设定及其依赖关系要有main.yml的文件
defaults           ##要有main.yml的文件,用于设定默认变量
tests              ##用于测试角色

三、role存放的路径:配置文件ansible.cfg中定义

roles_path = path/roles (默认目录:/etc/ansible/roles)

在这里插入图片描述

四、创建目录结构

$ ansible-galaxy init apache
$ ansible-galaxy list

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、playbook中使用roles

playbook中使用roles:

---
- hosts: server2
  roles:
    - role: role1
    - role: role2
      var1: value1      ##此处变量会覆盖roles中的定义变量

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

playbook变量会覆盖roles中的定义变量

在这里插入图片描述

在这里插入图片描述

六、控制任务执行顺序

---
- hosts: server2
  roles:
    - role: role1    ##角色任务
  pre_tasks:         ##角色执行前执行的play
    - tasks1
  tasks:             ##普通任务
    - tasks2
  post_tasks:        ##在角色和普通任务执行完毕后执行的play
    - tasks3
 handlers:

在这里插入图片描述
在这里插入图片描述

七、ansible—galaxy命令工具

* Ansible Galaxy 是一个免费共享和下载 Ansible 角色的网站,可以帮助我们更好的定义和学习roles。
* ansible-galaxy命令默认与https://galaxy.ansible.com网站API通信,可以查找、下载各种社区开发的 Ansible 角色
* ansible-galaxy在 Ansible 1.4.2 就已经被包含了
* 在galaxy.ansible.com网站查询roles

八、安装选择的角色

#install https://galaxy.ansible.com roles
$ansible-galaxy install geerlingguy.nginx
#install local roles

$ vim install_apache_role.yml
---
- src: file:///mnt/apache.tar.gz
  name: apache
  
$ ansible-galaxy install -r install_apache_role.yml

1.从网上下载,安装网上角色:#install https://galaxy.ansible.com roles

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.本地角色:#install local roles

在这里插入图片描述
在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/353818.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023.2.17-博客记录

1.斐波那契数列的复杂度 参考于:斐波那契数列时间复杂度 运用到了递归思想 那么,推导:时间复杂度 f(n) f(n-1) f(n-2) 每一层都包含一个加法操作 例如n 8时,T(n) 2^0 2^1 2^2 2^3 2^4 2^5 2^6 2^7-1 O(n) 2^7-1 2…

四六级真题长难句分析与应用

一、基本结构的长难句 基本结构的长难句主要考点:断开和简化 什么是长难句? 其实就是多件事连在了一块,这时候句子就变长、变难了 分析步骤: 第一件事就是要把长难句给断开,把多件事断开成一件一件的事情&#xff0…

ElementUI`resetFields()`方法避坑

使用ElementUI中的resetFields()方法有哪些注意点 场景一 场景一:当编辑弹出框和新增弹出框共用时,编辑数据后关闭编辑弹出框时调用this.$refs.form.resetFields()无法清空弹出框 问题代码: // 点击新增按钮handleAdd() {this.dialogVi…

《Qt6开发及实例》6-3 双缓冲机制

目录 一、原理与设计 1.1 原理 1.2 设计 二、绘图区的实现 2.1 鼠标移动事件 2.2 重绘函数&调整大小函数&清除屏幕 三、主窗口的实现 3.1 代码 一、原理与设计 1.1 原理 双缓冲就是在绘制控件时,将内容绘制在一个图片中,再将图片一次性…

全局状态管理插件 Vuex 介绍及使用

文章目录Vuex 是什么简介Vuex 如何存储数据Vuex 核心概念单向数据流StateGetterMutationActionModuleVuex 使用实例总结Vuex 是什么 简介 官方解释:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以…

Linux环境下(CentOS 7)安装Java(JDK8)

Linux环境下(CentOS 7)安装Java(JDK8) 一、安装教程 1.1 首先,进入oracle官网下载jdk8的安装包,下载地址如下,这里以 jdk-8u121-linux-x64.tar.gz安装包为例。 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-21…

2023美赛(MCM/ICM)数据汇总

2023美赛已经开始了十二个小时了,对于本次比赛,赛题 难度都不大。主要就是收集数据的问题 ,为了更好地帮助大家选题,我们将 我们今天已经收集到的数据进行汇总,分享。其中,首先是A、E题目都提及的天气数据&…

C语言学习_DAY_4_判断语句if_else和分支语句switch_case【C语言学习笔记】

高质量博主,点个关注不迷路🌸🌸🌸! 目录 1.案例引入 2.if判断语句的语法与注意事项 3.switch多分支语句的语法与注意事项 前言: 书接上回,我们已经学习了所有的数据类型、运算符,并且可以书写…

基于matlab/simulink的风光柴储微电网仿真建模

模型是基于之前的风光储系统上增加一部分柴油发电机系统,后面文章我会单独介绍柴油机这一部分,主要应用在船舶电力系统,一般小型电网黑启动也会用到。 风光柴储微电网发电系统是一种小型发电系统,同时具备并网运行和孤岛运行的功能…

气敏电阻的原理,结构,分类及应用场景总结

🏡《总目录》 目录 1,概述2,结构3,工作原理4,分类4.1,加热方式分类4.2,材料分类4.3,氧化还原分类5,应用场景6,总结1,概述 气敏电阻是指电阻值随着环境中某种气体的浓度变化而变化的电阻,本文对其工作原理,结构,分类和应用场景进行总结。 2,结构 气敏电阻由防爆…

Leetcode(每日一题)——1237. 找出给定方程的正整数解

摘要 1237. 找出给定方程的正整数解 一、暴力求解 根据题目给出的x和y的取值范围,枚举所有的 x,y数对,保存满足f(x,y)z的数对,最后返回结果。 /*** description 使用的暴力法 直接遍历符合的就添加到结果中* param: customfunction* param…

能不能做好性能测试,要看你有没有性能测试思维

获取性能需求 01、用户数信息 1、调查系统当前和未来使用的用户数 系统用户数 本系统目前注册的用户数,注册用户数并不代表他会每天并且无时无刻的使用着。 在线用户数 同时在线对系统进行操作的用户数量(相当于混合场景) 并发用户数 …

第9天-商品服务(电商核心概念,属性分组开发及分类和品牌的级联更新)

1.电商核心概念 1.1.SPU与SKU SPU:Standard Product Unit(标准化产品单元) 是商品信息聚合的最小单位,是一组可复用、易检索的标准化信息的集合,该集合描述了一个 产品的特性。 决定商品属性的值 SKU:Stock…

第43天| 123.买卖股票的最佳时机III、 188.买卖股票的最佳时机IV

1.题目链接:123. 买卖股票的最佳时机 III 题目描述: 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意:你不能同时参与多笔交易&#…

基于深度神经网络的3D模型合成【Transformer vs. CNN】

本文介绍用于3D模型合成的transformer网络与深度卷积网络。 推荐:使用 NSDT场景设计器 快速搭建 3D场景。 1、概述 从单一视角合成 3D 数据是一种基本的人类视觉功能,这对计算机视觉算法来说极具挑战性,这是一个共识。 但在 3D 传感器&#…

Fedora Linux未来五年规划

Fedora 委员会一直致力于起草战略计划,以帮助 Fedora Linux 更好地发展。近日 Fedora 委员会公布了一份 “《未来五年的 Fedora Linux 》” 战略计划草案,这份草案里面包含了他们的雄心壮志:每周将 Fedora 的活跃贡献者人数增加一倍。 Fedora…

如何获取docpelx求解目标函数后的数据;在解决目标优化问题之后,如何获取相关数据;获取决策变量的具体数值

获取优化问题的自变量取值和目标函数取值 说明通过 mdl.integer_var() 定义的决策变量,获取求解值决策变量获取目标函数取值获取具体代码:通过 mdl.continuous_var_list() 定义的决策变量,获取求解值具体代码说明 本次的代码环境是 python中…

【WEB安全】SQL注入挖掘

文章目录前言一、sql注入的分类注入漏洞存在位置二、漏洞挖掘Google语法疑似注入点手工挖掘批量挖取此类漏洞已知sql注入漏洞挖掘总结免责声明:前言 2021年OWASP发布漏洞威胁榜单,SQL注入从第一名下降到第三(https://owasp.org/Top10/&#…

从0开始学python -34

Python3 输入和输出-2 读和写文件 open() 将会返回一个 file 对象,基本语法格式如下: open(filename, mode)filename:包含了你要访问的文件名称的字符串值。mode:决定了打开文件的模式:只读,写入,追加等。…

数据分析| Pandas200道练习题,使用Pandas连接MySQL数据库

文章目录使用Pandas连接数据库编码环境依赖包read_sql_query()的使用read_sql_table()的使用read_sql() 函数的使用to_sql()写入数据库的操作删除操作更新操作总结:使用Pandas连接数据库 通过pandas实现数据库的读,写操作时,首先需要进行数据…