ansible--描述角色结构

本文详细介绍了Ansible角色的构造,强调了其在代码复用和管理大型项目中的优势。角色可以分组内容,便于共享和并行开发。文章还列举了角色的标准目录结构,包括defaults、files、handlers、meta、tasks、templates、tests和vars等子目录的功能,并提及了预任务(pre_tasks)、后任务(post_tasks)的执行顺序以及如何通过include_role和import_role模块包含角色。
摘要由CSDN通过智能技术生成

描述角色结构


1.利用角色构造ansible playbook

角色(roles)是指某一段写好的通用的playbook代码。

  • 通用简单角色:所有的角色,不管在哪里做都是一样的,不会发生改变。

  • 不通用的用户数据、项目数据、业务数据,是针对不同用户,项目和业务的。

Ansible角色提供了一种方法,让用户能以通用的方式更加轻松地重复利用Ansible代码。我们可以在标准化目录结构中打包所有任务、变量、文件、模板,以及调配基础架构或部署应用所需的其他资源。只需通过复制相关的目录,将角色从一个项目复制到另一个项目。然后,只需从一个play调用该角色就能执行它。

Ansible角色具有下列优点:

  • 角色可以分组内容,从而与他人轻松共享代码
  • 可以编写角色来定义系统类型的基本要素:Web服务器、数据库服务器、Git存储库,或满足其他用途
  • 角色使得较大型项目更容易管理
  • 角色可以由不同的管理员并行开发

注意:除了自行编写、使用、重用和共享角色外,还可以从其他来源获取角色。

​ 一些角色已包含在rhel-system-roles软件包中,用户也可以从Ansible Galaxy网站获取由社区提供支持的许多角色。

安装rhel-system-roles,就会出现写好的角色
[root@ansible ~]# ls /usr/share/ansible/roles/
[root@ansible ~]# dnf -y -q install rhel-system-roles 
[root@ansible ~]# ls /usr/share/ansible/roles/
linux-system-roles.kdump     rhel-system-roles.kdump        //系统崩溃时用来转储内存运行参数的服务
linux-system-roles.network   rhel-system-roles.network      //网络
linux-system-roles.postfix   rhel-system-roles.postfix      //服务
linux-system-roles.selinux   rhel-system-roles.selinux      //Linux内核模块,一个安全子系统。
linux-system-roles.storage   rhel-system-roles.storage      //存储
linux-system-roles.timesync  rhel-system-roles.timesync     //时间

2.检查ansible角色结构

Ansible角色由子目录和文件的标准化结构定义。顶级目录定义角色本身的名称。

文件整理到子目录中,子目录按照各个文件在角色中的用途进行命名。

创建新的环境目录
[root@ansible roles]# pwd
/root/test/roles
[root@ansible roles]# ansible-galaxy init my_role
- Role my_role was created successfully      //我的角色被成功地塑造了
[root@ansible roles]# ll my_role/
total 4
drwxr-xr-x 2 root root   22 Sep 15 23:39 defaults
drwxr-xr-x 2 root root    6 Sep 15 23:39 files
drwxr-xr-x 2 root root   22 Sep 15 23:39 handlers
drwxr-xr-x 2 root root   22 Sep 15 23:39 meta
-rw-r--r-- 1 root root 1328 Sep 15 23:39 README.md
drwxr-xr-x 2 root root   22 Sep 15 23:39 tasks
drwxr-xr-x 2 root root    6 Sep 15 23:39 templates
drwxr-xr-x 2 root root   39 Sep 15 23:39 tests
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值