Ansible06-管理roles

目录

一、roles的结构

二、RHEL系统roles

三、创建角色

四、部署角色


随着 playbook 的增多,有很多代码重用的机会。ansible 提供了一种方式——roles,只需将 roles 从一个项目复制到另一个项目,然后用 play 调用即可实现代码重用。这里的 roles 不是权限角色,应该认为是模板、框架。使用 ansible  roles 可以更快地开发 playbook ,方便并行开发,方便大型项目管理。

一、roles的结构

目录结构

[student@workstation roles]$ ansible-galaxy init apache
- Role apache was created successfully
[student@workstation roles]$ ll
total 0
drwxrwxr-x. 10 student student 154 Sep  1 22:28 apache
[student@workstation roles]$ tree apache/
apache/
├── defaults
│   └── main.yml
├── files
├── handlers
│   └── main.yml
├── meta
│   └── main.yml
├── README.md
├── tasks
│   └── main.yml
├── templates
├── tests
│   ├── inventory
│   └── test.yml
└── vars
    └── main.yml
  • defaults,该目录下的 main.yml 包含角色变量的默认值,使用角色时可以覆盖这些默认值。这些变量优先级较低,应该在 play 中修改或自定义。比如一个 roles 是部署 mysql 数据库的,那么数据库名就应该自定义。
  • files,该目录包含角色任务引用的静态文件。
  • handlers,该目录下的 main.yml 文件包含角色的处理程序定义。
  • meta,该目录下的 main.yml 文件包含与角色相关的信息,比如作者、许可、平台、依赖项等。
  • tasks,该目录下的 main.yml 文件包含角色的任务定义。
  • templates,该目录包含角色引用的 jinja2 模板。
  • tests,该目录包含清单和 test.yml  playbook,可用于测试角色。
  • yars,该目录下的 main.yml 文件定义角色的变量值,通常用于角色内部用途。这些变量的优先级较高,在 playbook 中使用时也不应篡改。

二、RHEL系统roles

红帽自己有Ansible的roles,需要安装 rhel-system-roles 的包,角色都放在 /usr/share/ansible/roles 目录下面。

yum install rhel-system-roles

 这些系统 roles 模板可以 copy 出来再使用。在 roles 的目录里面都有 README 文件可以查看用法。

三、创建角色

ansible-galaxy init apache

四、部署角色

安装角色,先编写 role file 告诉一下角色在什么位置,安装后叫什么名字。

---
- src: http:// roles location
  name: roles name

- src: http:// roles location
  name: roles name 

再用 ansible-galaxy install 命令安装,-r 指定 role file 的位置, -p 指定安装的位置。 

ansible-galaxy install -r role_file.yml -p roles/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦行僧(csdn)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值