模块选项查询说明
当前 Ansible 版本
[root@awx-1 ansible]# ansible --version
ansible [core 2.16.3]
config file = /root/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.12/site-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.12.8 (main, Dec 12 2024, 16:30:29) [GCC 8.5.0 20210514 (Red Hat 8.5.0-22)] (/usr/bin/python3.12)
jinja version = 3.1.2
libyaml = True
Ansible 版本:2.16.3
Python 版本:3.12.8
后边会写一些常用模块的常用选项和使用例子,全部都基于这个版本写的。
通过 ansible-doc 查询模块
通过 ansible-doc -l
可以列出当前所有可用模块:
[root@awx-1 ansible]# ansible-doc -l | grep ansible.builtin | head
ansible.builtin.add_host Add a host (and alternatively a group) to the ansible-playbo...
ansible.builtin.apt ...
ansible.builtin.apt_key Ad...
ansible.builtin.apt_repository Add and r...
ansible.builtin.assemble Assemble configuratio...
ansible.builtin.assert Asserts give...
ansible.builtin.async_status Obtain statu...
ansible.builtin.blockinfile Insert/update/remove a text block surr...
ansible.builtin.command Execu...
ansible.builtin.copy Copy fil...
通过 ansible-doc ansible.builtin.yum
可以查询 ansible.builtin.yum
使用说明:
[root@awx-1 ansible]# ansible-doc ansible.builtin.yum
查询的信息有以下重要段落(比方说通过 /EXAMPLE
来搜索例子):
-
OPTIONS:可用选项(选项)
针对 OPTIONS,有两个重要的属性:
-
type
:定义了选项的数据结构(list/str/bool
等) -
list
:列表 -
str
:字符串 -
bool
:布尔值(yes/no
、true/false
)
比如
ansible.builtin.yum
模块的name
选项的type
为list
,所以写法如下:- name: Download the nginx package but do not install it ansible.builtin.yum: name: - nginx - mysql state: latest
default
:定义选项的默认值
-
-
EXAMPLES:使用例子
EXAMPLE 里列出了常用方法,不会用模块的时候可以参考 EXAMPLE。
通过 ansible-doc -s ansible.builtin.yum
可以列出模块所有选项:
[root@awx-1 ansible]# ansible-doc -s ansible.builtin.yum
我一般的使用习惯就是先
ansible-doc ansible.builtin.yum
,然后搜索 EXAMPLE,直接抄例子。