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

是否有充分的理由拥有多个Ansible库存(对于所有主机超过一个库存)?

万开畅
2023-03-14
ansible\
  inventory\
    dbservers
    logservers
    webservers
  host_vars\
  roles\

例如,这使得在所有DB服务器或所有web服务器上运行playbook变得很容易,但我现在意识到,我也可以通过使用主机组来实现这一点(反正我已经有了)。

我现在遇到的一个问题是,我想在一个目录中列出主机,同时在另一个目录上运行playbook。例如,dbservers可能有一个防火墙规则来允许从webservers进行访问,并且我希望执行查找('inventory_hostnames'、'webservers')-但是当“webservers”目录中定义了“webservers”组,并且我使用-I inventory/dbservers运行时,这就不起作用了。另一个问题是,除了角色之外的主机组,例如服务器的物理位置,在文件之间是重复的。

为了解决这个问题,我很想把所有东西都放到一个库存中。这样做有什么坏处吗?

共有1个答案

西门安歌
2023-03-14

每一种解决方案都有其利弊。

当然,如果您有2个dbservers、1个log和3个webserver,那么在一个文件中声明所有6个是可以的。
但是,当您管理更大的系统时,您可能有100s的服务器。在这种情况下,将它们分开更有利,也更不容易出错。

所以,如果问题是哪种方式更好,那么就没有答案了。每个人都有自己的偏好。
如果问题是在一个文件中声明所有服务器是否不好。那么答案是否定的。只要你保持有条理,而且情况很适合你。

 类似资料:
  • 问题内容: 我正在寻找一个表示分数(有理数)的Java库。例如,如果我要存储分数,那么它将不会被保存,因为它将失去其准确性。 这是我希望在此类库中找到的一些功能: ,,, 尽管我想知道是否已经存在类似的东西,但我可以自己实现这样的库。 编辑: 如果该库还实现(除上述之外)某些数论算法(如等等),那也很好。 问题答案: 该库包括该类。在另外的通常的工厂,存取和操作,可以构建其他有用的实体,包括,和。

  • 我对Android的开发还很陌生。我只是学习它的所有,但感谢我的网络编程背景,它是真的快。 我有一个关于WebViews的问题。当我有一个简单的组件(如图表),但很难用Java绘制时,我就用HTML和CSS构建它,并将它用作WebView。 我的问题看起来像是基于意见的,但我是从表现的角度来问这个问题的。 我想知道,拥有几个简单的webviews对性能有何影响?我知道几乎所有的东西都有库,但是当我

  • 问题内容: 我想使用两个Git存储库构建一个项目。其中一个包含源代码,而另一个包含构建和部署脚本。 我的问题是我需要一个用于构建和部署项目不同部分(大型项目,多个存储库,相同的构建和部署脚本)的存储库,但是Jenkins似乎无法处理此问题(或者我不知道)不知道/找不到方法)。 问题答案: 更新 现在不建议使用多个SCM插件,因此用户应该迁移到Pipeline插件。 旧答案 是的,詹金斯可以处理。只

  • 问题内容: 我需要知道是否有可能在Spring数据其余部分中使用一个Crud存储库来管理多个实体。 范例: 图书馆实体 图书实体 我的要求是 只能使用该存储库来管理图书馆和图书实体。 我尝试插入,到目前为止效果很好。但是此方法不支持其他操作。还有什么其他方法,而不是有两个原始存储库来完成。 问题答案: 当然可以。像这样修改一下您的资料库: 然后,您可以使用以下负载创建/更新您的图书馆及其书籍: S

  • 问题内容: 我要寻找一个Java库与标准的Unix功能,即接口,,。 这曾经存在,并被称为。它于2000年发布。请参阅此公告。但是项目页面现在不见了。 如今,在Java中是否有现代替代这些类型的函数的功能?可以进行系统调用并解析输出,或者编写自定义JNI方法,但是这些方法比简单地使用旧库要有效得多。 澄清- 为了从C程序中找出文件的所有者,它应调用给出所有者的UID,然后用于从UID获取帐户的名称

  • 我想使用Spring LDAP 设置多个 LDAP 存储库。我的目标是同时在所有存储库中创建或更新对象。 我使用LdapRepository Spring接口,我认为目前这是不可能的。 我想知道我是否可以创建自己的LdapRepository来扩展Spring,但是我不知道如何开始。 这是我的配置: 完整地说,一个存储库: 知道怎么做吗? 提前感谢任何帮助。