Ansible CLI 快捷参考指南
本页为每个 Ansible 命令行实用程序提供了一个或多个示例,并添加了一些常用标志以及指向该命令完整文档的链接。本页仅提供一些常见用例的快速提醒 —— 内容可能已过时或不完整,或两者兼有。如需权威文档,请点击链接跳转至 CLI 页面。
ansible-playbook
ansible-playbook -i /path/to/my_inventory_file -u my_connection_user -k -f 3 -T 30 -t my_tag -M /path/to/my_modules -b -K my_playbook.yml
- 从当前工作目录加载
my_playbook.yml并且 -i- 在提供的路径中使用my_inventory_file作为 清单 (inventory) 来匹配 模式 (pattern)。-u- 以my_connection_user用户身份 通过 SSH 连接。-k- 请求密码,随后将该密码提供给 SSH 认证。-f- 分配 3 个 并发进程 (forks)。-T- 设置 30 秒超时。-t- 仅运行标记有 标签 (tag)my_tag的任务。-M- 从/path/to/my/modules加载 本地模块。-b- 以提升的权限执行(使用 become)。-K- 提示用户输入 become 密码。
详见 ansible-playbook 的详细文档。
ansible-galaxy
安装集合 (collections)
安装单个集合
ansible-galaxy collection install mynamespace.mycollection
从配置的 Galaxy 服务器(默认是 galaxy.ansible.com)下载 mynamespace.mycollection。
安装集合列表
ansible-galaxy collection install -r requirements.yml
下载 requirements.yml 文件中指定的集合列表。
列出所有已安装的集合
ansible-galaxy collection list
安装角色 (roles)
安装名为 example.role 的角色
ansible-galaxy role install example.role
# SNIPPED_OUTPUT
- extracting example.role to /home/user/.ansible/roles/example.role
- example.role was installed successfully
列出所有已安装的角色
ansible-galaxy role list
详见 ansible-galaxy 的详细文档。
ansible
运行即时 (ad-hoc) 命令
安装软件包
ansible localhost -m ansible.builtin.apt -a "name=apache2 state=present" -b -K
运行 ansible localhost - 在本地系统上运行。 - name=apache2 state=present - 在基于 Debian 的系统上安装 apache2 软件包。 - -b - 使用 become 以提升的权限执行。 - -m - 指定模块名称。 - -K - 提示输入权限提升密码。
localhost | SUCCESS => {
"cache_update_time": 1709959287,
"cache_updated": false,
"changed": false
#...
ansible-doc
显示插件名称及其源文件
ansible-doc -F
#...
显示可用插件
ansible-doc -t module -l
#...