如何在同一环境中为多个服务器/主机运行Playbook

问题描述 投票:0回答:1

我正在编写一本Ansible剧本,需要在我的前生产环境下运行。现在,在此环境中进行部署有些棘手。有多个战争部署在多个服务器上。该环境由4个不同的应用程序和服务器组成,并且部署需要按顺序进行。我也在考虑使用角色。例如,假设有3个任务复制发行版,停止tomcat,部署发行版,那么将有3个单独的角色执行此活动。

cms服务器数据库服务器前服务器api服务器。

我试图了解如何为此建立库存?我正在使用group_vars为特定组定义一组变量。

有人可以帮忙吗?

ansible ansible-inventory
1个回答
0
投票

这样的东西对您有用吗?

preprod:
  children: 
    cms-server: 
      hosts: 
        serv1
        serv2
    db-server:
      hosts:
        serv3
    front-server:
      hosts:
        serv4
    api-server:
        serv5
        serv6

这里的“孩子”表示以下是子组。 “主机”用于子组内的主机。

然后,您可以为每个组(将应用于该组内的任何主机)或在preprod组上使用groups_vars文件,这可能使您将来可以将此文件复制到prod或dev envs。

如果您决定遵循此规则,建议您重命名组名称,并在服务器上添加一个“ s”。

© www.soinside.com 2019 - 2024. All rights reserved.