在Ansible中同时运行多个命令和/或服务时,有一些最佳实践可以帮助您确保代码的可维护性和可重复性。
你可以创建一个名为“my_commands”的角色,该角色将安装“yum-utils”和“epel-release”软件包(用于更新操作系统软件包)以及PostgreSQL服务器:
my_commands/tasks/main.yml
name: Install base packages apt: name:
name: Install PostgreSQL apt: name: postgresql-server become: true
您现在可以将此角色添加到您的Ansible playbook中。这将确保每次运行时都会运行这两个命令,并且代码具有可重复性。
如果“Command 2”失败,则“Command 3”将不会运行。但是,在命令成功运行后,您不能保证它们以特定的顺序运行。如果您需要确保它们按照特定的顺序运行,请将它们放在单独的块中。
name: Run multiple commands in order block:
block:
block: