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

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

相关推荐
悠悠121381 小时前
Jenkins + Ansible 集成实战:把配置管理焊进流水线里
运维·ansible·jenkins
JiaWen技术圈2 小时前
IaC 双引擎:Terraform + Ansible 完整最佳实践
云原生·ansible·terraform
虎头金猫1 天前
管理飞牛OS还在点点点?我用Ansible给它装了个远程遥控器
微信·开源·ansible·aigc·智能家居·开源软件·ai编程
汪汪大队u1 天前
基于 K8s 的物联网平台运维体系:Ansible+Zabbix 自动化监控与故障自愈(三)—— Zabbix Server 启动排错记
运维·kubernetes·ansible
淼淼爱喝水1 天前
Ansible 变量管理实验
ansible·自动化运维
终端行者2 天前
Jenkins Pipeline 企业级用法 参数化构建+Ansible发布---上
docker·ansible·jenkins·cicd
淼淼爱喝水2 天前
【Ansible 入门实战】三种变量详解
java·linux·数据库·ansible·playbook
http阿拉丁神猫3 天前
ansible脚本解读
服务器·ansible·apache
汪汪大队u5 天前
基于 K8s 的物联网平台运维体系:Ansible+Zabbix 自动化监控与故障自愈(一)—— 环境准备与 Zabbix Server 部署
运维·kubernetes·自动化·ansible·zabbix
IT大白鼠8 天前
Ansible vs 运维智能体:自动化工具的优劣对比与适用场景分析
运维·自动化·ansible