ansible角色 role

ansible中角色的介绍

一个角色本质上就是目录

在一个剧本中需要执行多项操作,还需要让操作执行明白,就需要配置相应的角色。

在创建好角色之后,会自动在角色目录下创建好很多子目录。

如上图所示,这就是创建了一个lnmp的角色。

如上图所示,是创建好角色之后出现的子目录,可以将对应角色的普通任务写在tasks目录里。

可以将对应角色的变量写在vars目录下的main.yml文件里。

可以将jinja模板写在templates目录里。

在files目录下可以存放对应的普通文件。

在handlers目录下可以写对应的handlers操作。

在defaults目录下的main.yml文件用来定义一些默认参数。

tests目录下有一个test.yml文件,这个文件里面可以写一些测试的任务。

在同一个角色里面写操作的时候,这些操作可能会涉及到相互引用。比如说在copy模块中是不需要去写源文件的路径的,ansible软件会自动在角色目录中去寻找对应的源文件。

在同一个角色中,相互引用文件,操作时,不需要添加任何路径。【如果加,反而就出错了。】

案例:部署zabbix agent的剧本

1.zabbix仓库

2.安装软件

3.改配置文件

4.启动zabbix

当我们在工作的时候,如果有一批机器用不到了,关机了。那么必须要在zabbix对这些机器进行禁用,不然过一段时间之后,数据库的负载会非常重。

如上图所示,首先创建对应的用户。

如上图所示,在角色目录下的files目录下准备对应的repo源文件。

如上图所示,我们还需要zabbix配置文件的jinja模板文件。

如上图所示,使用

如上图所示,这是对zabbix角色创建对应的tasks任务。

如上图所示,这是设置当任务执行成功,配置文件发生change=true的时候,发生的操作。

执行角色

如上图所示,这是编辑对应的剧本文件,直接运行ansible-playbook /opt/playbook/installZabbixAgent.yml

就可以直接运行这个角色对应的剧本。

相关推荐
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
henry1010107 天前
Ansible自动化运维全攻略(AI生成)
linux·运维·python·ansible·devops
only_Klein11 天前
Ansible变量详解
运维·自动化·ansible
only_Klein11 天前
Ansible Roles 详解
自动化·ansible·role
only_Klein11 天前
Ansible 条件判断与流程控制详解
自动化·ansible
axPpcfNN12 天前
可直接编译运行 c#解析dxf可读取圆直线弧多段线源码-无封装缩放拖拽 可读取坐标信息 支持多...
ansible
Maggie_ssss_supp13 天前
Linux-ansible自动化运维
运维·自动化·ansible
迎仔13 天前
10-算力中心运维三剑客:Ansible + Jenkins + K8s 高效实战
运维·kubernetes·ansible·jenkins
识途老码15 天前
25.ansible的hostname模块
ansible·hostname
Cloud Traveler18 天前
Ansible+cpolar:NAS 远程自动化运维方案
ansible