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
- 环境:
- 在以下版本中已弃用:
2.22
- 弃用详细信息:
此设置无效。
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 但想避免“cows”(为什么????),请使用它。
- 类型:
布尔值
- 默认:
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 will skip using become if the remote user is the same as the become user, as this is normally a redundant operation. In other words root sudo to root. If ``True
, 这会强制 Ansible 使用 become 插件,因为在某些情况下需要这样做。- 类型:
布尔值
- 默认:
False
- Ini:
- 节:
[privilege_escalation]
- 键:
become_allow_same_user
- 环境:
BECOME_PASSWORD_FILE
- 描述:
要用于 become 插件的密码文件。
--become-password-file
。如果可执行,它将被运行,生成的 stdout 将用作密码。- 类型:
路径
- 默认:
无
- 添加的版本:
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 :Version Added: 2.11
- 环境:
- 变量:
ANSIBLE_CALLBACKS_ENABLED
:Version Added: 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_path :Version Added: 2.10
- 环境:
- 变量:
ANSIBLE_COLLECTIONS_PATH
:Version Added: 2.10
COLLECTIONS_SCAN_SYS_PATH
- 描述:
一个布尔值,用于启用或禁用扫描 sys.path 以查找已安装的集合。
- 类型:
布尔值
- 默认:
True
- Ini:
- 节:
[defaults]
- 键:
collections_scan_sys_path
- 环境:
COLOR_CHANGED
- 描述:
定义在“已更改”任务状态上使用的颜色。
- 默认:
黄色
- Ini:
- 节:
[颜色]
- 键:
已更改
- 环境:
COLOR_CONSOLE_PROMPT
- 描述:
定义用于 ansible-console 的默认颜色。
- 默认:
白色
- 添加的版本:
2.7
- Ini:
- 节:
[颜色]
- 键:
控制台提示
- 环境:
COLOR_DEBUG
- 描述:
定义在发出调试消息时使用的颜色。
- 默认:
深 灰色
- Ini:
- 节:
[颜色]
- 键:
调试
- 环境:
COLOR_DEPRECATE
- 描述:
定义在发出弃用消息时使用的颜色。
- 默认:
紫色
- Ini:
- 节:
[颜色]
- 键:
弃用
- 环境:
COLOR_DIFF_ADD
- 描述:
定义在显示差异中添加的行时使用的颜色。
- 默认:
绿色
- Ini:
- 节:
[颜色]
- 键:
diff_add
- 环境:
COLOR_DIFF_LINES
- 描述:
定义在显示差异时使用的颜色。
- 默认:
青色
- Ini:
- 节:
[颜色]
- 键:
diff_lines
- 环境:
COLOR_DIFF_REMOVE
- 描述:
定义在显示差异中删除的行时使用的颜色。
- 默认:
红色
- Ini:
- 节:
[颜色]
- 键:
diff_remove
- 环境:
COLOR_DOC_CONSTANT
- 描述:
定义在 ansible-doc 输出中发出常量时使用的颜色。
- 默认:
深 灰色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
doc_constant
- 环境:
COLOR_DOC_DEPRECATED
- 描述:
定义在 ansible-doc 输出中发出已弃用的值时使用的颜色。
- 默认:
洋红色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
doc_deprecated
- 环境:
COLOR_DOC_LINK
- 描述:
定义在 ansible-doc 输出中发出链接时使用的颜色。
- 默认:
青色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
doc_link
- 环境:
COLOR_DOC_MODULE
- 描述:
定义在 ansible-doc 输出中发出模块名称时使用的颜色。
- 默认:
黄色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
doc_module
- 环境:
COLOR_DOC_PLUGIN
- 描述:
定义在 ansible-doc 输出中发出插件名称时使用的颜色。
- 默认:
黄色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
doc_plugin
- 环境:
COLOR_DOC_REFERENCE
- 描述:
定义在 ansible-doc 输出中发出交叉引用时使用的颜色。
- 默认:
洋红色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
doc_reference
- 环境:
COLOR_ERROR
- 描述:
定义在发出错误消息时使用的颜色。
- 默认:
红色
- Ini:
- 节:
[颜色]
- 键:
错误
- 环境:
COLOR_HIGHLIGHT
- 描述:
定义用于突出显示的颜色。
- 默认:
白色
- Ini:
- 节:
[颜色]
- 键:
highlight
- 环境:
COLOR_INCLUDED
- 描述:
定义在显示“已包含”任务状态时使用的颜色。
- 默认:
青色
- 添加的版本:
2.18
- Ini:
- 节:
[颜色]
- 键:
included
- 环境:
COLOR_OK
- 描述:
定义在显示“确定”任务状态时使用的颜色。
- 默认:
绿色
- Ini:
- 节:
[颜色]
- 键:
ok
- 环境:
- 变量:
COLOR_SKIP
- 描述:
定义在显示“已跳过”任务状态时使用的颜色。
- 默认:
青色
- Ini:
- 节:
[颜色]
- 键:
skip
- 环境:
COLOR_UNREACHABLE
- 描述:
定义在“不可达”状态上使用的颜色。
- 默认:
亮 红色
- Ini:
- 节:
[颜色]
- 键:
unreachable
- 环境:
COLOR_VERBOSE
- 描述:
定义在发出详细消息时使用的颜色。换句话说,那些使用“ -v”显示的消息。
- 默认:
蓝色
- Ini:
- 节:
[颜色]
- 键:
verbose
- 环境:
COLOR_WARN
- 描述:
定义发出警告消息时要使用的颜色。
- 默认:
bright purple
- Ini:
- 节:
[颜色]
- 键:
warn
- 环境:
CONNECTION_FACTS_MODULES
- 描述:
在基于连接的剧本的收集事实阶段要运行的模块。
- 类型:
dict
- 默认:
{'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 模块的远程覆盖率。这是仅供内部使用的。
- 类型:
str
- 添加的版本:
2.9
- 环境:
- 变量::
- 名称::
_ansible_coverage_remote_output
COVERAGE_REMOTE_PATHS
- 描述:
在远程主机上执行时,在 Ansible 控制器上运行覆盖率的路径列表。仅匹配路径通配符的文件才会收集其覆盖率。可以指定多个路径通配符,并用
:
分隔。目前仅用于 PowerShell 模块的远程覆盖率。这是仅供内部使用的。- 类型:
str
- 默认:
*
- 添加的版本:
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)返回未标记为“不安全”的数据。默认情况下,此类数据被标记为不安全,以防止模板引擎评估任何 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]
- 键:
调试
- 环境:
- 变量:
DEFAULT_EXECUTABLE
- 描述:
这指示要用于生成 shell 的命令,这是 Ansible 在目标上执行其执行需求所必需的。在 shell 使用受到限制的情况下,用户可能需要更改此设置,但在大多数情况下,它可以保留原样。
- 默认:
/bin/sh
- Ini:
- 节:
[defaults]
- 键:
executable
- 环境:
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 用于在目标主机上执行任务的 fork 最大数量。
- 类型:
整数
- 默认:
5
- Ini:
- 节:
[defaults]
- 键:
forks
- 环境:
- 变量:
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 负载。较高值更适合在自动化场景中使用 Ansible,此时不需要 UI 响应能力,但可能需要考虑 CPU 使用率。默认值对应于 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
- 描述:
如果未指定
-a
,则这将设置传递给ansible
adhoc 二进制文件的默认参数。- 默认:
无
- Ini:
- 节:
[defaults]
- 键:
module_args
- 环境:
DEFAULT_MODULE_COMPRESSION
- 描述:
将 Python 模块传输到目标时使用的压缩方案。
- 默认:
ZIP_DEFLATED
- Ini:
- 节:
[defaults]
- 键:
module_compression
- 变量::
- 名称::
ansible_module_compression
DEFAULT_MODULE_NAME
- 描述:
在
ansible
AdHoc 命令中使用的模块,如果未通过-m
指定。- 默认:
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 对目标的 syslog 记录。在 Windows 主机上,这将禁用较新的 PowerShell 模块写入事件日志。
- 类型:
布尔值
- 默认:
False
- Ini:
- 节:
[defaults]
- 键:
no_target_syslog
- 环境:
- 变量::
- 名称::
ansible_no_target_syslog :Version Added: 2.10
DEFAULT_NULL_REPRESENTATION
- 描述:
模板应该返回什么作为 “null” 值。未设置时,它将让 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]
- 键:
test_plugins
- 环境:
DEFAULT_TIMEOUT
- 描述:
这是连接插件使用的默认超时时间。
- 类型:
整数
- 默认:
10
- Ini:
- 节:
[defaults]
- 键:
timeout
- 环境:
- 变量:
DEFAULT_TRANSPORT
- 描述:
可以是 Ansible 安装中可用的任何连接插件。 还有一个(已弃用)的特殊“智能”选项,它将根据控制器操作系统和 ssh 版本在“ssh”和“paramiko”之间切换。
- 默认:
ssh
- Ini:
- 节:
[defaults]
- 键:
传输
- 环境:
DEFAULT_UNDEFINED_VAR_BEHAVIOR
- 描述:
当为 True 时,这会导致 Ansible 模板化失败引用可能拼写错误的变量名的步骤。 否则,任何包含未定义变量的“{{template_expression}}”将在模板或 Ansible 操作行中按原样呈现。
- 类型:
布尔值
- 默认:
True
- 添加的版本:
1.3
- Ini:
- 节:
[defaults]
- 键:
error_on_undefined_vars
- 环境:
DEFAULT_VARS_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索变量插件的冒号分隔路径。
- 类型:
pathspec
- 默认:
{{ ANSIBLE_HOME ~ "/plugins/vars:/usr/share/ansible/plugins/vars" }}
- Ini:
- 节:
[defaults]
- 键:
vars_plugins
- 环境:
DEFAULT_VAULT_ENCRYPT_IDENTITY
- 描述:
用于默认加密的 vault_id。 如果提供了多个 vault_id,则指定用于加密的 vault_id。
--encrypt-vault-id
CLI 选项会覆盖已配置的值。- Ini:
- 节:
[defaults]
- 键:
vault_encrypt_identity
- 环境:
DEFAULT_VAULT_ID_MATCH
- 描述:
如果为 true,则使用 vault id 解密保险库只会尝试来自匹配 vault-id 的密码。
- 默认:
False
- Ini:
- 节:
[defaults]
- 键:
vault_id_match
- 环境:
DEFAULT_VAULT_IDENTITY
- 描述:
在没有提供 vault id 标签的情况下,用于默认 vault id 标签的标签。
- 默认:
默认
- Ini:
- 节:
[defaults]
- 键:
vault_identity
- 环境:
DEFAULT_VAULT_IDENTITY_LIST
- 描述:
默认情况下使用的 vault-id 列表。 等同于多个
--vault-id
参数。 Vault-id 按顺序尝试。- 类型:
列表
- 默认:
[]
- Ini:
- 节:
[defaults]
- 键:
vault_identity_list
- 环境:
DEFAULT_VAULT_PASSWORD_FILE
- 描述:
要使用的 vault 密码文件。 等同于
--vault-password-file
或--vault-id
。 如果可执行,它将被运行,并且生成的标准输出将用作密码。- 类型:
路径
- 默认:
无
- Ini:
- 节:
[defaults]
- 键:
vault_password_file
- 环境:
DEFAULT_VERBOSITY
- 描述:
设置默认详细程度,等同于命令行中传递的
-v
数量。- 类型:
整数
- 默认:
0
- Ini:
- 节:
[defaults]
- 键:
verbosity
- 环境:
DEPRECATION_WARNINGS
- 描述:
切换以控制是否显示弃用警告
- 类型:
布尔值
- 默认:
True
- Ini:
- 节:
[defaults]
- 键:
deprecation_warnings
- 环境:
DEVEL_WARNING
- 描述:
切换以控制是否显示与运行开发相关的警告。
- 类型:
布尔值
- 默认:
True
- Ini:
- 节:
[defaults]
- 键:
devel_warning
- 环境:
DIFF_ALWAYS
- 描述:
配置切换以告诉模块在“已更改”状态下显示差异,等同于
--diff
。- 类型:
bool
- 默认:
False
- Ini:
- 节:
[diff]
- 键:
always
- 环境:
DIFF_CONTEXT
- 描述:
显示文件之间的差异时显示的上下文行数。
- 类型:
整数
- 默认:
3
- Ini:
- 节:
[diff]
- 键:
context
- 环境:
DISPLAY_ARGS_TO_STDOUT
- 描述:
通常
ansible-playbook
会为运行的每个任务打印一个标题。 这些标题将包含您指定的任务的 name: 字段。 如果您没有,那么ansible-playbook
使用任务的操作来帮助您了解当前正在运行的任务。 有时您会运行许多相同操作,因此您需要有关该任务的更多信息才能将其与其他相同操作区分开。 如果您在配置中将此变量设置为 True,那么ansible-playbook
还将在标题中包含任务的参数。 此设置默认为 False,因为您有可能在参数中包含敏感值,并且您不希望将它们打印出来。 如果您将其设置为 True,您应该确保您已保护环境的标准输出(没有人可以肩并肩地查看您的屏幕,并且您没有将标准输出保存到不安全的文件中)或确保所有剧本都明确添加了no_log: True
参数到具有敏感值的任务 How do I keep secret data in my playbook? 获取更多信息。- 类型:
布尔值
- 默认:
False
- 添加的版本:
2.1
- Ini:
- 节:
[defaults]
- 键:
display_args_to_stdout
- 环境:
DISPLAY_SKIPPED_HOSTS
- 描述:
切换以控制是否在默认回调中显示任务中跳过的任务/主机条目。
- 类型:
布尔值
- 默认:
True
- Ini:
- 节:
[defaults]
- 键:
display_skipped_hosts
- 环境:
DOC_FRAGMENT_PLUGIN_PATH
- 描述:
Ansible 将在其中搜索文档片段插件的冒号分隔路径。
- 类型:
pathspec
- 默认:
{{ ANSIBLE_HOME ~ "/plugins/doc_fragments:/usr/share/ansible/plugins/doc_fragments" }}
- Ini:
- 节:
[defaults]
- 键:
doc_fragment_plugins
- 环境:
DOCSITE_ROOT_URL
- 描述:
用于在警告/错误文本中生成文档 URL 的根 docsite URL;必须是具有有效方案和尾部斜杠的绝对 URL。
- 默认:
https://docs.ansible.org.cn/ansible-core/
- 添加的版本:
2.8
- Ini:
- 节:
[defaults]
- 键:
docsite_root_url
DUPLICATE_YAML_DICT_KEY
- 描述:
默认情况下,Ansible 会在 YAML 中遇到重复的字典键时发出警告。 通过将此设置调整为 False,可以使这些警告静音。
- 类型:
字符串
- 默认:
warn
- 选项:
- 错误:
发出“致命”错误并停止播放
- warn:
发出警告,但继续
- 忽略:
静默继续
- 添加的版本:
2.9
- Ini:
- 节:
[defaults]
- 键:
duplicate_dict_key
- 环境:
EDITOR
- 描述:
对于 Ansible 需要在编辑器中返回文件的情况,这将选择要使用的应用程序。
- 默认:
vi
- Ini:
- 节:
[defaults]
- 键:
editor :Version Added: 2.15
- 环境:
- 变量:
- 添加的版本:
2.15
- 变量:
ENABLE_TASK_DEBUGGER
- 描述:
是否启用任务调试器,这以前是作为策略插件完成的。 现在,所有策略插件都可以继承这种行为。 调试器默认为在任务因无法访问而失败时激活。 使用调试器关键字可以获得更多灵活性。
- 类型:
布尔值
- 默认:
False
- 添加的版本:
2.5
- Ini:
- 节:
[defaults]
- 键:
enable_task_debugger
- 环境:
ERROR_ON_MISSING_HANDLER
- 描述:
切换以允许缺少的处理程序在通知时成为警告而不是错误。
- 类型:
布尔值
- 默认:
True
- Ini:
- 节:
[defaults]
- 键:
error_on_missing_handler
- 环境:
FACTS_MODULES
- 描述:
在剧本的事实收集阶段运行哪些模块,使用“智能”的默认值将尝试根据连接类型来确定。 如果添加您自己的模块,但您仍然希望使用默认的 Ansible 事实,则需要将“setup”或相应的网络模块添加到列表中(如果您添加“智能”,Ansible 也将确定它)。 这不会影响对“setup”模块的显式调用,但始终会影响“gather_facts”操作(隐式或显式)。
- 类型:
列表
- 默认:
['smart']
- Ini:
- 节:
[defaults]
- 键:
facts_modules
- 环境:
- 变量::
- 名称::
ansible_facts_modules
GALAXY_CACHE_DIR
- 描述:
存储从 Galaxy 服务器获取的缓存响应的目录。此目录仅由
ansible-galaxy collection install
和download
命令使用。如果此目录中的缓存文件对所有人可写,则会忽略这些文件。- 类型:
路径
- 默认:
{{ ANSIBLE_HOME ~ "/galaxy_cache" }}
- 添加的版本:
2.11
- Ini:
- 节:
[galaxy]
- 键:
cache_dir
- 环境:
GALAXY_COLLECTION_IMPORT_POLL_FACTOR
- 描述:
用于增加 GALAXY_COLLECTION_IMPORT_POLL_INTERVAL 的倍数,用于检查集合导入状态。
- 类型:
float
- 默认:
1.5
- 添加的版本:
2.18
- 环境:
GALAXY_COLLECTION_IMPORT_POLL_INTERVAL
- 描述:
轮询集合导入状态的初始间隔时间(以秒为单位)。此间隔时间将根据 GALAXY_COLLECTION_IMPORT_POLL_FACTOR 指数增长,最大延迟时间为 30 秒。
- 类型:
float
- 默认:
2.0
- 添加的版本:
2.18
- 环境:
GALAXY_COLLECTION_SKELETON
- 描述:
用于
ansible-galaxy collection
中的init
操作的集合骨架目录模板,与--collection-skeleton
相同。- 类型:
路径
- Ini:
- 节:
[galaxy]
- 键:
collection_skeleton
- 环境:
GALAXY_COLLECTION_SKELETON_IGNORE
- 描述:
在 Galaxy 集合骨架目录中要忽略的文件的模式。
- 类型:
列表
- 默认:
['^.git$', '^.*/.git_keep$']
- Ini:
- 节:
[galaxy]
- 键:
collection_skeleton_ignore
- 环境:
GALAXY_COLLECTIONS_PATH_WARNING
- 描述:
是否
ansible-galaxy collection install
应该警告配置的 COLLECTIONS_PATHS 中缺少--collections-path
。- 类型:
bool
- 默认:
True
- 添加的版本:
2.16
- Ini:
- 节:
[galaxy]
- 键:
collections_path_warning
- 环境:
GALAXY_DISABLE_GPG_VERIFY
- 描述:
在安装集合时禁用 GPG 签名验证。
- 类型:
bool
- 默认:
False
- 添加的版本:
2.13
- Ini:
- 节:
[galaxy]
- 键:
disable_gpg_verify
- 环境:
GALAXY_DISPLAY_PROGRESS
- 描述:
ansible-galaxy
中的某些步骤会显示一个进度轮,这可能会在某些显示器上或将 stdout 输出到文件时导致问题。此配置选项控制是否显示进度轮。默认情况下,如果 stdout 有 tty,则会显示进度轮。- 类型:
bool
- 默认:
无
- 添加的版本:
2.10
- Ini:
- 节:
[galaxy]
- 键:
display_progress
- 环境:
GALAXY_GPG_KEYRING
- 描述:
配置用于在安装和验证集合时进行 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)。如果成功验证集合的签名数量少于 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
- 描述:
在安装或验证集合时,必须成功验证的签名数量。这应该是一个正整数,或者表示所有签名必须成功验证集合。在值前加上 +,如果集合没有找到有效签名,则会失败。
- 类型:
str
- 默认:
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 角色或集合骨架目录中要忽略的文件的模式。
- 类型:
列表
- 默认:
['^.git$', '^.*/.git_keep$']
- Ini:
- 节:
[galaxy]
- 键:
role_skeleton_ignore
- 环境:
GALAXY_SERVER
- 描述:
当角色没有指定完整的 URI 时,要添加的前缀 URL,假设它们引用此服务器作为源。
- 默认:
https://galaxy.ansible.com
- Ini:
- 节:
[galaxy]
- 键:
server
- 环境:
GALAXY_SERVER_LIST
- 描述:
安装集合时要使用的 Galaxy 服务器列表。该值对应于定义服务器详细信息的配置 ini 标头
[galaxy_server.{{item}}]
。有关如何定义 Galaxy 服务器的更多详细信息,请参阅 Configuring the ansible-galaxy client。此列表中服务器的顺序用作解析集合的顺序。设置此配置选项将忽略 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_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.13', 'python3.12', 'python3.11', 'python3.10', 'python3.9', 'python3.8', '/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_ENABLED
- 描述:
已启用的清单插件列表,它还确定使用它们的顺序。
- 类型:
列表
- 默认:
['host_list', 'script', 'auto', 'yaml', 'ini', 'toml']
- Ini:
- 节:
[inventory]
- 键:
enable_plugins
- 环境:
INVENTORY_EXPORT
- 描述:
控制 ansible-inventory 是否会准确反映 Ansible 对清单的看法,或者它是否针对导出进行了优化。
- 类型:
bool
- 默认:
False
- Ini:
- 节:
[inventory]
- 键:
export
- 环境:
INVENTORY_IGNORE_EXTS
- 描述:
使用目录作为清单源时要忽略的扩展列表。
- 类型:
列表
- 默认:
{{(REJECT_EXTS + ('.orig', '.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”,则如果每个可能的清单源都无法解析,则将是一个致命错误;否则,这种情况只会引起警告。
- 类型:
bool
- 默认:
False
- Ini:
- 节:
[inventory]
- 键:
unparsed_is_failed
- 环境:
INVENTORY_UNPARSED_WARNING
- 描述:
默认情况下,当没有加载清单时,Ansible 会发出警告,并指出它将使用隐式仅限 localhost 的清单。可以通过将此设置调整为 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 应评估此配置。
- 类型:
bool
- 默认:
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
- 描述:
对于 Ansible 需要以可分页方式返回输出的情况,这将选择要使用的应用程序。
- 默认:
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
- 描述:
这将设置哪些剧本目录将用作处理变量插件的根目录,其中包括查找 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
- 描述:
此选项控制是否应创建 .retry 文件以指示 Ansible 剧本失败。
- 类型:
bool
- 默认:
False
- Ini:
- 节:
[defaults]
- 键:
retry_files_enabled
- 环境:
RETRY_FILES_SAVE_PATH
- 描述:
此选项设置 Ansible 将在剧本失败且启用重试文件时保存 .retry 文件的路径。该文件将在每次运行后被所有剧本的失败主机列表覆盖。
- 类型:
路径
- 默认:
无
- Ini:
- 节:
[defaults]
- 键:
retry_files_save_path
- 环境:
RUN_VARS_PLUGINS
- 描述:
此设置可用于根据用户的清单大小和剧本选择优化 vars_plugin 使用。
- 类型:
str
- 默认:
demand
- 选项:
- demand:
将在任务“需要”变量时始终相对于清单源运行 vars_plugins。
- start:
将在导入该清单源后相对于清单源运行 vars_plugins。
- 添加的版本:
2.10
- Ini:
- 节:
[defaults]
- 键:
run_vars_plugins
- 环境:
SHOW_CUSTOM_STATS
- 描述:
这会将通过 set_stats 插件设置的自定义统计信息添加到默认输出中。
- 类型:
bool
- 默认:
False
- Ini:
- 节:
[defaults]
- 键:
show_custom_stats
- 环境:
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
- 描述:
设置任务操作执行的最大时间(以秒为单位)。超时独立于模板化或循环运行。它适用于每次尝试执行任务的操作,并且不会因在任务上花费的总时间而改变。当操作执行超过超时时间时,Ansible 会中断该进程。这被注册为由于外部情况而导致的失败,而不是任务失败,以便接收适当的响应和恢复过程。如果设置为 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
- 描述:
一个切换,用于禁用对集合的“metadata”条目(针对 module_defaults 操作组)进行验证。当此选项为 True 时,包含意外字段或值类型的元数据将产生警告。
- 类型:
bool
- 默认:
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
- 类型:
bool
- 默认:
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 之前检查此位置。如果为 null,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 但想避免“cows”(为什么????),请使用它。
另请参阅 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_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 的默认颜色。
另请参阅 COLOR_CONSOLE_PROMPT
- ANSIBLE_COLOR_DEBUG
定义在发出调试消息时使用的颜色。
另请参阅 COLOR_DEBUG
- ANSIBLE_COLOR_DEPRECATE
定义在发出弃用消息时使用的颜色。
另请参阅 COLOR_DEPRECATE
- ANSIBLE_COLOR_DIFF_ADD
定义在显示差异中添加的行时使用的颜色。
另请参阅 COLOR_DIFF_ADD
- ANSIBLE_COLOR_DIFF_LINES
定义在显示差异时使用的颜色。
另请参阅 COLOR_DIFF_LINES
- ANSIBLE_COLOR_DIFF_REMOVE
定义在显示差异中删除的行时使用的颜色。
另请参阅 COLOR_DIFF_REMOVE
- ANSIBLE_COLOR_ERROR
定义在发出错误消息时使用的颜色。
参见 COLOR_ERROR
- ANSIBLE_COLOR_HIGHLIGHT
定义用于突出显示的颜色。
- ANSIBLE_COLOR_INCLUDED
定义在显示“已包含”任务状态时使用的颜色。
- ANSIBLE_COLOR_SKIP
定义在显示“已跳过”任务状态时使用的颜色。
参见 COLOR_SKIP
- ANSIBLE_COLOR_UNREACHABLE
定义在“不可达”状态上使用的颜色。
- ANSIBLE_COLOR_VERBOSE
定义在发出详细消息时使用的颜色。换句话说,那些使用“ -v”显示的消息。
- ANSIBLE_COLOR_WARN
定义发出警告消息时要使用的颜色。
参见 COLOR_WARN
- ANSIBLE_COLOR_DOC_MODULE
定义在 ansible-doc 输出中发出模块名称时使用的颜色。
- ANSIBLE_COLOR_DOC_REFERENCE
定义在 ansible-doc 输出中发出交叉引用时使用的颜色。
- ANSIBLE_COLOR_DOC_LINK
定义在 ansible-doc 输出中发出链接时使用的颜色。
- ANSIBLE_COLOR_DOC_DEPRECATED
定义在 ansible-doc 输出中发出已弃用的值时使用的颜色。
- ANSIBLE_COLOR_DOC_CONSTANT
定义在 ansible-doc 输出中发出常量时使用的颜色。
- ANSIBLE_COLOR_DOC_PLUGIN
定义在 ansible-doc 输出中发出插件名称时使用的颜色。
- 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 会在没有加载清单时发出警告,并指出它将使用隐式仅限 localhost 的清单。可以通过将此设置调整为 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_FILTER_PLUGINS
Ansible 将在其中搜索 Jinja2 Filter 插件的冒号分隔路径。
- ANSIBLE_FORCE_HANDLERS
此选项控制是否即使在主机上发生故障时,也会在主机上运行通知处理程序。如果为 False,则如果主机上发生故障,处理程序将不会运行。这也可以在每个剧本或命令行上设置。有关更多详细信息,请参见处理程序和故障。
- ANSIBLE_FORKS
Ansible 用于在目标主机上执行任务的 fork 最大数量。
- ANSIBLE_GATHERING
此设置控制事实收集(关于远程系统发现的事实)的默认策略。此选项对于希望节省事实收集时间的用户很有用。 'smart' 和 'explicit' 都将使用缓存插件。
另请参见 DEFAULT_GATHERING
- ANSIBLE_HASH_BEHAVIOUR
此设置控制 Ansible 如何处理字典变量(也称为哈希、映射、关联数组)的重复定义。这不会影响值是标量(整数、字符串)或数组的变量。**警告**,不建议更改此设置,因为这很脆弱,会使您的内容(剧本、角色、集合)不可移植,导致持续的混乱和误用。除非您认为自己绝对需要它,否则不要更改此设置。我们建议避免重复使用变量名,并依赖
combine
过滤器以及vars
和varnames
查找来创建单个变量的合并版本。根据我们的经验,这很少需要,并且表明数据结构和剧本中引入了过多的复杂性。对于某些用途,您还可以查看自定义 vars_plugins,以便在输入时合并,甚至替换负责解析host_vars/
和group_vars/
目录的默认host_group_vars
。此设置的大多数用户只对清单范围感兴趣,但设置本身会影响所有来源,并使调试变得更加困难。官方示例存储库中的所有剧本和角色都假设此设置的默认值。将设置更改为merge
会应用于所有变量来源,但许多来源会在内部仍然覆盖变量。例如,include_vars
会在更新 Ansible 之前在内部对变量进行重复数据删除,其中 'last defined' 会覆盖同一文件中的先前定义。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
如果未指定
-a
,则这将设置传递给ansible
adhoc 二进制文件的默认参数。另请参见 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 对目标的 syslog 记录。在 Windows 主机上,这将禁用较新的 PowerShell 模块写入事件日志。
- ANSIBLE_NULL_REPRESENTATION
模板应该返回什么作为 “null” 值。未设置时,它将让 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
是否启用任务调试器,这之前是作为策略插件完成的。现在所有策略插件都可以继承这种行为。调试器默认在任务在不可到达时失败时激活。使用调试器关键字以获得更多灵活性。
另请参阅 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 密码文件。相当于
--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
会为每个运行的任务打印一个标题。这些标题将包含您指定的 tasks 中的 name: 字段。如果您没有指定,那么ansible-playbook
将使用任务的操作来帮助您了解当前正在运行的任务。有时您会运行许多相同的操作,因此您需要更多关于任务的信息来将其与其他相同操作区分开来。如果您在配置中将此变量设置为 True,那么ansible-playbook
还将包含任务的 arguments 在标题中。此设置默认值为 False,因为您可能在参数中包含敏感值,并且不希望将它们打印出来。如果您将其设置为 True,您应该确保您的环境的标准输出已安全(没有人可以窥视您的屏幕,并且您没有将标准输出保存到不安全的 files 中)或确保所有 playbook 都明确地在包含敏感值的 tasks 中添加了no_log: True
参数 How do I keep secret data in my playbook? 了解更多信息。
- ANSIBLE_DISPLAY_SKIPPED_HOSTS
切换以控制是否在默认回调中显示任务中跳过的任务/主机条目。
- ANSIBLE_DUPLICATE_YAML_DICT_KEY
默认情况下,当在 YAML 中遇到重复的字典键时,Ansible 将发出警告。可以通过将此设置调整为 False 来消除这些警告。
- ANSIBLE_ERROR_ON_MISSING_HANDLER
切换以允许缺少的处理程序在通知时成为警告而不是错误。
- ANSIBLE_FACTS_MODULES
在 play 的事实收集阶段要运行的模块,使用“智能”的默认值将尝试根据连接类型确定。如果添加自己的模块,但您仍然希望使用默认的 Ansible 事实,则需要将“setup”或相应的网络模块包含到列表中(如果您添加“智能”,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 角色或集合骨架目录中要忽略的文件的模式。
- ANSIBLE_GALAXY_COLLECTION_SKELETON
用于
ansible-galaxy collection
中的init
操作的集合骨架目录模板,与--collection-skeleton
相同。
- ANSIBLE_GALAXY_COLLECTION_SKELETON_IGNORE
在 Galaxy 集合骨架目录中要忽略的文件的模式。
- ANSIBLE_GALAXY_COLLECTIONS_PATH_WARNING
是否
ansible-galaxy collection install
应该警告配置的 COLLECTIONS_PATHS 中缺少--collections-path
。
- ANSIBLE_GALAXY_SERVER
当角色没有指定完整的 URI 时,要添加的前缀 URL,假设它们引用此服务器作为源。
另请参阅 GALAXY_SERVER
- ANSIBLE_GALAXY_SERVER_LIST
安装集合时要使用的一系列 Galaxy 服务器。该值对应于配置 ini 标题
[galaxy_server.{{item}}]
,该标题定义了服务器详细信息。有关如何定义 Galaxy 服务器的更多详细信息,请参阅 Configuring the ansible-galaxy client。此列表中服务器的顺序用作解析集合的顺序。设置此配置选项将忽略 GALAXY_SERVER 配置选项。另请参阅 GALAXY_SERVER_LIST
- ANSIBLE_GALAXY_TOKEN_PATH
本地 galaxy 访问令牌文件的路径
- ANSIBLE_GALAXY_DISPLAY_PROGRESS
在
ansible-galaxy
中,某些步骤会显示进度轮,这可能会在某些显示器上或将标准输出输出到文件时造成问题。此配置选项控制是否显示进度轮。默认情况下,如果标准输出有一个 tty,则显示进度轮。
- ANSIBLE_GALAXY_CACHE_DIR
存储从 Galaxy 服务器缓存的响应的目录。这仅由
ansible-galaxy collection install
和download
命令使用。如果该目录中的缓存文件是可全局写入的,则会忽略它们。
- ANSIBLE_GALAXY_DISABLE_GPG_VERIFY
在安装集合时禁用 GPG 签名验证。
- ANSIBLE_GALAXY_GPG_KEYRING
配置用于在安装和验证集合时进行 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_GALAXY_COLLECTION_IMPORT_POLL_INTERVAL
轮询集合导入状态的初始间隔(以秒为单位)。此间隔会根据 GALAXY_COLLECTION_IMPORT_POLL_FACTOR 以指数方式增长,最大延迟为 30 秒。
- ANSIBLE_GALAXY_COLLECTION_IMPORT_POLL_FACTOR
用于增加 GALAXY_COLLECTION_IMPORT_POLL_INTERVAL 的倍数,用于检查集合导入状态。
- 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_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_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
这将设置哪些剧本目录将用作处理变量插件的根目录,其中包括查找 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
此选项控制是否应创建 .retry 文件以指示 Ansible 剧本失败。
- ANSIBLE_RETRY_FILES_SAVE_PATH
这设置了 Ansible 在剧本失败且启用重试文件时保存 .retry 文件的路径。每次运行后都会使用所有剧本中失败的主机列表覆盖此文件。
- ANSIBLE_RUN_VARS_PLUGINS
此设置可用于根据用户的清单大小和剧本选择优化 vars_plugin 使用。
- ANSIBLE_SHOW_CUSTOM_STATS
这会将通过 set_stats 插件设置的自定义统计信息添加到默认输出中。
另请参阅 SHOW_CUSTOM_STATS
- ANSIBLE_STRING_TYPE_FILTERS
此过滤器列表在模板化变量时避免“类型转换”。例如,当您希望避免将 JSON 字符串转换为列表或字典时,这很有用。
另请参阅 STRING_TYPE_FILTERS
- ANSIBLE_SYSTEM_WARNINGS
允许禁用与运行 Ansible 本身(而不是受管主机)的系统上的潜在问题相关的警告。这可能包括有关第三方软件包或其他应尽可能解决的条件的警告。
另请参阅 SYSTEM_WARNINGS
- ANSIBLE_TARGET_LOG_INFO
要在目标日志中插入的字符串,用于跟踪目的。
另请参阅 TARGET_LOG_INFO
- ANSIBLE_TASK_TIMEOUT
设置任务操作执行的最大时间(以秒为单位)。超时独立于模板化或循环运行。它适用于每次尝试执行任务的操作,并且不受任务花费的总时间的影响。当操作执行超过超时时间时,Ansible 会中断进程。这被注册为由于外部环境导致的失败,而不是任务失败,以接收适当的响应和恢复过程。如果设置为 0(默认值),则没有超时。
另请参阅 TASK_TIMEOUT
- ANSIBLE_WORKER_SHUTDOWN_POLL_COUNT
检查任务队列管理器工作进程以验证它们是否已干净退出时的最大次数。达到此限制后,任何仍在运行的工作进程都将被终止。仅供内部使用。
- ANSIBLE_WORKER_SHUTDOWN_POLL_DELAY
检查任务队列管理器工作进程以验证它们是否已干净退出时,轮询循环之间睡眠的秒数。仅供内部使用。
- ANSIBLE_USE_PERSISTENT_CONNECTIONS
切换连接持久性的使用。
- ANSIBLE_VARS_ENABLED
接受需要它的变量插件的列表。
- ANSIBLE_PRECEDENCE
允许更改组变量优先级合并顺序。
另请参阅 VARIABLE_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 配置文件路径以读取堡垒/跳跃主机的设置。
另请参阅 NETCONF_SSH_CONFIG
- ANSIBLE_VALIDATE_ACTION_GROUP_METADATA
一个切换,用于禁用对集合的“metadata”条目(针对 module_defaults 操作组)进行验证。当此选项为 True 时,包含意外字段或值类型的元数据将产生警告。
- ANSIBLE_VERBOSE_TO_STDERR
强制“verbose”选项使用stderr而不是stdout
另请参阅 VERBOSE_TO_STDERR