A.6. Ansible 变量

以下变量控制 Ansible Automation Platform 与远程主机交互的方式。

有关特定于特定插件的变量的附加信息,请参考 https://docs.ansible.com/ansible-core/devel/collections/ansible/builtin/index.html

全局配置选项列表请参考 https://docs.ansible.com/ansible-core/devel/reference_appendices/config.html

变量描述

ansible_connection

用于目标主机上任务的连接插件。

这可以是任何 ansible 连接插件的名称。SSH 协议类型是 smartsshparamiko

默认为 smart

ansible_host

要使用的目标主机的 ip 或名称,而不是 inventory_hostname

ansible_port

连接端口号(如果没有提供,默认为 22 用于 ssh)。

ansible_user

连接到主机时使用的用户名。

ansible_password

用于向主机进行身份验证的密码。

从不以纯文本形式存储此变量。

始终使用密码库。

ansible_ssh_private_key_file

ssh 使用的私钥文件。在使用多个密钥且您不想使用 SSH 代理时很有用。

ansible_ssh_common_args

此设置始终附加到 sftpscpssh 的默认命令行中。对于为特定主机(或组)配置 ProxyCommand 很有用。

ansible_sftp_extra_args

此设置始终附加到默认的 sftp 命令行。

ansible_scp_extra_args

此设置始终附加到默认的 scp 命令行。

ansible_ssh_extra_args

此设置始终附加到默认的 ssh 命令行。

ansible_ssh_pipelining

确定是否使用 SSH pipelining。这可以覆盖 ansible.cfg 中的 pipelining 设置。如果使用基于 SSH 密钥的身份验证,则密钥必须由 SSH 代理管理。

ansible_ssh_executable

(在 2.2 版中添加)

此设置覆盖使用系统 ssh 的默认行为。这可以覆盖 ansible.cfg 中的 ssh_executable 设置。

ansible_shell_type

目标系统的 shell 类型。除非将 ansible_shell_executable 设置为一个非兼容 shell,否则不应使用此设置。默认情况下,使用 sh 样式的语法对命令进行了格式化。把它设置为 cshfish 会导致在目标系统上执行命令来遵循这些 shell 的语法。

ansible_shell_executable

这会设置 ansible 控制器在目标机器上使用的 shell,并覆盖 ansible.cfg 中的可执行文件,默认为 /bin/sh

只有在无法使用 /bin/sh 时(也就是说,如果目标机器上没有安装 /bin/sh )或者无法从 sudo 运行,才应更改。

inventory_hostname

此变量从清单脚本或 ansible 配置文件获取机器的主机名。

您不能设置此变量的值。

由于从配置文件中获取了该值,实际运行时主机名值可能与此变量返回的不同。