Ansible 配置设置
Ansible 支持多种配置其行为的来源,包括名为 ansible.cfg
的 ini 文件、环境变量、命令行选项、剧本关键字和变量。有关每个来源的相对优先级的详细信息,请参阅 控制 Ansible 的行为:优先级规则。
ansible-config
实用程序允许用户查看所有可用的配置设置、其默认值、如何设置它们以及其当前值来自何处。有关更多信息,请参阅 ansible-config。
配置文件
可以在配置文件中进行更改并使用,这些文件将按以下顺序搜索:
ANSIBLE_CONFIG
(如果设置了环境变量)
ansible.cfg
(在当前目录中)
~/.ansible.cfg
(在主目录中)
/etc/ansible/ansible.cfg
Ansible 将处理上述列表并使用找到的第一个文件,忽略所有其他文件。
注意
配置文件是 INI 格式的一种变体。井号 (#
) 和分号 (;
) 都允许作为注释标记,前提是注释以行开头。但是,如果注释与常规值内联,则只有分号允许引入注释。例如:
# some basic default values...
inventory = /etc/ansible/hosts ; This points to the file that lists your hosts
生成示例 ansible.cfg
文件
例如,您可以生成一个完全注释掉的示例 ansible.cfg
文件:
$ ansible-config init --disabled > ansible.cfg
您还可以拥有一个更完整的包含现有插件的文件:
$ ansible-config init --disabled -t all > ansible.cfg
您可以将这些用作创建自己的 ansible.cfg
文件的起点。
避免当前目录中的 ansible.cfg
带来的安全风险
如果 Ansible 要从世界可写的当前工作目录加载 ansible.cfg
,则会造成严重的安全风险。另一个用户可以将自己的配置文件放在那里,该文件旨在使 Ansible 在本地和远程运行恶意代码,可能具有提升的权限。因此,如果目录是世界可写的,Ansible 将不会自动从当前工作目录加载配置文件。
如果您依赖于使用当前工作目录中的配置文件与 Ansible 配合使用,避免此问题的最佳方法是将对 Ansible 目录的访问权限限制为特定用户和/或组。如果您的 Ansible 目录位于必须模拟 Unix 权限的文件系统上,例如 Vagrant 或 Windows Subsystem for Linux (WSL),您可能一开始不知道如何修复此问题,因为 chmod
、chown
和 chgrp
可能在那里不起作用。在大多数情况下,正确的解决方法是修改文件系统的挂载选项,以便运行 Ansible 的用户和组可以读取和写入文件和目录,而其他人则无法访问。有关正确设置的更多详细信息,请参阅:
对于 Vagrant,Vagrant 文档 涵盖了同步文件夹权限。
对于 WSL,WSL 文档 和这篇Microsoft 博客文章 介绍了挂载选项。
如果您绝对依赖于将 Ansible 配置存储在世界可写的当前工作目录中,您可以通过ANSIBLE_CONFIG
环境变量显式指定配置文件。在这样做之前,请采取适当的步骤来减轻上述安全问题。
配置的相对路径
您可以为许多配置选项指定相对路径。在大多数情况下,使用的路径将相对于当前执行使用的ansible.cfg
文件。如果您需要相对于当前工作目录 (CWD) 的路径,可以使用{{CWD}}
宏来指定它。我们不推荐这种方法,因为使用您的 CWD 作为相对路径的根目录可能存在安全风险。例如:cd /tmp; secureinfo=./newrootpassword ansible-playbook ~/safestuff/change_root_pwd.yml
。
常用选项
这是我们发行版中可用选项的副本,您的本地安装可能由于附加插件而具有额外选项,您可以使用上面提到的命令行实用程序(ansible-config)来浏览这些选项。
ACTION_WARNINGS
- 描述:
默认情况下,Ansible 会在从任务操作(模块或操作插件)接收到警告时发出警告。可以通过将此设置调整为 False 来消除这些警告。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.5
- Ini:
- 节:
[defaults]
- 键:
action_warnings
- 环境:
AGNOSTIC_BECOME_PROMPT
- 描述:
显示一个通用的 become 提示,而不是显示包含命令行提供的 become 方法的提示。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.5
- Ini:
- 节:
[privilege_escalation]
- 键:
agnostic_become_prompt
- 环境:
ANSIBLE_CONNECTION_PATH
- 描述:
指定在何处查找 ansible-connection 脚本。在搜索 $PATH 之前将检查此位置。如果为空,ansible 将从与 ansible 脚本相同的目录开始。
- 类型:
路径
- 默认值:
无
- 添加版本:
2.8
- Ini:
- 节:
[persistent_connection]
- 键:
ansible_connection_path
- 环境:
ANSIBLE_COW_ACCEPTLIST
- 描述:
接受cowsay模板列表,这些模板是“安全的”,如果要启用所有已安装的模板,则将其设置为空列表。
- 类型:
列表
- 默认值:
['bud-frogs', 'bunny', 'cheese', 'daemon', 'default', 'dragon', 'elephant-in-snake', 'elephant', 'eyes', 'hellokitty', 'kitty', 'luke-koala', 'meow', 'milk', 'moofasa', 'moose', 'ren', 'sheep', 'small', 'stegosaurus', 'stimpy', 'supermilker', 'three-eyes', 'turkey', 'turtle', 'tux', 'udder', 'vader-koala', 'vader', 'www']
- Ini:
- 节:
[defaults]
- 键:
cowsay_enabled_stencils :添加版本: 2.11
- 环境:
- 变量:
ANSIBLE_COW_ACCEPTLIST
:添加版本: 2.11
ANSIBLE_COW_PATH
- 描述:
指定自定义cowsay路径或替换您选择的cowsay实现。
- 类型:
字符串
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
cowpath
- 环境:
- 变量:
ANSIBLE_COW_SELECTION
- 描述:
这允许您为横幅选择特定的cowsay模板或使用“random”循环遍历它们。
- 默认值:
默认
- Ini:
- 节:
[defaults]
- 键:
cow_selection
- 环境:
ANSIBLE_FORCE_COLOR
- 描述:
即使在没有 TTY 或“nocolor”设置为 True 的情况下运行,此选项也会强制颜色模式。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
force_color
- 环境:
ANSIBLE_HOME
- 描述:
控制器上 Ansible 配置文件的默认根路径。
- 类型:
路径
- 默认值:
~/.ansible
- 添加版本:
2.14
- Ini:
- 节:
[defaults]
- 键:
home
- 环境:
- 变量:
ANSIBLE_NOCOLOR
- 描述:
此设置允许抑制输出颜色,用于更好地指示失败和状态信息。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
nocolor
- 环境:
- 变量:
- 变量:
- 添加版本:
2.11
ANSIBLE_NOCOWS
- 描述:
如果您安装了cowsay但想避免“奶牛”(为什么?),请使用此选项。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
nocows
- 环境:
- 变量:
ANSIBLE_PIPELINING
- 描述:
这是一个全局选项,每个连接插件都可以通过具有更具体的选项或根本不支持流水线来覆盖它。如果连接插件支持流水线,则通过执行许多 Ansible 模块而无需实际文件传输,可以减少执行远程服务器上模块所需的网络操作次数。启用后,它可以带来非常显著的性能提升。但是,这与权限提升(become)冲突。例如,当使用“sudo:”操作时,您必须首先在所有受管理的主机上禁用 /etc/sudoers 中的“requiretty”,这就是默认情况下将其禁用的原因。如果启用
ANSIBLE_KEEP_REMOTE_FILES
,则此设置将被禁用。- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[connection]
- 键:
pipelining
- 节:
[defaults]
- 键:
pipelining
- 环境:
ANY_ERRORS_FATAL
- 描述:
设置 any_errors_fatal 关键字的默认值,如果为 True,任务失败将被视为致命错误。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.4
- Ini:
- 节:
[defaults]
- 键:
any_errors_fatal
- 环境:
BECOME_ALLOW_SAME_USER
- 描述:
当
False``(默认), Ansible 将 跳过 使用 become 如果 远程 用户 与 become 用户 相同, 因为这通常是 冗余 操作。 换句话说,root sudo 到 root。 如果 ``True
,这将强制 Ansible 无论如何使用 become 插件,因为某些情况下需要这样做。- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[privilege_escalation]
- 键:
become_allow_same_user
- 环境:
BECOME_PASSWORD_FILE
- 描述:
要用于 become 插件的密码文件。
--become-password-file
。如果可执行,它将运行,并且生成的标准输出将用作密码。- 类型:
路径
- 默认值:
无
- 添加版本:
2.12
- Ini:
- 节:
[defaults]
- 键:
become_password_file
- 环境:
BECOME_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索 Become 插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/become:/usr/share/ansible/plugins/become" }}
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
become_plugins
- 环境:
CACHE_PLUGIN
- 描述:
选择要使用的缓存插件,默认的“memory”是短暂的。
- 默认值:
memory
- Ini:
- 节:
[defaults]
- 键:
fact_caching
- 环境:
CACHE_PLUGIN_CONNECTION
- 描述:
定义缓存插件的连接或路径信息。
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
fact_caching_connection
- 环境:
CACHE_PLUGIN_PREFIX
- 描述:
缓存插件文件/表的前缀。
- 默认值:
ansible_facts
- Ini:
- 节:
[defaults]
- 键:
fact_caching_prefix
- 环境:
CACHE_PLUGIN_TIMEOUT
- 描述:
缓存插件数据的过期超时时间。
- 类型:
整数
- 默认值:
86400
- Ini:
- 节:
[defaults]
- 键:
fact_caching_timeout
- 环境:
CALLBACKS_ENABLED
- 描述:
已启用的回调列表,并非所有回调都需要启用,但 Ansible 附带的许多回调都需要启用,因为我们不想默认激活它们。
- 类型:
列表
- 默认值:
[]
- Ini:
- 节:
[defaults]
- 键:
callbacks_enabled :版本新增: 2.11
- 环境:
- 变量:
ANSIBLE_CALLBACKS_ENABLED
:版本新增: 2.11
COLLECTIONS_ON_ANSIBLE_VERSION_MISMATCH
- 描述:
当加载的集合不支持正在运行的 Ansible 版本时(使用集合元数据键requires_ansible)。
- 默认值:
警告
- 选项:
- 错误:
发出“致命”错误并停止剧本
- 警告:
发出警告但继续
- 忽略:
静默继续
- Ini:
- 节:
[defaults]
- 键:
collections_on_ansible_version_mismatch
- 环境:
COLLECTIONS_PATHS
- 描述:
Ansible 将在其中搜索集合内容的冒号分隔路径。集合必须位于嵌套的*子目录*中,而不能直接位于这些目录中。例如,如果
COLLECTIONS_PATHS
包含'{{ ANSIBLE_HOME ~ "/collections" }}'
,并且您想将my.collection
添加到该目录,则必须将其保存为'{{ ANSIBLE_HOME} ~ "/collections/ansible_collections/my/collection" }}'
。- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/collections:/usr/share/ansible/collections" }}
- Ini:
- 节:
[defaults]
- 键:
collections_paths
- 已弃用:
2.19
- 弃用详情:
不符合变量命名规范,请使用单数形式 collections_path
- 节:
[defaults]
- 键:
collections_path
- 添加版本:
2.10
- 环境:
- 变量:
- 添加版本:
2.10
- 变量:
- 已弃用:
2.19
- 弃用详情:
不符合变量命名规范,请使用单数形式 ANSIBLE_COLLECTIONS_PATH
COLLECTIONS_SCAN_SYS_PATH
- 描述:
一个布尔值,用于启用或禁用扫描 sys.path 以查找已安装的集合。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
collections_scan_sys_path
- 环境:
COLOR_CHANGED
- 描述:
定义在“已更改”任务状态下使用的颜色。
- 默认值:
黄色
- Ini:
- 节:
[颜色]
- 键:
已更改
- 环境:
COLOR_CONSOLE_PROMPT
- 描述:
定义用于 ansible-console 的默认颜色。
- 默认值:
白色
- 添加版本:
2.7
- Ini:
- 节:
[颜色]
- 键:
console_prompt
- 环境:
COLOR_DEBUG
- 描述:
定义发出调试消息时使用的颜色。
- 默认值:
深 灰色
- Ini:
- 节:
[颜色]
- 键:
debug
- 环境:
COLOR_DEPRECATE
- 描述:
定义发出弃用消息时使用的颜色。
- 默认值:
紫色
- Ini:
- 节:
[颜色]
- 键:
deprecate
- 环境:
COLOR_DIFF_ADD
- 描述:
定义在差异中显示添加的行时使用的颜色。
- 默认值:
绿色
- Ini:
- 节:
[颜色]
- 键:
diff_add
- 环境:
COLOR_DIFF_LINES
- 描述:
定义显示差异时使用的颜色。
- 默认值:
青色
- Ini:
- 节:
[颜色]
- 键:
diff_lines
- 环境:
COLOR_DIFF_REMOVE
- 描述:
定义在差异中显示删除的行时使用的颜色。
- 默认值:
红色
- Ini:
- 节:
[颜色]
- 键:
diff_remove
- 环境:
COLOR_ERROR
- 描述:
定义发出错误消息时使用的颜色。
- 默认值:
红色
- Ini:
- 节:
[颜色]
- 键:
错误
- 环境:
COLOR_HIGHLIGHT
- 描述:
定义用于突出显示的颜色。
- 默认值:
白色
- Ini:
- 节:
[颜色]
- 键:
高亮
- 环境:
COLOR_OK
- 描述:
定义显示“确定”任务状态时使用的颜色。
- 默认值:
绿色
- Ini:
- 节:
[颜色]
- 键:
确定
- 环境:
- 变量:
COLOR_SKIP
- 描述:
定义显示“已跳过”任务状态时使用的颜色。
- 默认值:
青色
- Ini:
- 节:
[颜色]
- 键:
跳过
- 环境:
COLOR_UNREACHABLE
- 描述:
定义在“不可达”状态下使用的颜色。
- 默认值:
亮 红色
- Ini:
- 节:
[颜色]
- 键:
unreachable
- 环境:
COLOR_VERBOSE
- 描述:
定义发出详细消息时使用的颜色。换句话说,就是使用“-v”显示的消息。
- 默认值:
蓝色
- Ini:
- 节:
[颜色]
- 键:
verbose
- 环境:
COLOR_WARN
- 描述:
定义发出警告消息时使用的颜色。
- 默认值:
亮 紫色
- Ini:
- 节:
[颜色]
- 键:
warn
- 环境:
CONNECTION_FACTS_MODULES
- 描述:
根据连接在剧本的事实收集阶段运行的模块。
- 类型:
字典
- 默认值:
{'asa': 'ansible.legacy.asa_facts', 'cisco.asa.asa': 'cisco.asa.asa_facts', 'eos': 'ansible.legacy.eos_facts', 'arista.eos.eos': 'arista.eos.eos_facts', 'frr': 'ansible.legacy.frr_facts', 'frr.frr.frr': 'frr.frr.frr_facts', 'ios': 'ansible.legacy.ios_facts', 'cisco.ios.ios': 'cisco.ios.ios_facts', 'iosxr': 'ansible.legacy.iosxr_facts', 'cisco.iosxr.iosxr': 'cisco.iosxr.iosxr_facts', 'junos': 'ansible.legacy.junos_facts', 'junipernetworks.junos.junos': 'junipernetworks.junos.junos_facts', 'nxos': 'ansible.legacy.nxos_facts', 'cisco.nxos.nxos': 'cisco.nxos.nxos_facts', 'vyos': 'ansible.legacy.vyos_facts', 'vyos.vyos.vyos': 'vyos.vyos.vyos_facts', 'exos': 'ansible.legacy.exos_facts', 'extreme.exos.exos': 'extreme.exos.exos_facts', 'slxos': 'ansible.legacy.slxos_facts', 'extreme.slxos.slxos': 'extreme.slxos.slxos_facts', 'voss': 'ansible.legacy.voss_facts', 'extreme.voss.voss': 'extreme.voss.voss_facts', 'ironware': 'ansible.legacy.ironware_facts', 'community.network.ironware': 'community.network.ironware_facts'}
CONNECTION_PASSWORD_FILE
- 描述:
要用于连接插件的密码文件。
--connection-password-file
。- 类型:
路径
- 默认值:
无
- 添加版本:
2.12
- Ini:
- 节:
[defaults]
- 键:
connection_password_file
- 环境:
COVERAGE_REMOTE_OUTPUT
- 描述:
设置远程主机上的输出目录,以将覆盖率报告生成到其中。目前仅用于 PowerShell 模块上的远程覆盖率。这仅供内部使用。
- 类型:
字符串
- 添加版本:
2.9
- 环境:
- 变量:
- 名称:
_ansible_coverage_remote_output
COVERAGE_REMOTE_PATHS
- 描述:
在远程主机上执行时,Ansible控制器上用于运行代码覆盖率的文件路径列表。只有与路径通配符匹配的文件才会收集其覆盖率数据。可以指定多个路径通配符,并用
:
分隔。目前仅用于PowerShell模块的远程覆盖率。此功能仅供内部使用。- 类型:
字符串
- 默认值:
*
- 添加版本:
2.9
- 环境:
DEFAULT_ACTION_PLUGIN_PATH
- 描述:
Ansible将搜索Action插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/action:/usr/share/ansible/plugins/action" }}
- Ini:
- 节:
[defaults]
- 键:
action_plugins
- 环境:
DEFAULT_ALLOW_UNSAFE_LOOKUPS
- 描述:
启用此选项后,允许查找插件(无论是在变量中使用
{{lookup('foo')}}
还是在循环中使用with_foo)返回未标记为“unsafe”(不安全)的数据。默认情况下,此类数据被标记为不安全,以防止模板引擎评估任何jinja2模板语言,因为这可能构成安全风险。提供此选项是为了向后兼容,但是,用户应首先考虑将allow_unsafe=True添加到任何可能包含可能在稍后通过模板引擎运行的数据的查找中。- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.2.3
- Ini:
- 节:
[defaults]
- 键:
allow_unsafe_lookups
DEFAULT_ASK_PASS
- 描述:
这控制Ansible剧本是否应提示输入登录密码。如果使用SSH密钥进行身份验证,则可能不需要更改此设置。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
ask_pass
- 环境:
- 变量:
DEFAULT_ASK_VAULT_PASS
- 描述:
这控制Ansible剧本是否应提示输入Vault密码。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
ask_vault_pass
- 环境:
DEFAULT_BECOME
- 描述:
切换特权升级的使用,允许您在登录后“成为”另一个用户。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[privilege_escalation]
- 键:
become
- 环境:
- 变量:
DEFAULT_BECOME_ASK_PASS
- 描述:
切换以提示输入特权升级密码。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[privilege_escalation]
- 键:
become_ask_pass
- 环境:
DEFAULT_BECOME_EXE
- 描述:
用于特权升级的可执行文件,否则Ansible将依赖于PATH。
- 默认值:
无
- Ini:
- 节:
[privilege_escalation]
- 键:
become_exe
- 环境:
DEFAULT_BECOME_FLAGS
- 描述:
传递给特权升级可执行文件的标志。
- 默认值:
- Ini:
- 节:
[privilege_escalation]
- 键:
become_flags
- 环境:
DEFAULT_BECOME_METHOD
- 描述:
启用become时使用的特权升级方法。
- 默认值:
sudo
- Ini:
- 节:
[privilege_escalation]
- 键:
become_method
- 环境:
DEFAULT_BECOME_USER
- 描述:
使用特权升级时,您的登录/远程用户“成为”的用户,大多数系统在未指定用户时将使用“root”。
- 默认值:
root
- Ini:
- 节:
[privilege_escalation]
- 键:
become_user
- 环境:
DEFAULT_CACHE_PLUGIN_PATH
- 描述:
Ansible将搜索Cache插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/cache:/usr/share/ansible/plugins/cache" }}
- Ini:
- 节:
[defaults]
- 键:
cache_plugins
- 环境:
DEFAULT_CALLBACK_PLUGIN_PATH
- 描述:
Ansible将搜索Callback插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/callback:/usr/share/ansible/plugins/callback" }}
- Ini:
- 节:
[defaults]
- 键:
callback_plugins
- 环境:
DEFAULT_CLICONF_PLUGIN_PATH
- 描述:
Ansible将搜索Cliconf插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/cliconf:/usr/share/ansible/plugins/cliconf" }}
- Ini:
- 节:
[defaults]
- 键:
cliconf_plugins
- 环境:
DEFAULT_CONNECTION_PLUGIN_PATH
- 描述:
Ansible将搜索Connection插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/connection:/usr/share/ansible/plugins/connection" }}
- Ini:
- 节:
[defaults]
- 键:
connection_plugins
- 环境:
DEFAULT_DEBUG
- 描述:
切换Ansible中的调试输出。这非常冗长,可能会妨碍多进程处理。即使启用了no_log设置,调试输出也可能包含秘密信息,这意味着不应在生产环境中使用调试模式。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
debug
- 环境:
- 变量:
DEFAULT_EXECUTABLE
- 描述:
这指示用于在其下生成shell的命令,这是Ansible在目标上执行需求所必需的。在shell使用受到限制的罕见情况下,用户可能需要更改此设置,但在大多数情况下,可以保持原样。
- 默认值:
/bin/sh
- Ini:
- 节:
[defaults]
- 键:
executable
- 环境:
DEFAULT_FACT_PATH
- 描述:
此选项允许您为使用事实收集时的隐式ansible_collections.ansible.builtin.setup_module任务全局配置“local_facts”的自定义路径。如果未设置,它将回退到
ansible.builtin.setup
模块的默认值:/etc/ansible/facts.d
。这**不会**影响使用ansible.builtin.setup
模块的用户定义任务。隐式任务创建的实际操作当前是ansible.legacy.gather_facts
模块,然后调用配置的事实模块,默认情况下,对于POSIX系统,这将是ansible.builtin.setup
,但其他平台可能具有不同的默认值。- 类型:
字符串
- Ini:
- 节:
[defaults]
- 键:
fact_path
- 环境:
- 已弃用:
2.18
- 弃用详情:
module_defaults关键字是更通用的版本,可以应用于对M(ansible.builtin.gather_facts)或M(ansible.builtin.setup)操作的所有调用
- 已弃用的替代方案:
module_defaults
DEFAULT_FILTER_PLUGIN_PATH
- 描述:
Ansible将搜索Jinja2 Filter插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/filter:/usr/share/ansible/plugins/filter" }}
- Ini:
- 节:
[defaults]
- 键:
filter_plugins
- 环境:
DEFAULT_FORCE_HANDLERS
- 描述:
此选项控制即使主机上发生故障,是否仍应在主机上运行已通知的处理程序。如果主机上发生故障,则为false时,处理程序将不会运行。这也可以在每个剧本或命令行上设置。有关详细信息,请参见处理程序和故障。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
1.9.1
- Ini:
- 节:
[defaults]
- 键:
force_handlers
- 环境:
DEFAULT_FORKS
- 描述:
Ansible用于在目标主机上执行任务的最大分叉数。
- 类型:
整数
- 默认值:
5
- Ini:
- 节:
[defaults]
- 键:
forks
- 环境:
- 变量:
DEFAULT_GATHER_SUBSET
- 描述:
为隐式事实收集中的ansible_collections.ansible.builtin.setup_module任务设置gather_subset选项。具体信息请参见模块文档。此选项**不**应用于用户定义的
ansible.builtin.setup
任务。- 类型:
列表
- 添加版本:
2.1
- Ini:
- 节:
[defaults]
- 键:
gather_subset
- 环境:
- 已弃用:
2.18
- 弃用详情:
module_defaults关键字是更通用的版本,可以应用于对M(ansible.builtin.gather_facts)或M(ansible.builtin.setup)操作的所有调用
- 已弃用的替代方案:
module_defaults
DEFAULT_GATHER_TIMEOUT
- 描述:
设置隐式事实收集的超时时间(以秒为单位),具体信息请参见模块文档。此选项**不**应用于用户定义的ansible_collections.ansible.builtin.setup_module任务。
- 类型:
整数
- Ini:
- 节:
[defaults]
- 键:
gather_timeout
- 环境:
- 已弃用:
2.18
- 弃用详情:
module_defaults关键字是更通用的版本,可以应用于对M(ansible.builtin.gather_facts)或M(ansible.builtin.setup)操作的所有调用
- 已弃用的替代方案:
module_defaults
DEFAULT_GATHERING
- 描述:
此设置控制事实收集(关于远程系统发现的事实)的默认策略。此选项对于希望节省事实收集时间的用户很有用。“smart”和“explicit”都将使用缓存插件。
- 默认值:
implicit
- 选项:
- implicit:
将忽略缓存插件,除非设置了“gather_facts: False”,否则每个剧本都会收集事实。
- explicit:
除非在剧本中直接请求,否则不会收集事实。
- smart:
每个没有发现事实的新主机都将被扫描,但是如果在多个剧本中访问同一主机,则在运行中不会再次与其联系。
- 添加版本:
1.6
- Ini:
- 节:
[defaults]
- 键:
gathering
- 环境:
DEFAULT_HASH_BEHAVIOUR
- 描述:
此设置控制在 Ansible 中如何处理字典变量(又称哈希、映射、关联数组)的重复定义。这不会影响值是标量(整数、字符串)或数组的变量。**警告**,不建议更改此设置,因为它很脆弱,会使您的内容(剧本、角色、集合)不可移植,导致持续的混淆和误用。除非您认为绝对需要,否则不要更改此设置。我们建议避免重用变量名,并依赖于
combine
过滤器以及vars
和varnames
查找来创建单个变量的合并版本。根据我们的经验,这很少需要,并且表明数据结构和剧本中引入了过多的复杂性。对于某些用途,您还可以查看自定义 vars_plugins 以合并输入,甚至替换负责解析host_vars/
和group_vars/
目录的默认host_group_vars
。此设置的大多数用户只对清单范围感兴趣,但设置本身会影响所有来源,并使调试更加困难。官方示例仓库中的所有剧本和角色都假设此设置的默认值。将设置更改为merge
会应用于所有变量来源,但许多来源内部仍然会覆盖变量。例如,include_vars
会在更新 Ansible 之前内部对变量进行去重,其中“最后定义的”会覆盖同一文件中之前的定义。Ansible 项目建议您**避免在新的项目中使用`merge`**。Ansible 开发人员打算最终弃用并删除此设置,但它被保留下来,因为一些用户确实非常依赖它。新的项目应该**避免使用‘merge’**。- 类型:
字符串
- 默认值:
replace
- 选项:
- replace:
任何定义多次的变量都将使用变量优先级规则(最高优先级获胜)中的顺序进行覆盖。
- merge:
任何字典变量都将使用不同的变量定义源递归地与新的定义合并。
- Ini:
- 节:
[defaults]
- 键:
hash_behaviour
- 环境:
DEFAULT_HOST_LIST
- 描述:
Ansible 清单源的逗号分隔列表
- 类型:
pathlist
- 默认值:
/etc/ansible/hosts
- Ini:
- 节:
[defaults]
- 键:
inventory
- 环境:
DEFAULT_HTTPAPI_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索 HttpApi 插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/httpapi:/usr/share/ansible/plugins/httpapi" }}
- Ini:
- 节:
[defaults]
- 键:
httpapi_plugins
- 环境:
DEFAULT_INTERNAL_POLL_INTERVAL
- 描述:
这将设置 Ansible 内部进程相互轮询的时间间隔(以秒为单位)。较低的值可以提高大型剧本的性能,但会增加额外的 CPU 负载。较高的值更适合在不需要 UI 响应能力但 CPU 使用率可能成为问题的自动化场景中使用 Ansible。默认值对应于 Ansible <= 2.1 中硬编码的值。
- 类型:
float
- 默认值:
0.001
- 添加版本:
2.2
- Ini:
- 节:
[defaults]
- 键:
internal_poll_interval
DEFAULT_INVENTORY_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索清单插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/inventory:/usr/share/ansible/plugins/inventory" }}
- Ini:
- 节:
[defaults]
- 键:
inventory_plugins
- 环境:
DEFAULT_JINJA2_EXTENSIONS
- 描述:
这是一个针对开发人员的功能,允许启用额外的 Jinja2 扩展。有关详细信息,请参阅 Jinja2 文档。如果您不知道这些的作用,您可能不需要更改此设置 :)
- 默认值:
[]
- Ini:
- 节:
[defaults]
- 键:
jinja2_extensions
- 环境:
DEFAULT_JINJA2_NATIVE
- 描述:
此选项在模板操作期间保留变量类型。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.7
- Ini:
- 节:
[defaults]
- 键:
jinja2_native
- 环境:
DEFAULT_KEEP_REMOTE_FILES
- 描述:
启用/禁用清理 Ansible 用于在远程执行任务的临时文件。如果启用此选项,它将禁用
ANSIBLE_PIPELINING
。- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
keep_remote_files
- 环境:
DEFAULT_LIBVIRT_LXC_NOSECLABEL
- 描述:
此设置导致 libvirt 通过将
--noseclabel
参数传递给virsh
命令来连接到 LXC 容器。在没有 SELinux 的系统上运行时,这是必需的。- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.1
- Ini:
- 节:
[selinux]
- 键:
libvirt_lxc_noseclabel
- 环境:
DEFAULT_LOAD_CALLBACK_PLUGINS
- 描述:
控制在运行 /usr/bin/ansible 时是否加载回调插件。这可用于记录命令行活动、发送通知等。对于
ansible-playbook
,始终加载回调插件。- 类型:
布尔值
- 默认值:
False
- 添加版本:
1.8
- Ini:
- 节:
[defaults]
- 键:
bin_ansible_callbacks
- 环境:
DEFAULT_LOCAL_TMP
- 描述:
Ansible 在控制器上使用的临时目录。
- 类型:
tmppath
- 默认值:
{{ ANSIBLE_HOME ~ "/tmp" }}
- Ini:
- 节:
[defaults]
- 键:
local_tmp
- 环境:
DEFAULT_LOG_FILTER
- 描述:
要从日志文件中过滤掉的日志记录器名称列表。
- 类型:
列表
- 默认值:
[]
- Ini:
- 节:
[defaults]
- 键:
log_filter
- 环境:
DEFAULT_LOG_PATH
- 描述:
Ansible 将在控制器上记录到的文件。为空时,日志记录被禁用。
- 类型:
路径
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
log_path
- 环境:
- 变量:
DEFAULT_LOOKUP_PLUGIN_PATH
- 描述:
Ansible 将用于搜索查找插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/lookup:/usr/share/ansible/plugins/lookup" }}
- Ini:
- 节:
[defaults]
- 键:
lookup_plugins
- 环境:
DEFAULT_MANAGED_STR
- 描述:
设置可用于 ansible_collections.ansible.builtin.template_module 和 ansible_collections.ansible.windows.win_template_module 的“ansible_managed”变量的宏。这仅与这两个模块相关。
- 默认值:
Ansible managed
- Ini:
- 节:
[defaults]
- 键:
ansible_managed
DEFAULT_MODULE_ARGS
- 描述:
这将设置传递给
ansible
adhoc 二进制文件的默认参数,如果未指定-a
。- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
module_args
- 环境:
DEFAULT_MODULE_COMPRESSION
- 描述:
将Python模块传输到目标时使用的压缩方案。
- 默认值:
ZIP_DEFLATED
- Ini:
- 节:
[defaults]
- 键:
module_compression
- 变量:
- 名称:
ansible_module_compression
DEFAULT_MODULE_NAME
- 描述:
如果通过
-m
未指定模块,则与ansible
AdHoc 命令一起使用的模块。- 默认值:
command
- Ini:
- 节:
[defaults]
- 键:
module_name
DEFAULT_MODULE_PATH
- 描述:
Ansible 将用于搜索模块的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/modules:/usr/share/ansible/plugins/modules" }}
- Ini:
- 节:
[defaults]
- 键:
library
- 环境:
- 变量:
DEFAULT_MODULE_UTILS_PATH
- 描述:
Ansible 将用于搜索模块实用程序文件的冒号分隔路径,这些文件由模块共享。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/module_utils:/usr/share/ansible/plugins/module_utils" }}
- Ini:
- 节:
[defaults]
- 键:
module_utils
- 环境:
DEFAULT_NETCONF_PLUGIN_PATH
- 描述:
Ansible 将用于搜索 Netconf 插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/netconf:/usr/share/ansible/plugins/netconf" }}
- Ini:
- 节:
[defaults]
- 键:
netconf_plugins
- 环境:
DEFAULT_NO_LOG
- 描述:
切换 Ansible 对任务详细信息的显示和日志记录,主要用于避免安全泄露。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
no_log
- 环境:
- 变量:
DEFAULT_NO_TARGET_SYSLOG
- 描述:
在 Ansible 执行任务时,切换 Ansible 到目标的 syslog 日志记录。在 Windows 主机上,这将禁用较新的 PowerShell 模块写入事件日志。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
no_target_syslog
- 环境:
- 变量:
- 名称:
ansible_no_target_syslog :Version Added: 2.10
DEFAULT_NULL_REPRESENTATION
- 描述:
模板应返回什么作为“空”值。未设置时,它将让 Jinja2 决定。
- 类型:
raw
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
null_representation
- 环境:
DEFAULT_POLL_INTERVAL
- 描述:
对于 Ansible 中的异步任务(在异步操作和轮询中介绍),这是在未提供显式轮询间隔时,多久检查一次这些任务状态的频率。默认值为相当适中的 15 秒,这是频繁检查和在某些内容可能已完成时提供快速周转之间的折衷。
- 类型:
整数
- 默认值:
15
- Ini:
- 节:
[defaults]
- 键:
poll_interval
- 环境:
DEFAULT_PRIVATE_KEY_FILE
- 描述:
对于使用证书或密钥文件而不是代理或密码进行身份验证的连接,您可以在此处设置默认值以避免每次调用都重新指定
--private-key
。- 类型:
路径
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
private_key_file
- 环境:
DEFAULT_PRIVATE_ROLE_VARS
- 描述:
默认情况下,导入的角色会将其变量发布到剧本和其他角色,此设置可以避免这种情况。这是作为一种方法引入的,如果在剧本中多次使用角色,则可以将角色变量重置为默认值。从版本“2.17”开始,M(ansible.builtin.include_roles) 和 M(ansible.builtin.import_roles) 可以通过 C(public) 参数单独覆盖此设置。包含的角色仅在其执行时公开其变量,这与在剧本编译时发生导入的角色不同。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
private_role_vars
- 环境:
DEFAULT_REMOTE_PORT
- 描述:
在远程连接中使用的端口,为空时将使用连接插件默认值。
- 类型:
整数
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
remote_port
- 环境:
DEFAULT_REMOTE_USER
- 描述:
设置目标机器的登录用户。为空时,它使用连接插件的默认值,通常是当前执行 Ansible 的用户。
- Ini:
- 节:
[defaults]
- 键:
remote_user
- 环境:
DEFAULT_ROLES_PATH
- 描述:
Ansible 将用于搜索角色的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/roles:/usr/share/ansible/roles:/etc/ansible/roles" }}
- Ini:
- 节:
[defaults]
- 键:
roles_path
- 环境:
DEFAULT_SELINUX_SPECIAL_FS
- 描述:
某些文件系统不支持安全操作和/或返回不一致的错误,此设置使 Ansible “容忍”列表中的那些文件系统,而不会导致致命错误。当文件系统在列表中时,可能会发生数据损坏,并且并非总是验证写入。
- 类型:
列表
- 默认值:
fuse, nfs, vboxsf, ramfs, 9p, vfat
- Ini:
- 节:
[selinux]
- 键:
special_context_filesystems
- 环境:
- 变量:
ANSIBLE_SELINUX_SPECIAL_FS
:Version Added: 2.9
DEFAULT_STDOUT_CALLBACK
- 描述:
设置用于显示 Ansible 输出的主要回调。一次只能有一个。您可以拥有许多其他回调,但只有一个可以负责 stdout。有关可用选项的列表,请参阅 Callback plugins。
- 默认值:
默认
- Ini:
- 节:
[defaults]
- 键:
stdout_callback
- 环境:
DEFAULT_STRATEGY
- 描述:
设置用于剧本的默认策略。
- 默认值:
linear
- 添加版本:
2.3
- Ini:
- 节:
[defaults]
- 键:
strategy
- 环境:
- 变量:
DEFAULT_STRATEGY_PLUGIN_PATH
- 描述:
Ansible 将用于搜索策略插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/strategy:/usr/share/ansible/plugins/strategy" }}
- Ini:
- 节:
[defaults]
- 键:
strategy_plugins
- 环境:
DEFAULT_SU
- 描述:
切换任务中“su”的使用。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
su
- 环境:
- 变量:
DEFAULT_SYSLOG_FACILITY
- 描述:
Ansible 记录到远程目标时使用的 syslog 设施。
- 默认值:
LOG_USER
- Ini:
- 节:
[defaults]
- 键:
syslog_facility
- 环境:
DEFAULT_TERMINAL_PLUGIN_PATH
- 描述:
Ansible 将用于搜索终端插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/terminal:/usr/share/ansible/plugins/terminal" }}
- Ini:
- 节:
[defaults]
- 键:
terminal_plugins
- 环境:
DEFAULT_TEST_PLUGIN_PATH
- 描述:
Ansible 将用于搜索 Jinja2 测试插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/test:/usr/share/ansible/plugins/test" }}
- Ini:
- 节:
[defaults]
- 键:
测试插件
- 环境:
DEFAULT_TIMEOUT
- 描述:
这是连接插件使用的默认超时时间。
- 类型:
整数
- 默认值:
10
- Ini:
- 节:
[defaults]
- 键:
超时时间
- 环境:
- 变量:
DEFAULT_TRANSPORT
- 描述:
可以是 Ansible 安装中可用的任何连接插件。还有一个(已弃用)特殊的“smart”选项,它将根据控制器操作系统和 SSH 版本在“ssh”和“paramiko”之间切换。
- 默认值:
ssh
- Ini:
- 节:
[defaults]
- 键:
传输方式
- 环境:
DEFAULT_UNDEFINED_VAR_BEHAVIOR
- 描述:
设置为 True 时,这将导致 Ansible 模板化失败那些引用可能拼写错误的变量名的步骤。否则,任何包含未定义变量的“{{ template_expression }}”都将按原样在模板或 Ansible 操作行中呈现。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
1.3
- Ini:
- 节:
[defaults]
- 键:
未定义变量出错
- 环境:
DEFAULT_VARS_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索变量插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/vars:/usr/share/ansible/plugins/vars" }}
- Ini:
- 节:
[defaults]
- 键:
变量插件
- 环境:
DEFAULT_VAULT_ENCRYPT_IDENTITY
- 描述:
默认情况下用于加密的 vault_id。如果提供了多个 vault_id,则这指定用于加密的 vault_id。
--encrypt-vault-id
CLI 选项会覆盖配置的值。- Ini:
- 节:
[defaults]
- 键:
加密身份
- 环境:
DEFAULT_VAULT_ID_MATCH
- 描述:
如果为 true,则使用 vault id 解密保管库只会尝试来自匹配 vault-id 的密码。
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
vault_id 匹配
- 环境:
DEFAULT_VAULT_IDENTITY
- 描述:
在未提供 vault id 标签的情况下,用于默认 vault id 标签的标签。
- 默认值:
默认
- Ini:
- 节:
[defaults]
- 键:
保管库身份
- 环境:
DEFAULT_VAULT_IDENTITY_LIST
- 描述:
默认情况下使用的 vault-id 列表。等效于多个
--vault-id
参数。Vault-id 按顺序尝试。- 类型:
列表
- 默认值:
[]
- Ini:
- 节:
[defaults]
- 键:
保管库身份列表
- 环境:
DEFAULT_VAULT_PASSWORD_FILE
- 描述:
要使用的保管库密码文件。等效于
--vault-password-file
或--vault-id
。如果可执行,它将运行,并且生成的标准输出将用作密码。- 类型:
路径
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
保管库密码文件
- 环境:
DEFAULT_VERBOSITY
- 描述:
设置默认详细程度,相当于命令行中传递的
-v
数量。- 类型:
整数
- 默认值:
0
- Ini:
- 节:
[defaults]
- 键:
详细程度
- 环境:
DEPRECATION_WARNINGS
- 描述:
切换以控制是否显示弃用警告
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
弃用警告
- 环境:
DEVEL_WARNING
- 描述:
切换以控制是否显示与运行开发相关的警告。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
开发警告
- 环境:
DIFF_ALWAYS
- 描述:
配置切换,指示模块在“已更改”状态下显示差异,相当于
--diff
。- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[diff]
- 键:
总是
- 环境:
DIFF_CONTEXT
- 描述:
显示文件差异时要显示的上下文行数。
- 类型:
整数
- 默认值:
3
- Ini:
- 节:
[diff]
- 键:
上下文
- 环境:
DISPLAY_ARGS_TO_STDOUT
- 描述:
通常情况下,
ansible-playbook
会为每个运行的任务打印一个标题。如果您指定了标题,这些标题将包含任务中的name:字段。如果没有,ansible-playbook
将使用任务的操作来帮助您判断当前正在运行哪个任务。有时您会运行许多相同的操作,因此您需要有关任务的更多信息才能将其与其他相同操作的任务区分开来。如果您在配置中将此变量设置为 True,则ansible-playbook
还将在标题中包含任务的参数。此设置默认为 False,因为您有可能在参数中包含敏感值,并且您不希望打印这些值。如果您将其设置为 True,则应确保您已保护环境的标准输出(没有人可以窥视您的屏幕,并且您没有将标准输出保存到不安全的文件中)或确保所有剧本都显式添加了no_log: True
参数到包含敏感值的 task 中 如何在我的剧本中保留秘密数据? 获取更多信息。- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.1
- Ini:
- 节:
[defaults]
- 键:
将参数显示到标准输出
- 环境:
DISPLAY_SKIPPED_HOSTS
- 描述:
切换以控制在默认回调中显示任务中跳过的任务/主机条目。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
显示跳过的主机
- 环境:
DOC_FRAGMENT_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索文档片段插件的冒号分隔路径。
- 类型:
pathspec
- 默认值:
{{ ANSIBLE_HOME ~ "/plugins/doc_fragments:/usr/share/ansible/plugins/doc_fragments" }}
- Ini:
- 节:
[defaults]
- 键:
文档片段插件
- 环境:
DOCSITE_ROOT_URL
- 描述:
用于在警告/错误文本中生成文档 URL 的根文档站点 URL;必须是具有有效方案和尾部斜杠的绝对 URL。
- 默认值:
https://docs.ansible.org.cn/ansible-core/
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
文档站点根 URL
DUPLICATE_YAML_DICT_KEY
- 描述:
默认情况下,当在 YAML 中遇到重复的字典键时,Ansible 将发出警告。可以通过将此设置调整为 False 来消除这些警告。
- 类型:
字符串
- 默认值:
warn
- 选项:
- 错误:
发出“致命”错误并停止剧本
- 警告:
发出警告但继续
- 忽略:
静默继续
- 添加版本:
2.9
- Ini:
- 节:
[defaults]
- 键:
重复字典键
- 环境:
EDITOR
- 默认值:
vi
- Ini:
- 节:
[defaults]
- 键:
编辑器 :版本添加: 2.15
- 环境:
- 变量:
- 添加版本:
2.15
- 变量:
ENABLE_TASK_DEBUGGER
- 描述:
是否启用任务调试器,这以前是作为策略插件完成的。现在所有策略插件都可以继承此行为。当任务在不可达时失败时,调试器默认为激活。使用调试器关键字可获得更大的灵活性。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.5
- Ini:
- 节:
[defaults]
- 键:
启用任务调试器
- 环境:
ERROR_ON_MISSING_HANDLER
- 描述:
切换以允许缺失的处理程序在通知时变为警告而不是错误。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
缺失处理程序出错
- 环境:
FACTS_MODULES
- 描述:
在剧本的事实收集阶段运行哪些模块,使用默认的“smart”将尝试根据连接类型来确定它。如果添加您自己的模块,但您仍然想使用默认的 Ansible 事实,则需要将“setup”或相应的网络模块添加到列表中(如果您添加“smart”,Ansible 也会确定它)。这不会影响对“setup”模块的显式调用,但始终会影响“gather_facts”操作(隐式或显式)。
- 类型:
列表
- 默认值:
['smart']
- Ini:
- 节:
[defaults]
- 键:
事实模块
- 环境:
- 变量:
- 名称:
ansible_facts_modules
GALAXY_CACHE_DIR
- 描述:
存储来自 Galaxy 服务器的缓存响应的目录。这仅由
ansible-galaxy collection install
和download
命令使用。如果此目录中的缓存文件具有世界可写权限,则将忽略这些文件。- 类型:
路径
- 默认值:
{{ ANSIBLE_HOME ~ "/galaxy_cache" }}
- 添加版本:
2.11
- Ini:
- 节:
[galaxy]
- 键:
缓存目录
- 环境:
GALAXY_COLLECTION_SKELETON
- 描述:
用作
ansible-galaxy collection
中init
操作模板的 Collection 骨架目录,与--collection-skeleton
相同。- 类型:
路径
- Ini:
- 节:
[galaxy]
- 键:
collection_skeleton
- 环境:
GALAXY_COLLECTION_SKELETON_IGNORE
- 描述:
Galaxy collection 骨架目录中要忽略的文件模式。
- 类型:
列表
- 默认值:
['^.git$', '^.*/.git_keep$']
- Ini:
- 节:
[galaxy]
- 键:
collection_skeleton_ignore
- 环境:
GALAXY_COLLECTIONS_PATH_WARNING
- 描述:
ansible-galaxy collection install
是否应该警告已配置的COLLECTIONS_PATHS缺少--collections-path
。- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.16
- Ini:
- 节:
[galaxy]
- 键:
collections_path_warning
- 环境:
GALAXY_DISABLE_GPG_VERIFY
- 描述:
在安装 collection 时禁用 GPG 签名验证。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.13
- Ini:
- 节:
[galaxy]
- 键:
disable_gpg_verify
- 环境:
GALAXY_DISPLAY_PROGRESS
- 描述:
ansible-galaxy
中的一些步骤会显示进度轮,这可能会在某些显示器上或将 stdout 输出到文件时导致问题。此配置选项控制是否显示进度轮。默认情况下,如果 stdout 有 tty,则显示进度轮。- 类型:
布尔值
- 默认值:
无
- 添加版本:
2.10
- Ini:
- 节:
[galaxy]
- 键:
display_progress
- 环境:
GALAXY_GPG_KEYRING
- 描述:
配置在安装和验证 collection 时用于 GPG 签名验证的密钥环。
- 类型:
路径
- 添加版本:
2.13
- Ini:
- 节:
[galaxy]
- 键:
gpg_keyring
- 环境:
GALAXY_IGNORE_CERTS
- 描述:
如果设置为 yes,ansible-galaxy 将不会验证 TLS 证书。这对于针对具有自签名证书的服务器进行测试很有用。
- 类型:
布尔值
- Ini:
- 节:
[galaxy]
- 键:
ignore_certs
- 环境:
GALAXY_IGNORE_INVALID_SIGNATURE_STATUS_CODES
- 描述:
在 GPG 签名验证期间要忽略的 GPG 状态代码列表。有关状态代码说明,请参见 L(https://github.com/gpg/gnupg/blob/master/doc/DETAILS#general-status-codes)。如果成功验证 collection 的签名数量少于GALAXY_REQUIRED_VALID_SIGNATURE_COUNT,即使忽略所有错误代码,签名验证也会失败。
- 类型:
列表
- 选项:
EXPSIG
EXPKEYSIG
REVKEYSIG
BADSIG
ERRSIG
NO_PUBKEY
MISSING_PASSPHRASE
BAD_PASSPHRASE
NODATA
UNEXPECTED
ERROR
FAILURE
BADARMOR
KEYEXPIRED
KEYREVOKED
NO_SECKEY
- Ini:
- 节:
[galaxy]
- 键:
ignore_signature_status_codes
- 环境:
GALAXY_REQUIRED_VALID_SIGNATURE_COUNT
- 描述:
安装或验证 collection 时必须成功签名的数量。这应该是一个正整数或 all,表示所有签名都必须成功验证 collection。在值前面加上 +,如果 collection 没有有效的签名,则会失败。
- 类型:
字符串
- 默认值:
1
- Ini:
- 节:
[galaxy]
- 键:
required_valid_signature_count
- 环境:
GALAXY_ROLE_SKELETON
- 描述:
用作
ansible-galaxy
/ansible-galaxy role
中init
操作模板的角色骨架目录,与--role-skeleton
相同。- 类型:
路径
- Ini:
- 节:
[galaxy]
- 键:
role_skeleton
- 环境:
GALAXY_ROLE_SKELETON_IGNORE
- 描述:
Galaxy 角色或 collection 骨架目录中要忽略的文件模式。
- 类型:
列表
- 默认值:
['^.git$', '^.*/.git_keep$']
- Ini:
- 节:
[galaxy]
- 键:
role_skeleton_ignore
- 环境:
GALAXY_SERVER
- 描述:
角色未指定完整 URI 时要添加的前缀 URL,假定它们引用此服务器作为源。
- 默认值:
https://galaxy.ansible.com
- Ini:
- 节:
[galaxy]
- 键:
server
- 环境:
GALAXY_SERVER_LIST
- 描述:
安装 collection 时要使用的 Galaxy 服务器列表。该值对应于定义服务器详细信息的 config ini 标题
[galaxy_server.{{item}}]
。有关如何定义 Galaxy 服务器的更多详细信息,请参见Configuring the ansible-galaxy client。此列表中服务器的顺序用作解析 collection 的顺序。设置此配置选项将忽略GALAXY_SERVER配置选项。- 类型:
列表
- 添加版本:
2.9
- Ini:
- 节:
[galaxy]
- 键:
server_list
- 环境:
GALAXY_SERVER_TIMEOUT
- 描述:
Galaxy API 调用的默认超时时间。未配置特定超时的 Galaxy 服务器将回退到此值。
- 类型:
int
- 默认值:
60
- Ini:
- 节:
[galaxy]
- 键:
server_timeout
- 环境:
GALAXY_TOKEN_PATH
- 描述:
Galaxy 访问令牌文件的本地路径
- 类型:
路径
- 默认值:
{{ ANSIBLE_HOME ~ "/galaxy_token" }}
- 添加版本:
2.9
- Ini:
- 节:
[galaxy]
- 键:
token_path
- 环境:
HOST_KEY_CHECKING
- 描述:
如果要避免 Ansible 用于连接到主机的底层连接插件进行主机密钥检查,请将其设置为“False”。请阅读所用特定连接插件的文档以了解详细信息。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
host_key_checking
- 环境:
HOST_PATTERN_MISMATCH
- 描述:
此设置会更改不匹配主机模式的行为,它允许强制致命错误、警告或忽略它。
- 默认值:
警告
- 选项:
- 错误:
发出“致命”错误并停止剧本
- 警告:
发出警告但继续
- 忽略:
静默继续
- 添加版本:
2.8
- Ini:
- 节:
[inventory]
- 键:
host_pattern_mismatch
- 环境:
INJECT_FACTS_AS_VARS
- 描述:
事实可在ansible_facts变量中使用,此设置还会将它们作为它们自己的变量推送到主命名空间中。与ansible_facts字典内部不同的是,此处会从事实名称中删除前缀ansible_,这些事实将具有模块返回的精确名称。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.5
- Ini:
- 节:
[defaults]
- 键:
inject_facts_as_vars
- 环境:
INTERPRETER_PYTHON
- 描述:
要在远程目标上用于模块执行的 Python 解释器的路径,或自动发现模式。支持的发现模式包括
auto
(默认值)、auto_silent
、auto_legacy
和auto_legacy_silent
。所有发现模式都使用查找表来使用包含的系统 Python(在已知包含一个的分布上),如果平台特定的默认值不可用,则回退到已知 Python 解释器位置的固定有序列表。回退行为将发出警告,说明应显式设置解释器(因为以后安装的解释器可能会更改使用的解释器)。可以通过设置auto_silent
或auto_legacy_silent
来禁用此警告行为。auto_legacy
的值提供所有相同的功能,但为了与始终默认为/usr/bin/python
的旧版 Ansible 版本向后兼容,如果存在,将使用该解释器。- 默认值:
auto
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
interpreter_python
- 环境:
- 变量:
- 名称:
ansible_python_interpreter
INTERPRETER_PYTHON_FALLBACK
- 类型:
列表
- 默认值:
['python3.12', 'python3.11', 'python3.10', 'python3.9', 'python3.8', 'python3.7', '/usr/bin/python3', 'python3']
- 添加版本:
2.8
- 变量:
- 名称:
ansible_interpreter_python_fallback
INVALID_TASK_ATTRIBUTE_FAILED
- 描述:
如果为“false”,任务的无效属性将导致警告而不是错误。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.7
- Ini:
- 节:
[defaults]
- 键:
invalid_task_attribute_failed
- 环境:
INVENTORY_ANY_UNPARSED_IS_FAILED
- 描述:
如果设置为“true”,则当任何给定的清单源无法被任何可用的清单插件成功解析时,将发生致命错误;否则,这种情况只会发出警告。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.7
- Ini:
- 节:
[inventory]
- 键:
any_unparsed_is_failed
- 环境:
INVENTORY_CACHE_ENABLED
- 描述:
切换以启用清单缓存。此设置已移至各个清单插件作为插件选项 清单插件。现有配置设置仍然被接受,清单插件会从清单配置中添加其他选项。此消息将在 2.16 版本中移除。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[inventory]
- 键:
cache
- 环境:
INVENTORY_CACHE_PLUGIN
- 描述:
用于缓存清单的插件。此设置已移至各个清单插件作为插件选项 清单插件。现有配置设置仍然被接受,清单插件会从清单和事实缓存配置中添加其他选项。此消息将在 2.16 版本中移除。
- Ini:
- 节:
[inventory]
- 键:
cache_plugin
- 环境:
INVENTORY_CACHE_PLUGIN_CONNECTION
- 描述:
清单缓存连接。此设置已移至各个清单插件作为插件选项 清单插件。现有配置设置仍然被接受,清单插件会从清单和事实缓存配置中添加其他选项。此消息将在 2.16 版本中移除。
- Ini:
- 节:
[inventory]
- 键:
cache_connection
- 环境:
INVENTORY_CACHE_PLUGIN_PREFIX
- 描述:
缓存插件的表前缀。此设置已移至各个清单插件作为插件选项 清单插件。现有配置设置仍然被接受,清单插件会从清单和事实缓存配置中添加其他选项。此消息将在 2.16 版本中移除。
- 默认值:
ansible_inventory_
- Ini:
- 节:
[inventory]
- 键:
cache_prefix
- 环境:
INVENTORY_CACHE_TIMEOUT
- 描述:
清单缓存插件数据的过期超时时间。此设置已移至各个清单插件作为插件选项 清单插件。现有配置设置仍然被接受,清单插件会从清单和事实缓存配置中添加其他选项。此消息将在 2.16 版本中移除。
- 默认值:
3600
- Ini:
- 节:
[inventory]
- 键:
cache_timeout
- 环境:
INVENTORY_ENABLED
- 描述:
已启用的清单插件列表,它也决定了使用它们的顺序。
- 类型:
列表
- 默认值:
['host_list', 'script', 'auto', 'yaml', 'ini', 'toml']
- Ini:
- 节:
[inventory]
- 键:
enable_plugins
- 环境:
INVENTORY_EXPORT
- 描述:
控制 ansible-inventory 是否会准确反映 Ansible 对清单的视图,或者是否对其进行了导出优化。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[inventory]
- 键:
export
- 环境:
INVENTORY_IGNORE_EXTS
- 描述:
使用目录作为清单源时要忽略的扩展名列表。
- 类型:
列表
- 默认值:
{{(REJECT_EXTS + ('.orig', '.ini', '.cfg', '.retry'))}}
- Ini:
- 节:
[defaults]
- 键:
inventory_ignore_extensions
- 节:
[inventory]
- 键:
ignore_extensions
- 环境:
INVENTORY_IGNORE_PATTERNS
- 描述:
使用目录作为清单源时要忽略的模式列表。
- 类型:
列表
- 默认值:
[]
- Ini:
- 节:
[defaults]
- 键:
inventory_ignore_patterns
- 节:
[inventory]
- 键:
ignore_patterns
- 环境:
INVENTORY_UNPARSED_IS_FAILED
- 描述:
如果设置为“true”,则如果每个潜在的清单源都无法解析,则将发生致命错误;否则,这种情况只会发出警告。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[inventory]
- 键:
unparsed_is_failed
- 环境:
INVENTORY_UNPARSED_WARNING
- 描述:
默认情况下,当没有加载清单并指出它将使用隐式仅限本地的清单时,Ansible 将发出警告。可以通过将此设置调整为 False 来消除这些警告。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.14
- Ini:
- 节:
[inventory]
- 键:
inventory_unparsed_warning
- 环境:
LOCALHOST_WARNING
- 描述:
默认情况下,当清单中没有主机时,Ansible 将发出警告。可以通过将此设置调整为 False 来消除这些警告。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.6
- Ini:
- 节:
[defaults]
- 键:
localhost_warning
- 环境:
LOG_VERBOSITY
- 描述:
如果高于正常的显示详细程度,这将设置日志详细程度,否则它将与之匹配。
- 类型:
int
- 添加版本:
2.17
- Ini:
- 节:
[defaults]
- 键:
log_verbosity
- 环境:
MAX_FILE_SIZE_FOR_DIFF
- 描述:
要考虑用于差异显示的文件的最大大小。
- 类型:
int
- 默认值:
104448
- Ini:
- 节:
[defaults]
- 键:
max_diff_size
- 环境:
MODULE_IGNORE_EXTS
- 描述:
查找要加载的模块时要忽略的扩展名列表。这是为了拒绝脚本和二进制模块回退扩展名。
- 类型:
列表
- 默认值:
{{(REJECT_EXTS + ('.yaml', '.yml', '.ini'))}}
- Ini:
- 节:
[defaults]
- 键:
module_ignore_exts
- 环境:
MODULE_STRICT_UTF8_RESPONSE
- 描述:
启用是否评估模块响应中是否包含非 UTF-8 数据。禁用此选项可能会导致意外行为。只有 ansible-core 应该评估此配置。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
module_strict_utf8_response
- 环境:
NETCONF_SSH_CONFIG
- 描述:
此变量用于启用带有 netconf 连接的堡垒/跳转主机。如果设置为 True,则堡垒/跳转主机的 ssh 设置应存在于 ~/.ssh/config 文件中,或者可以将其设置为自定义 ssh 配置文件路径以读取堡垒/跳转主机的设置。
- 默认值:
无
- Ini:
- 节:
[netconf_connection]
- 键:
ssh_config
- 环境:
NETWORK_GROUP_MODULES
- 类型:
列表
- 默认值:
['eos', 'nxos', 'ios', 'iosxr', 'junos', 'enos', 'ce', 'vyos', 'sros', 'dellos9', 'dellos10', 'dellos6', 'asa', 'aruba', 'aireos', 'bigip', 'ironware', 'onyx', 'netconf', 'exos', 'voss', 'slxos']
- Ini:
- 节:
[defaults]
- 键:
network_group_modules
- 环境:
OLD_PLUGIN_CACHE_CLEARING
- 描述:
以前,Ansible 只会在加载新角色时清除一些插件加载缓存,这导致某些插件在之前的剧本中加载后会意外地“粘滞”。此设置允许用户恢复到该行为。
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
old_plugin_cache_clear
- 环境:
PAGER
- 默认值:
less
- Ini:
- 节:
[defaults]
- 键:
pager :Version Added: 2.15
- 环境:
- 变量:
- 添加版本:
2.15
- 变量:
PARAMIKO_HOST_KEY_AUTO_ADD
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[paramiko_connection]
- 键:
host_key_auto_add
- 环境:
- 已弃用:
2.20
- 弃用详情:
此选项已移动到插件本身
- 已弃用的替代方案:
使用插件本身的选项。
PARAMIKO_LOOK_FOR_KEYS
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[paramiko_connection]
- 键:
look_for_keys
- 环境:
- 已弃用:
2.20
- 弃用详情:
此选项已移动到插件本身
- 已弃用的替代方案:
使用插件本身的选项。
PERSISTENT_COMMAND_TIMEOUT
- 描述:
此选项控制等待远程设备响应的时间,超时后将终止持久连接。
- 类型:
int
- 默认值:
30
- Ini:
- 节:
[persistent_connection]
- 键:
command_timeout
- 环境:
PERSISTENT_CONNECT_RETRY_TIMEOUT
- 描述:
此选项控制持久连接连接到本地域套接字的重试超时。
- 类型:
整数
- 默认值:
15
- Ini:
- 节:
[persistent_connection]
- 键:
connect_retry_timeout
- 环境:
PERSISTENT_CONNECT_TIMEOUT
- 描述:
此选项控制持久连接在销毁之前保持空闲的时间。
- 类型:
整数
- 默认值:
30
- Ini:
- 节:
[persistent_connection]
- 键:
connect_timeout
- 环境:
PERSISTENT_CONTROL_PATH_DIR
- 描述:
连接持久性系统使用的套接字路径。
- 类型:
路径
- 默认值:
{{ ANSIBLE_HOME ~ "/pc" }}
- Ini:
- 节:
[persistent_connection]
- 键:
control_path_dir
- 环境:
PLAYBOOK_DIR
- 描述:
许多非剧本CLI都有一个
--playbook-dir
参数;此选项设置它的默认值。- 类型:
路径
- 添加版本:
2.9
- Ini:
- 节:
[defaults]
- 键:
playbook_dir
- 环境:
PLAYBOOK_VARS_ROOT
- 描述:
此选项设置哪些剧本目录将用作处理vars插件的根目录,包括查找host_vars/group_vars。
- 默认值:
top
- 选项:
- top:
遵循传统的行为,使用链中的顶级剧本查找根目录。
- bottom:
遵循2.4.0的行为,使用当前剧本查找根目录。
- all:
检查从第一个父级到当前剧本。
- 添加版本:
2.4.1
- Ini:
- 节:
[defaults]
- 键:
playbook_vars_root
- 环境:
PLUGIN_FILTERS_CFG
- 描述:
过滤系统上安装的哪些插件允许使用的配置路径。有关过滤器文件格式的详细信息,请参见拒绝模块。默认值为/etc/ansible/plugin_filters.yml
- 类型:
路径
- 默认值:
无
- 添加版本:
2.5.0
- Ini:
- 节:
[defaults]
- 键:
plugin_filters_cfg
PYTHON_MODULE_RLIMIT_NOFILE
- 描述:
在执行Python模块时尝试将RLIMIT_NOFILE软限制设置为指定的值(可以加快Python 2.x上的子进程使用速度。参见https://bugs.python.org/issue11284)。该值将受现有硬限制的限制。值为0表示不尝试调整现有系统定义的限制。
- 默认值:
0
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
python_module_rlimit_nofile
- 环境:
- 变量:
- 名称:
ansible_python_module_rlimit_nofile
RETRY_FILES_ENABLED
- 描述:
此选项控制Ansible playbook失败时是否应创建.retry文件。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
retry_files_enabled
- 环境:
RETRY_FILES_SAVE_PATH
- 描述:
此选项设置Ansible在playbook失败且启用重试文件时保存.retry文件的路径。此文件将在每次运行后被覆盖,其中包含所有play中失败主机的列表。
- 类型:
路径
- 默认值:
无
- Ini:
- 节:
[defaults]
- 键:
retry_files_save_path
- 环境:
RUN_VARS_PLUGINS
- 描述:
此设置可用于根据用户的清单大小和play选择优化vars_plugin的使用。
- 类型:
字符串
- 默认值:
demand
- 选项:
- demand:
将在任务“需要”变量时相对于清单源运行vars_plugins。
- start:
将在导入该清单源后相对于清单源运行vars_plugins。
- 添加版本:
2.10
- Ini:
- 节:
[defaults]
- 键:
run_vars_plugins
- 环境:
SHOW_CUSTOM_STATS
- 描述:
这会将通过set_stats插件设置的自定义统计信息添加到默认输出中。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
show_custom_stats
- 环境:
STRING_CONVERSION_ACTION
- 描述:
将模块参数值转换为字符串时要采取的操作(这不会影响变量)。对于字符串参数,诸如“1.00”、“['a', 'b',]”和“yes”、“y”等值将被YAML解析器转换,除非完全用引号括起来。有效选项为“error”、“warn”和“ignore”。从2.8开始,此选项默认为“warn”,但在2.12中将更改为“error”。
- 类型:
字符串
- 默认值:
warn
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
string_conversion_action
- 环境:
- 已弃用:
2.19
- 弃用详情:
此选项不再用于Ansible Core代码库中。
- 已弃用的替代方案:
目前没有替代方案。必须在当前代码库中实现不同的机制。
STRING_TYPE_FILTERS
- 描述:
此过滤器列表在模板化变量时避免“类型转换”。例如,当您想避免将JSON字符串转换为列表或字典时,这很有用。
- 类型:
列表
- 默认值:
['string', 'to_json', 'to_nice_json', 'to_yaml', 'to_nice_yaml', 'ppretty', 'json']
- Ini:
- 节:
[jinja2]
- 键:
dont_type_filters
- 环境:
SYSTEM_WARNINGS
- 描述:
允许禁用与运行Ansible本身的系统(而不是受管理的主机)上潜在问题相关的警告。这些可能包括关于第三方包或其他应尽可能解决的条件的警告。
- 类型:
布尔值
- 默认值:
True
- Ini:
- 节:
[defaults]
- 键:
system_warnings
- 环境:
TARGET_LOG_INFO
- 描述:
要插入目标日志以进行跟踪的字符串。
- 添加版本:
2.17
- Ini:
- 节:
[defaults]
- 键:
target_log_info
- 环境:
- 变量:
- 名称:
ansible_target_log_info
TASK_DEBUGGER_IGNORE_ERRORS
- 描述:
此选项定义当指定ignore_errors=True时,任务调试器是否会在失败的任务上被调用。True指定调试器将遵守ignore_errors,而False将不遵守ignore_errors。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.7
- Ini:
- 节:
[defaults]
- 键:
task_debugger_ignore_errors
- 环境:
TASK_TIMEOUT
- 描述:
设置任务可以运行的最长时间(以秒为单位)。如果设置为0(默认值),则没有超时。
- 类型:
整数
- 默认值:
0
- 添加版本:
2.10
- Ini:
- 节:
[defaults]
- 键:
task_timeout
- 环境:
TRANSFORM_INVALID_GROUP_CHARS
- 描述:
使ansible转换清单源提供的组名中的无效字符。
- 类型:
字符串
- 默认值:
never
- 选项:
- always:
它会将任何无效字符替换为“_”(下划线)并警告用户。
- never:
它允许组名,但会警告该问题。
- 忽略:
它与“never”相同,不会发出警告。
- silently:
它与“always”相同,不会发出警告。
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
force_valid_group_names
- 环境:
USE_PERSISTENT_CONNECTIONS
- 描述:
切换连接的持久性使用。
- 类型:
布尔值
- 默认值:
False
- Ini:
- 节:
[defaults]
- 键:
use_persistent_connections
- 环境:
VALIDATE_ACTION_GROUP_METADATA
- 描述:
一个开关,用于禁用为module_defaults操作组验证集合的“metadata”条目。当此值为True时,包含意外字段或值类型的元数据将产生警告。
- 类型:
布尔值
- 默认值:
True
- 添加版本:
2.12
- Ini:
- 节:
[defaults]
- 键:
validate_action_group_metadata
- 环境:
VARIABLE_PLUGINS_ENABLED
- 描述:
接受需要它的变量插件列表。
- 类型:
列表
- 默认值:
['host_group_vars']
- 添加版本:
2.10
- Ini:
- 节:
[defaults]
- 键:
vars_plugins_enabled
- 环境:
VARIABLE_PRECEDENCE
- 描述:
允许更改组变量优先级合并顺序。
- 类型:
列表
- 默认值:
['all_inventory', 'groups_inventory', 'all_plugins_inventory', 'all_plugins_play', 'groups_plugins_inventory', 'groups_plugins_play']
- 添加版本:
2.4
- Ini:
- 节:
[defaults]
- 键:
precedence
- 环境:
VAULT_ENCRYPT_SALT
- 描述:
用于保管库加密的密钥。如果未提供,则将使用随机密钥。
- 默认值:
无
- 添加版本:
2.15
- Ini:
- 节:
[defaults]
- 键:
vault_encrypt_salt
- 环境:
VERBOSE_TO_STDERR
- 描述:
强制“verbose”选项使用stderr而不是stdout
- 类型:
布尔值
- 默认值:
False
- 添加版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
verbose_to_stderr
- 环境:
WIN_ASYNC_STARTUP_TIMEOUT
- 描述:
对于Ansible中的异步任务(在异步操作和轮询中介绍),这是等待Ansible生成的异步任务连接到Windows系统上使用的命名管道的时间(以秒为单位)。默认为5秒。在较慢的系统或负载较重的系统上,这可能太低了。这并非异步命令可以运行的总时间,而是等待异步命令启动的单独超时。只有在连接到管道后,才会根据其async_timeout对任务计时,因此任务可以持续的总最大持续时间将在此处指定的时间量上延长。
- 类型:
整数
- 默认值:
5
- 添加版本:
2.10
- Ini:
- 节:
[defaults]
- 键:
win_async_startup_timeout
- 环境:
- 变量:
- 名称:
ansible_win_async_startup_timeout
WORKER_SHUTDOWN_POLL_COUNT
- 描述:
检查任务队列管理器工作进程以验证它们是否已干净退出时的最大次数。达到此限制后,任何仍在运行的工作进程都将被终止。这仅供内部使用。
- 类型:
整数
- 默认值:
0
- 添加版本:
2.10
- 环境:
WORKER_SHUTDOWN_POLL_DELAY
- 描述:
检查任务队列管理器工作进程以验证它们是否已干净退出时,轮询循环之间休眠的秒数。这仅供内部使用。
- 类型:
float
- 默认值:
0.1
- 添加版本:
2.10
- 环境:
YAML_FILENAME_EXTENSIONS
- 描述:
查找应为YAML或JSON或这些文件的保管库版本的“变量”文件时,检查所有这些扩展名。这会影响vars_files、include_vars、inventory和vars插件等。
- 类型:
列表
- 默认值:
['.yml', '.yaml', '.json']
- Ini:
- 节:
[defaults]
- 键:
yaml_valid_extensions
- 环境:
环境变量
可在所有集合环境变量索引中找到配置集合中插件的其他环境变量。
- ANSIBLE_CONFIG
覆盖默认的ansible配置文件
- ANSIBLE_HOME
控制器上 Ansible 配置文件的默认根路径。
另请参见 ANSIBLE_HOME
- ANSIBLE_CONNECTION_PATH
指定查找ansible-connection脚本的位置。在搜索$PATH之前,将检查此位置。如果为空,ansible将从与ansible脚本相同的目录启动。
- ANSIBLE_COW_SELECTION
这允许您为横幅选择特定的cowsay模板或使用“random”循环遍历它们。
- ANSIBLE_COW_ACCEPTLIST
接受cowsay模板列表,这些模板是“安全的”,如果要启用所有已安装的模板,则将其设置为空列表。
- 添加版本:
2.11
- ANSIBLE_FORCE_COLOR
即使在没有 TTY 或“nocolor”设置为 True 的情况下运行,此选项也会强制颜色模式。
另请参见 ANSIBLE_FORCE_COLOR
- ANSIBLE_NOCOLOR
此设置允许抑制输出颜色,用于更好地指示失败和状态信息。
另请参见 ANSIBLE_NOCOLOR
- NO_COLOR
此设置允许抑制输出颜色,用于更好地指示失败和状态信息。
另请参见 ANSIBLE_NOCOLOR
- 添加版本:
2.11
- ANSIBLE_NOCOWS
如果您安装了cowsay但想避免“奶牛”(为什么?),请使用此选项。
另请参见 ANSIBLE_NOCOWS
- ANSIBLE_COW_PATH
指定自定义cowsay路径或替换您选择的cowsay实现。
另请参见 ANSIBLE_COW_PATH
- ANSIBLE_PIPELINING
这是一个全局选项,每个连接插件都可以通过拥有更具体的选项或根本不支持流水线来覆盖。如果连接插件支持流水线,则通过在不实际传输文件的情况下执行许多Ansible模块,可以减少执行远程服务器上的模块所需的网络操作次数。启用后,可以显著提高性能。但是,这与权限提升(become)冲突。例如,当使用“sudo:”操作时,必须首先在所有托管主机上的/etc/sudoers中禁用“requiretty”,这就是默认情况下将其禁用的原因。如果启用
ANSIBLE_KEEP_REMOTE_FILES
,则此设置将被禁用。另请参见 ANSIBLE_PIPELINING
- ANSIBLE_ANY_ERRORS_FATAL
设置 any_errors_fatal 关键字的默认值,如果为 True,任务失败将被视为致命错误。
另请参见 ANY_ERRORS_FATAL
- ANSIBLE_BECOME_ALLOW_SAME_USER
当
False``(默认值)时,Ansible将跳过使用become,如果远程用户与become用户相同,因为这通常是冗余操作。换句话说,root sudo到root。如果``True
,这将强制Ansible无论如何使用become插件,因为某些情况下需要这样做。
- ANSIBLE_BECOME_PASSWORD_FILE
用于become插件的密码文件。
--become-password-file
。如果可执行,它将运行,并且生成的stdout将用作密码。另请参见 BECOME_PASSWORD_FILE
- ANSIBLE_AGNOSTIC_BECOME_PROMPT
显示一个通用的 become 提示,而不是显示包含命令行提供的 become 方法的提示。
- ANSIBLE_CACHE_PLUGIN
选择要使用的缓存插件,默认的“memory”是短暂的。
另请参见 CACHE_PLUGIN
- ANSIBLE_CACHE_PLUGIN_CONNECTION
定义缓存插件的连接或路径信息。
- ANSIBLE_CACHE_PLUGIN_PREFIX
缓存插件文件/表的前缀。
另请参见 CACHE_PLUGIN_PREFIX
- ANSIBLE_CACHE_PLUGIN_TIMEOUT
缓存插件数据的过期超时时间。
另请参见 CACHE_PLUGIN_TIMEOUT
- ANSIBLE_COLLECTIONS_SCAN_SYS_PATH
一个布尔值,用于启用或禁用扫描 sys.path 以查找已安装的集合。
- ANSIBLE_COLLECTIONS_PATHS
Ansible 将在其中搜索集合内容的冒号分隔路径。集合必须位于嵌套的*子目录*中,而不能直接位于这些目录中。例如,如果
COLLECTIONS_PATHS
包含'{{ ANSIBLE_HOME ~ "/collections" }}'
,并且您想将my.collection
添加到该目录,则必须将其保存为'{{ ANSIBLE_HOME} ~ "/collections/ansible_collections/my/collection" }}'
。另请参见 COLLECTIONS_PATHS
- 已弃用:
2.19
- 弃用详情:
不符合变量命名规范,请使用单数形式 ANSIBLE_COLLECTIONS_PATH
- ANSIBLE_COLLECTIONS_PATH
Ansible 将在其中搜索集合内容的冒号分隔路径。集合必须位于嵌套的*子目录*中,而不能直接位于这些目录中。例如,如果
COLLECTIONS_PATHS
包含'{{ ANSIBLE_HOME ~ "/collections" }}'
,并且您想将my.collection
添加到该目录,则必须将其保存为'{{ ANSIBLE_HOME} ~ "/collections/ansible_collections/my/collection" }}'
。另请参见 COLLECTIONS_PATHS
- 添加版本:
2.10
- ANSIBLE_COLLECTIONS_ON_ANSIBLE_VERSION_MISMATCH
当加载的集合不支持正在运行的 Ansible 版本时(使用集合元数据键requires_ansible)。
- ANSIBLE_COLOR_CHANGED
定义在“已更改”任务状态下使用的颜色。
另请参见 COLOR_CHANGED
- ANSIBLE_COLOR_CONSOLE_PROMPT
定义用于 ansible-console 的默认颜色。
- ANSIBLE_COLOR_DEBUG
定义发出调试消息时使用的颜色。
另见 COLOR_DEBUG
- ANSIBLE_COLOR_DEPRECATE
定义发出弃用消息时使用的颜色。
- ANSIBLE_COLOR_DIFF_ADD
定义在差异中显示添加的行时使用的颜色。
- ANSIBLE_COLOR_DIFF_LINES
定义显示差异时使用的颜色。
- ANSIBLE_COLOR_DIFF_REMOVE
定义在差异中显示删除的行时使用的颜色。
- ANSIBLE_COLOR_ERROR
定义发出错误消息时使用的颜色。
另见 COLOR_ERROR
- ANSIBLE_COLOR_HIGHLIGHT
定义用于突出显示的颜色。
- ANSIBLE_COLOR_SKIP
定义显示“已跳过”任务状态时使用的颜色。
另见 COLOR_SKIP
- ANSIBLE_COLOR_UNREACHABLE
定义在“不可达”状态下使用的颜色。
- ANSIBLE_COLOR_VERBOSE
定义发出详细消息时使用的颜色。换句话说,就是使用“-v”显示的消息。
- ANSIBLE_COLOR_WARN
定义发出警告消息时使用的颜色。
另见 COLOR_WARN
- ANSIBLE_CONNECTION_PASSWORD_FILE
要用于连接插件的密码文件。
--connection-password-file
。
- _ANSIBLE_COVERAGE_REMOTE_OUTPUT
设置远程主机上的输出目录,用于生成代码覆盖率报告。目前仅用于 PowerShell 模块的远程代码覆盖率。此选项仅供内部使用。
- _ANSIBLE_COVERAGE_REMOTE_PATH_FILTER
Ansible 控制端上文件的路径列表,用于在远程主机上执行代码覆盖率测试。只有与路径通配符匹配的文件才会收集其覆盖率数据。可以指定多个路径通配符,并用
:
分隔。目前仅用于 PowerShell 模块的远程代码覆盖率。此选项仅供内部使用。
- ANSIBLE_ACTION_WARNINGS
默认情况下,Ansible 会发出从任务操作(模块或操作插件)接收到的警告。可以通过将此设置调整为 False 来取消这些警告。
- ANSIBLE_LOCALHOST_WARNING
默认情况下,当清单中没有主机时,Ansible 会发出警告。可以通过将此设置调整为 False 来取消这些警告。
- ANSIBLE_LOG_VERBOSITY
如果高于正常的显示详细程度,这将设置日志详细程度,否则它将与之匹配。
- ANSIBLE_INVENTORY_UNPARSED_WARNING
默认情况下,当没有加载清单并且 Ansible 注意到它将使用隐式的仅限本地的清单时,它会发出警告。可以通过将此设置调整为 False 来取消这些警告。
- ANSIBLE_DOC_FRAGMENT_PLUGINS
Ansible 将在其中搜索文档片段插件的冒号分隔路径。
- ANSIBLE_ACTION_PLUGINS
Ansible将搜索Action插件的冒号分隔路径。
- ANSIBLE_ASK_PASS
这控制Ansible剧本是否应提示输入登录密码。如果使用SSH密钥进行身份验证,则可能不需要更改此设置。
- ANSIBLE_ASK_VAULT_PASS
这控制Ansible剧本是否应提示输入Vault密码。
- ANSIBLE_BECOME
切换特权升级的使用,允许您在登录后“成为”另一个用户。
- ANSIBLE_BECOME_ASK_PASS
切换以提示输入特权升级密码。
- ANSIBLE_BECOME_METHOD
启用become时使用的特权升级方法。
- ANSIBLE_BECOME_EXE
用于特权升级的可执行文件,否则Ansible将依赖于PATH。
- ANSIBLE_BECOME_FLAGS
传递给特权升级可执行文件的标志。
- ANSIBLE_BECOME_PLUGINS
Ansible 将在其中搜索 Become 插件的冒号分隔路径。
- ANSIBLE_BECOME_USER
使用特权升级时,您的登录/远程用户“成为”的用户,大多数系统在未指定用户时将使用“root”。
- ANSIBLE_CACHE_PLUGINS
Ansible将搜索Cache插件的冒号分隔路径。
- ANSIBLE_CALLBACK_PLUGINS
Ansible将搜索Callback插件的冒号分隔路径。
- ANSIBLE_CALLBACKS_ENABLED
已启用的回调列表,并非所有回调都需要启用,但 Ansible 附带的许多回调都需要启用,因为我们不想默认激活它们。
- 添加版本:
2.11
- ANSIBLE_CLICONF_PLUGINS
Ansible将搜索Cliconf插件的冒号分隔路径。
- ANSIBLE_CONNECTION_PLUGINS
Ansible将搜索Connection插件的冒号分隔路径。
- ANSIBLE_DEBUG
切换Ansible中的调试输出。这非常冗长,可能会妨碍多进程处理。即使启用了no_log设置,调试输出也可能包含秘密信息,这意味着不应在生产环境中使用调试模式。
- ANSIBLE_EXECUTABLE
这指示用于在其下生成shell的命令,这是Ansible在目标上执行需求所必需的。在shell使用受到限制的罕见情况下,用户可能需要更改此设置,但在大多数情况下,可以保持原样。
- ANSIBLE_FACT_PATH
此选项允许您全局配置“local_facts”的自定义路径,用于使用事实收集时的隐式 ansible_collections.ansible.builtin.setup_module 任务。如果未设置,它将回退到
ansible.builtin.setup
模块的默认值:/etc/ansible/facts.d
。这**不会**影响使用ansible.builtin.setup
模块的用户定义的任务。隐式任务创建的实际操作是ansible.legacy.gather_facts
模块,该模块随后调用配置的事实模块,默认情况下,对于 POSIX 系统,这将是ansible.builtin.setup
,但其他平台可能有不同的默认值。
- ANSIBLE_FILTER_PLUGINS
Ansible将搜索Jinja2 Filter插件的冒号分隔路径。
- ANSIBLE_FORCE_HANDLERS
此选项控制是否即使主机发生故障,通知处理程序也会在主机上运行。如果设置为 false,则如果主机发生故障,处理程序将不会运行。这也可以在每个剧本或命令行中设置。有关详细信息,请参阅处理程序和故障。
- ANSIBLE_FORKS
Ansible用于在目标主机上执行任务的最大分叉数。
另请参阅 DEFAULT_FORKS
- ANSIBLE_GATHERING
此设置控制事实收集(关于远程系统发现的事实)的默认策略。此选项对于希望节省事实收集时间的用户非常有用。“smart”和“explicit”都将使用缓存插件。
另请参阅 DEFAULT_GATHERING
- ANSIBLE_GATHER_SUBSET
为隐式事实收集中的 ansible_collections.ansible.builtin.setup_module 任务设置 gather_subset 选项。有关详细信息,请参阅模块文档。它**不**适用于用户定义的
ansible.builtin.setup
任务。
- ANSIBLE_GATHER_TIMEOUT
设置隐式事实收集的超时时间(以秒为单位),有关详细信息,请参阅模块文档。它**不**适用于用户定义的 ansible_collections.ansible.builtin.setup_module 任务。
- ANSIBLE_HASH_BEHAVIOUR
此设置控制 Ansible 如何处理字典变量(又名哈希、映射、关联数组)的重复定义。这不会影响值为标量(整数、字符串)或数组的变量。**警告**,不建议更改此设置,因为它很脆弱,会使您的内容(剧本、角色、集合)不可移植,导致持续混淆和误用。除非您认为绝对需要,否则不要更改此设置。我们建议避免重用变量名,并依赖
combine
过滤器以及vars
和varnames
查找来创建单个变量的合并版本。根据我们的经验,这很少需要,并且表示数据结构和剧本中引入了过多的复杂性。对于某些用途,您还可以查看自定义 vars_plugins 以合并输入,甚至替换负责解析host_vars/
和group_vars/
目录的默认host_group_vars
。此设置的大多数用户只对清单范围感兴趣,但设置本身会影响所有来源,并使调试更加困难。官方示例存储库中的所有剧本和角色都假设此设置的默认值。将设置更改为merge
将应用于所有变量源,但许多源在内部仍然会覆盖变量。例如,include_vars
将在更新 Ansible 之前在内部对变量进行重复数据删除,其中“最后定义的”将覆盖同一文件中之前的定义。Ansible 项目建议您**避免为新项目使用“merge”**。Ansible 开发人员的意图是最终弃用并删除此设置,但它被保留下来,因为一些用户确实非常依赖它。新项目应该**避免使用“merge”**。
- ANSIBLE_INVENTORY
Ansible 清单源的逗号分隔列表
另请参阅 DEFAULT_HOST_LIST
- ANSIBLE_HTTPAPI_PLUGINS
Ansible 将在其中搜索 HttpApi 插件的冒号分隔路径。
- ANSIBLE_INVENTORY_PLUGINS
Ansible 将在其中搜索清单插件的冒号分隔路径。
- ANSIBLE_JINJA2_EXTENSIONS
这是一个面向开发人员的功能,允许启用其他 Jinja2 扩展。有关详细信息,请参阅 Jinja2 文档。如果您不知道这些功能的作用,您可能不需要更改此设置 :)
- ANSIBLE_JINJA2_NATIVE
此选项在模板操作期间保留变量类型。
- ANSIBLE_KEEP_REMOTE_FILES
启用/禁用清理 Ansible 用于在远程执行任务的临时文件。如果启用此选项,它将禁用
ANSIBLE_PIPELINING
。
- ANSIBLE_LIBVIRT_LXC_NOSECLABEL
此设置导致 libvirt 通过将
--noseclabel
参数传递给virsh
命令来连接到 LXC 容器。在没有 SELinux 的系统上运行时,这是必需的。
- ANSIBLE_LOAD_CALLBACK_PLUGINS
控制在运行 /usr/bin/ansible 时是否加载回调插件。这可用于记录命令行活动、发送通知等。对于
ansible-playbook
,始终加载回调插件。
- ANSIBLE_LOCAL_TEMP
Ansible 在控制器上使用的临时目录。
另请参阅 DEFAULT_LOCAL_TMP
- ANSIBLE_LOG_PATH
Ansible 将在控制器上记录到的文件。为空时,日志记录被禁用。
另请参阅 DEFAULT_LOG_PATH
- ANSIBLE_LOG_FILTER
要从日志文件中过滤掉的日志记录器名称列表。
另请参阅 DEFAULT_LOG_FILTER
- ANSIBLE_LOOKUP_PLUGINS
Ansible 将用于搜索查找插件的冒号分隔路径。
- ANSIBLE_MODULE_ARGS
这将设置传递给
ansible
adhoc 二进制文件的默认参数,如果未指定-a
。另请参阅 DEFAULT_MODULE_ARGS
- ANSIBLE_LIBRARY
Ansible 将用于搜索模块的冒号分隔路径。
另请参阅 DEFAULT_MODULE_PATH
- ANSIBLE_MODULE_UTILS
Ansible 将用于搜索模块实用程序文件的冒号分隔路径,这些文件由模块共享。
- ANSIBLE_NETCONF_PLUGINS
Ansible 将用于搜索 Netconf 插件的冒号分隔路径。
- ANSIBLE_NO_LOG
切换 Ansible 对任务详细信息的显示和日志记录,主要用于避免安全泄露。
另请参阅 DEFAULT_NO_LOG
- ANSIBLE_NO_TARGET_SYSLOG
在 Ansible 执行任务时,切换 Ansible 到目标的 syslog 日志记录。在 Windows 主机上,这将禁用较新的 PowerShell 模块写入事件日志。
- ANSIBLE_NULL_REPRESENTATION
模板应返回什么作为“空”值。未设置时,它将让 Jinja2 决定。
- ANSIBLE_POLL_INTERVAL
对于 Ansible 中的异步任务(在异步操作和轮询中介绍),这是在未提供显式轮询间隔时,多久检查一次这些任务状态的频率。默认值为相当适中的 15 秒,这是频繁检查和在某些内容可能已完成时提供快速周转之间的折衷。
- ANSIBLE_PRIVATE_KEY_FILE
对于使用证书或密钥文件而不是代理或密码进行身份验证的连接,您可以在此处设置默认值以避免每次调用都重新指定
--private-key
。
- ANSIBLE_PRIVATE_ROLE_VARS
默认情况下,导入的角色会将其变量发布到剧本和其他角色,此设置可以避免这种情况。这是为了在剧本中多次使用角色时将角色变量重置为默认值而引入的。从版本“2.17”开始,M(ansible.builtin.include_roles) 和 M(ansible.builtin.import_roles) 可以通过 C(public) 参数单独覆盖此设置。包含的角色仅在其执行时公开其变量,这与在剧本编译时发生的情况不同。
- ANSIBLE_REMOTE_PORT
在远程连接中使用的端口,为空时将使用连接插件默认值。
另请参阅 DEFAULT_REMOTE_PORT
- ANSIBLE_REMOTE_USER
设置目标机器的登录用户。为空时,它使用连接插件的默认值,通常是当前执行 Ansible 的用户。
另请参阅 DEFAULT_REMOTE_USER
- ANSIBLE_ROLES_PATH
Ansible 将用于搜索角色的冒号分隔路径。
另请参阅 DEFAULT_ROLES_PATH
- ANSIBLE_SELINUX_SPECIAL_FS
某些文件系统不支持安全操作和/或返回不一致的错误,此设置使 Ansible “容忍” 列表中的这些文件系统,而不会导致致命错误。当文件系统在列表中时,可能会发生数据损坏,并且写入并不总是经过验证。
另请参见 DEFAULT_SELINUX_SPECIAL_FS
- 添加版本:
2.9
- ANSIBLE_STDOUT_CALLBACK
设置用于显示 Ansible 输出的主要回调。一次只能有一个。您可以拥有许多其他回调,但只有一个可以负责标准输出。请参见 回调插件,了解可用选项的列表。
- ANSIBLE_ENABLE_TASK_DEBUGGER
是否启用任务调试器,以前这是作为策略插件完成的。现在所有策略插件都可以继承此行为。当任务在无法访问时失败时,调试器默认激活。使用 debugger 关键字可以获得更大的灵活性。
另请参见 ENABLE_TASK_DEBUGGER
- ANSIBLE_TASK_DEBUGGER_IGNORE_ERRORS
此选项定义当指定 ignore_errors=True 时,任务调试器是否会在失败的任务上调用。True 指定调试器将遵守 ignore_errors,而 False 将不遵守 ignore_errors。
- ANSIBLE_STRATEGY
设置用于剧本的默认策略。
另请参见 DEFAULT_STRATEGY
- ANSIBLE_STRATEGY_PLUGINS
Ansible 将用于搜索策略插件的冒号分隔路径。
- ANSIBLE_SU
切换任务中“su”的使用。
另请参见 DEFAULT_SU
- ANSIBLE_SYSLOG_FACILITY
Ansible 记录到远程目标时使用的 syslog 设施。
- ANSIBLE_TERMINAL_PLUGINS
Ansible 将用于搜索终端插件的冒号分隔路径。
- ANSIBLE_TEST_PLUGINS
Ansible 将用于搜索 Jinja2 测试插件的冒号分隔路径。
- ANSIBLE_TIMEOUT
这是连接插件使用的默认超时时间。
另请参见 DEFAULT_TIMEOUT
- ANSIBLE_TRANSPORT
可以是 Ansible 安装中可用的任何连接插件。还有一个(已弃用)特殊的“智能”选项,它将根据控制器操作系统和 SSH 版本在“ssh”和“paramiko”之间切换。
另请参见 DEFAULT_TRANSPORT
- ANSIBLE_ERROR_ON_UNDEFINED_VARS
设置为 True 时,这将导致 Ansible 模板处理在引用可能拼写错误的变量名的步骤中失败。否则,任何包含未定义变量的 "{{ template_expression }}" 都将按原样在模板或 Ansible 动作行中呈现。
- ANSIBLE_VARS_PLUGINS
Ansible 将在其中搜索变量插件的冒号分隔路径。
- ANSIBLE_VAULT_ID_MATCH
如果为 true,则使用 vault id 解密保管库只会尝试来自匹配 vault-id 的密码。
- ANSIBLE_VAULT_IDENTITY
在未提供 vault id 标签的情况下,用于默认 vault id 标签的标签。
- ANSIBLE_VAULT_ENCRYPT_SALT
用于保管库加密的密钥。如果未提供,则将使用随机密钥。
另请参见 VAULT_ENCRYPT_SALT
- ANSIBLE_VAULT_ENCRYPT_IDENTITY
默认情况下用于加密的 vault_id。如果提供了多个 vault_id,则这指定用于加密的 vault_id。
--encrypt-vault-id
CLI 选项会覆盖配置的值。
- ANSIBLE_VAULT_IDENTITY_LIST
默认情况下使用的 vault-id 列表。等效于多个
--vault-id
参数。Vault-id 按顺序尝试。
- ANSIBLE_VAULT_PASSWORD_FILE
要使用的密钥库密码文件。等效于
--vault-password-file
或--vault-id
。如果可执行,它将运行,生成的标准输出将用作密码。
- ANSIBLE_VERBOSITY
设置默认详细程度,相当于命令行中传递的
-v
数量。另请参见 DEFAULT_VERBOSITY
- ANSIBLE_DEPRECATION_WARNINGS
切换以控制是否显示弃用警告
另请参见 DEPRECATION_WARNINGS
- ANSIBLE_DEVEL_WARNING
切换以控制是否显示与运行开发相关的警告。
另请参见 DEVEL_WARNING
- ANSIBLE_DIFF_ALWAYS
配置切换,指示模块在“已更改”状态下显示差异,相当于
--diff
。另请参见 DIFF_ALWAYS
- ANSIBLE_DIFF_CONTEXT
显示文件差异时要显示的上下文行数。
另请参见 DIFF_CONTEXT
- ANSIBLE_DISPLAY_ARGS_TO_STDOUT
通常情况下,
ansible-playbook
会为每个运行的任务打印一个标题。如果您指定了名称,这些标题将包含任务中的 name: 字段。如果您没有指定,则ansible-playbook
使用任务的操作来帮助您判断当前正在运行哪个任务。有时您会运行许多相同的操作,因此您需要更多有关任务的信息才能将其与其他相同操作的任务区分开来。如果在配置中将此变量设置为 True,则ansible-playbook
还将在标题中包含任务的参数。此设置默认为 False,因为您的参数中可能包含敏感值,您不希望打印这些值。如果您将其设置为 True,则应确保已保护环境的标准输出(没有人可以窥探您的屏幕,并且您没有将标准输出保存到不安全的文件中)或确保所有剧本都明确添加了no_log: True
参数到具有敏感值的 task 中 如何在剧本中保留秘密数据? 了解更多信息。
- ANSIBLE_DISPLAY_SKIPPED_HOSTS
切换以控制在默认回调中显示任务中跳过的任务/主机条目。
- ANSIBLE_DUPLICATE_YAML_DICT_KEY
默认情况下,当在 YAML 中遇到重复的字典键时,Ansible 将发出警告。可以通过将此设置调整为 False 来消除这些警告。
- ANSIBLE_ERROR_ON_MISSING_HANDLER
切换以允许缺失的处理程序在通知时变为警告而不是错误。
- ANSIBLE_FACTS_MODULES
在剧本的事实收集阶段运行哪些模块,使用默认的“smart”将尝试根据连接类型确定它。如果添加您自己的模块,但您仍然想使用默认的 Ansible 事实,则需要将“setup”或相应的网络模块包含到列表中(如果您添加“smart”,Ansible 也会确定它)。这不会影响对“setup”模块的显式调用,但始终会影响“gather_facts”操作(隐式或显式)。
另请参见 FACTS_MODULES
- ANSIBLE_GALAXY_IGNORE
如果设置为 yes,ansible-galaxy 将不会验证 TLS 证书。这对于针对具有自签名证书的服务器进行测试很有用。
另请参见 GALAXY_IGNORE_CERTS
- ANSIBLE_GALAXY_SERVER_TIMEOUT
Galaxy API 调用的默认超时时间。未配置特定超时的 Galaxy 服务器将回退到此值。
- ANSIBLE_GALAXY_ROLE_SKELETON
用作
ansible-galaxy
/ansible-galaxy role
中init
操作模板的角色骨架目录,与--role-skeleton
相同。另请参见 GALAXY_ROLE_SKELETON
- ANSIBLE_GALAXY_ROLE_SKELETON_IGNORE
Galaxy 角色或 collection 骨架目录中要忽略的文件模式。
- ANSIBLE_GALAXY_COLLECTION_SKELETON
用作
ansible-galaxy collection
中init
操作模板的 Collection 骨架目录,与--collection-skeleton
相同。
- ANSIBLE_GALAXY_COLLECTION_SKELETON_IGNORE
Galaxy collection 骨架目录中要忽略的文件模式。
- ANSIBLE_GALAXY_COLLECTIONS_PATH_WARNING
ansible-galaxy collection install
是否应该警告已配置的COLLECTIONS_PATHS缺少--collections-path
。
- ANSIBLE_GALAXY_SERVER
角色未指定完整 URI 时要添加的前缀 URL,假定它们引用此服务器作为源。
- ANSIBLE_GALAXY_SERVER_LIST
安装集合时使用的 Galaxy 服务器列表。该值对应于配置文件 ini 标题
[galaxy_server.{{item}}]
,该标题定义了服务器详细信息。有关如何定义 Galaxy 服务器的更多详细信息,请参阅 配置 ansible-galaxy 客户端。此列表中服务器的顺序用作解析集合的顺序。设置此配置选项将忽略 GALAXY_SERVER 配置选项。
- ANSIBLE_GALAXY_TOKEN_PATH
Galaxy 访问令牌文件的本地路径
- ANSIBLE_GALAXY_DISPLAY_PROGRESS
ansible-galaxy
中的一些步骤会显示进度轮,这可能会在某些显示器上或将 stdout 输出到文件时导致问题。此配置选项控制是否显示进度轮。默认情况下,如果 stdout 有 tty,则显示进度轮。
- ANSIBLE_GALAXY_CACHE_DIR
存储来自 Galaxy 服务器的缓存响应的目录。这仅由
ansible-galaxy collection install
和download
命令使用。如果此目录中的缓存文件具有世界可写权限,则将忽略它们。
- ANSIBLE_GALAXY_DISABLE_GPG_VERIFY
在安装 collection 时禁用 GPG 签名验证。
- ANSIBLE_GALAXY_GPG_KEYRING
配置在安装和验证 collection 时用于 GPG 签名验证的密钥环。
- ANSIBLE_GALAXY_IGNORE_SIGNATURE_STATUS_CODES
在 GPG 签名验证期间要忽略的 GPG 状态代码列表。有关状态代码说明,请参阅 L(https://github.com/gpg/gnupg/blob/master/doc/DETAILS#general-status-codes)。如果成功验证集合的签名少于 GALAXY_REQUIRED_VALID_SIGNATURE_COUNT,则即使忽略所有错误代码,签名验证也会失败。
- ANSIBLE_GALAXY_REQUIRED_VALID_SIGNATURE_COUNT
在安装或验证集合期间,GPG 签名验证必须成功的签名数量。这应该是一个正整数或 all,表示所有签名都必须成功验证集合。在集合没有有效签名时,在值前加上 + 将导致失败。
- ANSIBLE_HOST_KEY_CHECKING
如果您想避免 Ansible 用于连接到主机的底层连接插件进行主机密钥检查,请将其设置为“False”。请阅读所使用的特定连接插件的文档以了解详细信息。
- ANSIBLE_HOST_PATTERN_MISMATCH
此设置会更改不匹配主机模式的行为,它允许强制致命错误、警告或忽略它。
- ANSIBLE_PYTHON_INTERPRETER
要在远程目标上用于模块执行的 Python 解释器的路径,或自动发现模式。支持的发现模式包括
auto
(默认值)、auto_silent
、auto_legacy
和auto_legacy_silent
。所有发现模式都使用查找表来使用包含的系统 Python(在已知包含一个的分布上),如果平台特定的默认值不可用,则回退到已知 Python 解释器位置的固定有序列表。回退行为将发出警告,说明应显式设置解释器(因为以后安装的解释器可能会更改使用的解释器)。可以通过设置auto_silent
或auto_legacy_silent
来禁用此警告行为。auto_legacy
的值提供所有相同的功能,但为了与始终默认为/usr/bin/python
的旧版 Ansible 版本向后兼容,如果存在,将使用该解释器。
- ANSIBLE_TRANSFORM_INVALID_GROUP_CHARS
使ansible转换清单源提供的组名中的无效字符。
- ANSIBLE_INVALID_TASK_ATTRIBUTE_FAILED
如果为“false”,任务的无效属性将导致警告而不是错误。
- ANSIBLE_INVENTORY_ANY_UNPARSED_IS_FAILED
如果设置为“true”,则当任何给定的清单源无法被任何可用的清单插件成功解析时,将发生致命错误;否则,这种情况只会发出警告。
- ANSIBLE_INVENTORY_CACHE
切换以打开清单缓存。此设置已移至各个清单插件作为插件选项 清单插件。现有的配置设置仍然被接受,清单插件从清单配置中添加了额外的选项。此消息将在 2.16 中删除。
- ANSIBLE_INVENTORY_CACHE_PLUGIN
用于缓存清单的插件。此设置已移至各个清单插件作为插件选项 清单插件。现有的配置设置仍然被接受,清单插件从清单和事实缓存配置中添加了额外的选项。此消息将在 2.16 中删除。
- ANSIBLE_INVENTORY_CACHE_CONNECTION
清单缓存连接。此设置已移至各个清单插件作为插件选项 清单插件。现有的配置设置仍然被接受,清单插件从清单和事实缓存配置中添加了额外的选项。此消息将在 2.16 中删除。
- ANSIBLE_INVENTORY_CACHE_PLUGIN_PREFIX
缓存插件的表前缀。此设置已移至各个清单插件作为插件选项 清单插件。现有的配置设置仍然被接受,清单插件从清单和事实缓存配置中添加了额外的选项。此消息将在 2.16 中删除。
- ANSIBLE_INVENTORY_CACHE_TIMEOUT
清单缓存插件数据的过期超时时间。此设置已移至各个清单插件作为插件选项 清单插件。现有的配置设置仍然被接受,清单插件从清单和事实缓存配置中添加了额外的选项。此消息将在 2.16 中删除。
- ANSIBLE_INVENTORY_ENABLED
已启用的清单插件列表,它也决定了使用它们的顺序。
- ANSIBLE_INVENTORY_EXPORT
控制 ansible-inventory 是否会准确反映 Ansible 对清单的视图,或者是否对其进行了导出优化。
- ANSIBLE_INVENTORY_IGNORE
使用目录作为清单源时要忽略的扩展名列表。
- ANSIBLE_INVENTORY_IGNORE_REGEX
使用目录作为清单源时要忽略的模式列表。
- ANSIBLE_INVENTORY_UNPARSED_FAILED
如果设置为“true”,则如果每个潜在的清单源都无法解析,则将发生致命错误;否则,这种情况只会发出警告。
- ANSIBLE_MAX_DIFF_SIZE
要考虑用于差异显示的文件的最大大小。
- ANSIBLE_NETWORK_GROUP_MODULES
- ANSIBLE_INJECT_FACT_VARS
事实信息存储在 `ansible_facts` 变量中,此设置还会将它们作为单独的变量推送到主命名空间。与 `ansible_facts` 字典中不同的是,事实名称的前缀 `ansible_` 会被移除,而这些变量将具有模块返回的完全相同的名称。
- ANSIBLE_MODULE_IGNORE_EXTS
查找要加载的模块时要忽略的扩展名列表。这用于拒绝脚本和二进制模块回退扩展。
- ANSIBLE_MODULE_STRICT_UTF8_RESPONSE
启用是否评估模块响应中是否包含非 UTF-8 数据。禁用此选项可能会导致意外行为。只有 ansible-core 应该评估此配置。
- ANSIBLE_OLD_PLUGIN_CACHE_CLEAR
以前,Ansible 只会在加载新角色时清除一些插件加载缓存,这导致某些插件在之前的剧本中加载后会意外地“粘滞”。此设置允许用户恢复到该行为。
- ANSIBLE_PARAMIKO_HOST_KEY_AUTO_ADD
- ANSIBLE_PARAMIKO_LOOK_FOR_KEYS
- ANSIBLE_PERSISTENT_CONTROL_PATH_DIR
连接持久性系统使用的套接字路径。
- ANSIBLE_PERSISTENT_CONNECT_TIMEOUT
此选项控制持久连接在销毁之前保持空闲的时间。
- ANSIBLE_PERSISTENT_CONNECT_RETRY_TIMEOUT
此选项控制持久连接连接到本地域套接字的重试超时。
- ANSIBLE_PERSISTENT_COMMAND_TIMEOUT
此选项控制等待远程设备响应的时间,超时后将终止持久连接。
- ANSIBLE_PLAYBOOK_DIR
许多非剧本CLI都有一个
--playbook-dir
参数;此选项设置它的默认值。另见 PLAYBOOK_DIR
- ANSIBLE_PLAYBOOK_VARS_ROOT
此选项设置哪些剧本目录将用作处理vars插件的根目录,包括查找host_vars/group_vars。
- ANSIBLE_PYTHON_MODULE_RLIMIT_NOFILE
在执行Python模块时尝试将RLIMIT_NOFILE软限制设置为指定的值(可以加快Python 2.x上的子进程使用速度。参见https://bugs.python.org/issue11284)。该值将受现有硬限制的限制。值为0表示不尝试调整现有系统定义的限制。
- ANSIBLE_RETRY_FILES_ENABLED
此选项控制Ansible playbook失败时是否应创建.retry文件。
- ANSIBLE_RETRY_FILES_SAVE_PATH
这设置了 Ansible 在剧本失败且启用重试文件时保存 .retry 文件的路径。此文件将在每次运行后被覆盖,其中包含所有剧集中失败主机的列表。
- ANSIBLE_RUN_VARS_PLUGINS
此设置可用于根据用户的清单大小和play选择优化vars_plugin的使用。
- ANSIBLE_SHOW_CUSTOM_STATS
这会将通过set_stats插件设置的自定义统计信息添加到默认输出中。
- ANSIBLE_STRING_TYPE_FILTERS
此过滤器列表在模板化变量时避免“类型转换”。例如,当您想要避免将 JSON 字符串转换为列表或字典时非常有用。
- ANSIBLE_SYSTEM_WARNINGS
允许禁用与运行 Ansible 本身(而不是受管主机)的系统上潜在问题相关的警告。这些可能包括有关第三方软件包或其他应尽可能解决的条件的警告。
- ANSIBLE_TARGET_LOG_INFO
要插入目标日志以进行跟踪的字符串。
- ANSIBLE_TASK_TIMEOUT
设置任务最长运行时间(以秒为单位)。如果设置为 0(默认值),则没有超时。
另见 TASK_TIMEOUT
- ANSIBLE_WORKER_SHUTDOWN_POLL_COUNT
检查任务队列管理器工作进程以验证它们是否已干净退出时的最大次数。达到此限制后,任何仍在运行的工作进程都将被终止。仅供内部使用。
- ANSIBLE_WORKER_SHUTDOWN_POLL_DELAY
检查任务队列管理器工作进程以验证它们是否已干净退出时,轮询循环之间要休眠的秒数。仅供内部使用。
- ANSIBLE_USE_PERSISTENT_CONNECTIONS
切换连接的持久性使用。
- ANSIBLE_VARS_ENABLED
接受需要它的变量插件列表。
- ANSIBLE_PRECEDENCE
允许更改组变量优先级合并顺序。
- ANSIBLE_WIN_ASYNC_STARTUP_TIMEOUT
对于 Ansible 中的异步任务(在异步操作和轮询中介绍),这是等待 Ansible 生成的任务连接回在 Windows 系统上使用的命名管道的时间(以秒为单位)。默认值为 5 秒。在速度较慢的系统或负载较重的系统上,这可能太低了。这不是异步命令可以运行的总时间,而是在等待异步命令启动时的单独超时。只有在连接到管道后,才会根据其 async_timeout 对任务计时,因此任务可以花费的总最大持续时间将在此处指定的时间量延长。
- ANSIBLE_YAML_FILENAME_EXT
查找应为 YAML 或 JSON 或这些的保管库版本的“变量”文件时,请检查所有这些扩展名。这会影响 vars_files、include_vars、inventory 和 vars 插件等。
- ANSIBLE_NETCONF_SSH_CONFIG
此变量用于启用带有 netconf 连接的堡垒/跳转主机。如果设置为 True,则堡垒/跳转主机的 ssh 设置应存在于 ~/.ssh/config 文件中,或者可以将其设置为自定义 ssh 配置文件路径以读取堡垒/跳转主机的设置。
- ANSIBLE_STRING_CONVERSION_ACTION
将模块参数值转换为字符串时要采取的操作(这不会影响变量)。对于字符串参数,例如“1.00”、“[‘a’,‘b’,]”和“yes”、“y”等值将被 YAML 解析器转换,除非完全用引号括起来。有效选项为“error”、“warn”和“ignore”。从 2.8 开始,此选项默认为“warn”,但将在 2.12 中更改为“error”。
- ANSIBLE_VALIDATE_ACTION_GROUP_METADATA
一个开关,用于禁用为module_defaults操作组验证集合的“metadata”条目。当此值为True时,包含意外字段或值类型的元数据将产生警告。
- ANSIBLE_VERBOSE_TO_STDERR
强制“verbose”选项使用stderr而不是stdout