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

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

相关推荐
孪生质数-10 天前
Ansible基础入门
服务器·自动化·ansible·openstack
Empty_77710 天前
Ansible变量
服务器·github·ansible
哲Zheᗜe༘10 天前
学习Ansible Playbook 核心语法
网络·学习·ansible
凤凰战士芭比Q11 天前
Ansible剧本、变量、判断、循环
ansible
凤凰战士芭比Q11 天前
Ansible(安装、配置文件、命令行、常用模块)
linux·ansible
早睡冠军候选人15 天前
Ansible学习----管理复杂的 Play 和 Playbook 内容
运维·学习·云原生·ansible
雨奔15 天前
ansible使用教程
ansible
凡间客16 天前
Ansible安装与入门
linux·运维·ansible
LoneEon16 天前
告别手动操作:用 Ansible 统一管理你的 Ubuntu 服务器集群
运维·服务器·ansible
Empty_77716 天前
Ansible之Playbook简单应用
网络·ansible