当前位置: 首页 > 知识库问答 >
问题:

Ansible剧本与角色

濮阳唯
2023-03-14

根据Ansible的文档,一个剧本是:

...一个非常简单的配置管理和多机部署系统的基础,不像任何已经存在的系统,并且非常适合部署复杂的应用程序。

同样,根据这些文档,一个角色是:

[databases]
mydb01.example.org
mydb02.example.org

[mail_servers]
mymail01.example.org
mymail_dr.example.org

如果有人能给我解释这些差异,我对Ansible的理解将会大大提高!

  • 剧本vs角色vs[数据库]以及/etc/ansible/hosts
  • 中的类似条目
  • 如果剧本是在YAML文件中定义的,那么角色在哪里定义?
  • 除了Ansible服务器上的Ansible.cfg之外,如何使用可用的剧本/角色添加/配置Ansible?例如,当我运行ansible-playbook someplaybook.yaml时,Ansible如何知道在哪里可以找到该playbook?

共有1个答案

闽鸿宝
2023-03-14

Playbook vs Role vs[数据库]以及/etc/ansible/hosts中的类似条目

[databases]是一组主机的单一名称。它允许您通过一个名称引用多个主机。

Role是一组任务和其他文件,用于配置主机为某个角色服务。

    null
---
- hosts: webservers <- this group of hosts defined in /etc/ansible/hosts, databases and mail_servers in example from your question
  roles: <- this is list of roles to assign to these hosts
     - common
     - webservers
    null

最重要的文件是roles/x/tasks/main.yml,这里定义了在执行role时将执行的任务。

除了Ansible.cfg存在于Ansible服务器上,我如何添加/配置Ansible与可用的剧本/角色?例如,当我运行ansible-playbook someplaybook.yaml时,Ansible如何知道在哪里可以找到该Playbook?

$ ansible-playbook someplaybook.yaml

将在当前目录中寻找一个剧本。

$ ansible-playbook somedir/somedir/someplaybook.yaml
 类似资料:
  • 我们正试图为我们的船员设计一个Ansible系统。 我们有一些开放的问题,让我们停下来思考,也许会听到其他的想法。 具体内容: null null 我们像这样调用Ansible: null 提前感谢!

  • 本文向大家介绍ansible 与Ansible Galaxy共享角色,包括了ansible 与Ansible Galaxy共享角色的使用技巧和注意事项,需要的朋友参考一下 示例 还可以轻松地与社区共享角色,或通过Ansible Galaxy下载由社区其他成员创建的角色。 Ansible附带了一个名为的命令行工具ansible-galaxy,可用于在ansible.cfg文件中定义的角色目录中安装角

  • 本文向大家介绍python ansible服务及剧本编写,包括了python ansible服务及剧本编写的使用技巧和注意事项,需要的朋友参考一下 第1章 ansible软件概念说明 python语言是运维人员必会的语言,而ansible是一个基于Python开发的自动化运维工具 (saltstack)。其功能实现基于SSH远程连接服务;ansible可以实现批量系统配置、批量软件部署、批量文件拷

  • 问题内容: 我有以下两项艰巨的任务 用于获取计算机(Linux)中的接口列表并获取每个接口的总线地址。我在同一本剧本中还有另外一项任务,如下 我希望对var2的值进行迭代,然后打印总线号。 var2.results如下 我的目标是获取上述每个项目中stdout的值,例如(“ stdout”:“ 09:00.0”)。我试图给像 但这不能正确提供标准输出中的总线值。当第二个变量是and indexed

  • 在Ansible项目中有一个大师剧本有什么意义?Ansible最佳实践描述的项目布局如下所示: 但是,既然您的webserver或dbserver剧本很可能会指定“hosts:webservers”或“host:dbservers”来指示目录文件中的这些组,那么为什么不运行这些命令呢? 有一个网站。YML大师剧本给你买了什么? 谢了。

  • 本文向大家介绍ansible 使用角色,包括了ansible 使用角色的使用技巧和注意事项,需要的朋友参考一下 示例 Ansible使用角色的概念来更好地允许模块化代码并避免重复自己。 角色只是Ansible知道从何处加载vars文件,任务和处理程序的文件夹结构。一个例子可能看起来像这样: 然后,您可以将该角色用于基本的剧本,如下所示: 针对此剧本运行Ansible时,它将针对组中的所有主机并针对