用途:Ansible 是无代理、基于推送的自动化与配置管理工具,Linux 走 SSH、Windows 走 WinRM,用于批量执行命令、下发配置、编排部署与巡检。
主要能力:提供 ansible、ansible-playbook、ansible-vault、ansible-galaxy、ansible-inventory、ansible-lint 等命令。常用操作包括 ansible all -m ping、ansible-playbook playbook.yml、ad-hoc shell 与 package 模块、ansible-inventory --list 或 --graph、ansible-vault encrypt_string 与 edit、ansible-galaxy install role 或 collection。
安装与配置:可使用 pip install ansible、apt install ansible 或 dnf install ansible。系统配置在 /etc/ansible/ansible.cfg,用户配置在 ~/.ansible.cfg 并覆盖系统配置;默认清单为 /etc/ansible/hosts,角色路径为 /etc/ansible/roles(系统)和 ~/.ansible/roles(用户),集合路径为 ~/.ansible/collections/。
使用方式:编写 playbook 并指定清单运行;可用 --check --diff 做演练、--limit 限定主机或组、按标签运行或跳过、--syntax-check 做语法检查、-vvv 输出详细日志、--start-at-task 从某任务继续。
常见限制:变量优先级有 16 层,extra_vars 最高,排查变量问题先查优先级;command/shell 模块非幂等,可用参数已说明应优先改用原生模块;新发行版系统 Python 为 /usr/bin/python3,需设置 interpreter_python = auto_silent;handler 在 play 末尾统一执行,必要时用 meta: flush_handlers;启用 SSH pipelining 需目标主机禁用 requiretty;集合缺失常导致模块找不到,需用 FQCN 并安装 collection。资料未给出具体收费、平台覆盖或效果数据。