Ansible 命令行指南

————————原创: 厦门微思网络

Ansible 命令行指南_Ansible


1. ansible 命令

01作用

ansible 命令用于在指定主机上运行单个任务,通常用于执行快速的、一次性的操作。

02常用选项

-i:指定 Inventory 文件或脚本。
-m:指定模块。
-a:传递给模块的参数。
-u:指定远程主机的用户名。
-k:提示输入 SSH 密码。
-b:使用 become 提升权限(如 sudo)。
-K:提示输入 become 密码(如 sudo 密码)。

03示例

  1. Ping 测试
ansible all -m ping -i /path/to/inventory
  1. 安装软件包
ansible all -m apt -a "name=apache2 state=present" -b -i /path/to/inventory
  1. 重启服务
ansible webservers -m service -a "name=httpd state=restarted" -b -i /path/to/inventory

2. ansible-inventory 命令

01作用

ansible-inventory 命令用于显示和验证 Ansible Inventory 内容。

02常用选项

--list:显示 Inventory 中的所有主机和组。
--host:显示指定主机的详细信息。
--graph:以图形方式显示组与主机之间的关系。

03示例

  1. 显示所有主机和组
ansible-inventory -i /path/to/inventory --list
  1. 显示指定主机的详细信息
ansible-inventory -i /path/to/inventory --host hostname
  1. 以图形方式显示组与主机关系
ansible-inventory -i /path/to/inventory --graph

3. ansible-playbook 命令

01作用

ansible-playbook 命令用于运行 Ansible Playbook,执行一系列预定义的任务。

02常用选项

-i:指定 Inventory 文件或脚本。
-l:限制运行的主机或组。
-u:指定远程主机的用户名。
-k:提示输入 SSH 密码。
-b:使用 become 提升权限(如 sudo)。
-K:提示输入 become 密码(如 sudo 密码)。
--tags:仅运行指定标签的任务。
--skip-tags:跳过指定标签的任务。

03示例

  1. 运行 Playbook
ansible-playbook -i /path/to/inventory my_playbook.yml
  1. 运行带标签的任务
ansible-playbook -i /path/to/inventory my_playbook.yml --tags "configuration"
  1. 跳过指定标签的任务
ansible-playbook -i /path/to/inventory my_playbook.yml --skip-tags "deploy"

4. ansible-galaxy 命令

01作用

ansible-galaxy 命令用于管理 Ansible 角色和集合,支持下载、安装和发布角色及集合。

02常用选项

role:管理角色。
collection:管理集合。
install:安装角色或集合。
list:列出已安装的角色或集合。
remove:删除已安装的角色或集合。
init:初始化新的角色或集合。

03示例

  1. 安装角色
ansible-galaxy role install geerlingguy.apache
  1. 列出已安装的角色
ansible-galaxy role list
  1. 安装集合
ansible-galaxy collection install community.general
  1. 列出已安装的集合
ansible-galaxy collection list

5. ansible-doc 命令

01作用

ansible-doc 命令用于显示 Ansible 模块、插件和其他扩展的文档。

02常用选项

-l:列出所有模块和插件。
-s:显示模块的简短示例。
-t:指定插件类型(如模块、回调等)。

03示例

  1. 列出所有模块
ansible-doc -l
  1. 显示指定模块的文档
ansible-doc ansible.builtin.copy
  1. 显示模块的简短示例
ansible-doc -s ansible.builtin.yum

6. ansible-vault 命令

01作用

ansible-vault 命令用于加密和解密 Ansible 文件,如变量文件和 Playbook。

02常用选项

create:创建新的加密文件。
edit:编辑加密文件。
view:查看加密文件。
encrypt:加密现有文件。
decrypt:解密文件。
rekey:更改文件的加密密码。

03示例

  1. 创建新的加密文件
ansible-vault create secrets.yml
  1. 编辑加密文件
ansible-vault edit secrets.yml
  1. 加密现有文件
ansible-vault encrypt existing_file.yml
  1. 解密文件
ansible-vault decrypt encrypted_file.yml

7. ansible-config 命令

01作用

ansible-config 命令用于查看和管理 Ansible 配置。

02常用选项

list:列出所有配置选项及其当前值。
view:显示 Ansible 配置文件的内容。
dump:显示合并后的配置选项。

03示例

  1. 列出所有配置选项及其当前值
ansible-config list
  1. 查看当前 Ansible 配置文件的内容
ansible-config view
  1. 显示合并后的配置选项
ansible-config dump


往期相关文章推荐

END

微思网络,始于2002年 专业IT认证培训22年,面向全国招生!

微思-主要课程有: *网络技术:华为HCIA/ HCIP/HCIE;思科CCNA/CCNP/CCIE *Linux技术:红帽 RHCE/RHCA *K8S&容器:CKA/CKS *数据库:ORACLE OCP/ OCM ;MySQL ;达梦数据库 *虚拟化:VMware VCP/VCAP *安全认证:CISP体系/CISSP/ CISA;CCSK;CISAW体系 *管理类:PMP 项目管理;软考中/高项;ITIL体系;Togaf 其他课程如:ACP;Azure...