gpt4 book ai didi

ansible - 如何使用 Ansible 在主机上安装多个服务实例?

转载 作者:行者123 更新时间:2023-12-01 09:52:39 25 4
gpt4 key购买 nike

我有一台主机,我想在该主机上多次安装相同的服务,但具有不同的路径、服务名称等(可以通过变量配置的东西)。

我通常不会为此使用相同的主机,但这是一个特殊的用例场景,我无法更改架构。

使用 Ansible 执行此操作的最佳方法是什么(我已经在使用 2.0)?

最佳答案

鉴于您有安装应用程序的角色,您可以使用滚动参数来配置所有移动部件。

- role: cool-app
location: /some/path/A
config:
some: stuff

- role: cool-app
location: /some/path/B
config:
some: other stuff

然后在您的角色中您可以直接访问 {{ location }}{{ config.some }}等等。

更动态但也更复杂的创建 - 特别是如果您已经拥有这个工作角色并且现在需要更改它 - 是在一组实例上循环所有任务。

您可以再次将其作为角色参数传递:
- role: cool-app
instances:
- location: /some/path/A
config:
some: stuff
- location: /some/path/B
config:
some: other stuff

或者更好地在您的主机或组变量中定义它。

然后每个对实例唯一的任务都需要遍历 instances多变的。例如解压:
- unarchive:
src: cool-app.tgz
dest: "{{ item.location }}"
with_items: instances

关于ansible - 如何使用 Ansible 在主机上安装多个服务实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34901906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com