📅  最后修改于: 2023-12-03 15:37:41.385000             🧑  作者: Mango
Ansible 是一款非常强大的自动化管理工具,它可以用来管理不同的主机、配置文件、软件包等。在实际应用中,我们经常需要为 Ansible 传递一些参数或变量来完成一些复杂的操作。
本文将介绍如何在命令行上为 Ansible 传递变量。我们会介绍两种方法:使用 --extra-vars
参数和使用 var_file
。
--extra-vars
参数使用 ansible-playbook
命令执行 playbook 时,我们可以使用 --extra-vars
参数为 Ansible 传递变量。
假设我们要传递一个名为 my_var
的变量,其值为 my_value
,我们可以使用以下命令:
$ ansible-playbook playbook.yml --extra-vars "my_var=my_value"
在 playbook 中,可以使用 {{ my_var }}
的方式来引用该变量。
var_file
除了使用 --extra-vars
参数,我们还可以使用 var_file
文件来传递变量。var_file
中存放了变量名和值的键值对,每个变量占用一行,格式如下:
my_var: my_value
假设我们的 var_file
文件名为 my_vars.yml
,我们可以使用以下命令来执行 playbook:
$ ansible-playbook playbook.yml --extra-vars "@my_vars.yml"
其中 @
符号告诉 Ansible 从指定的文件中读取变量。
在 playbook 中,可以使用 {{ my_var }}
的方式来引用该变量。
本文介绍了两种为 Ansible 传递变量的方法:使用 --extra-vars
参数和使用 var_file
。这两种方法都非常方便易用,可以让我们更加灵活地使用 Ansible 来自动化管理不同的主机、配置文件、软件包等。