官术网_书友最值得收藏!

Ansible modules

Ansible ships with a number of modules (called the module library) that can be executed directly on remote hosts or through playbooks.Tasks in playbooks call modules to do the work. 

Ansible has many modules, most of which are community contributed and maintained. Core modules are maintained by the Ansible core engineering team and will always ship with Ansible itself.

Users can also write their own modules. These modules can control system resources, like services, packages, or files (anything really), or handle executing system commands.

Here is the list of modules available by Ansible: http://docs.ansible.com/ansible/latest/modules_by_category.html#module-index.
If you use Dash (https://kapeli.com/dash) or Zeal (https://zealdocs.org/), you can download the offline version for easy reference.

Modules can be executed via the command line as well. We will be using modules to write all the tasks inside our playbooks. All modules technically return JSON format data. 

Modules should be idempotent and should avoid making any changes if they detect that the current state matches the desired final state. When using Ansible playbooks, these modules can trigger change events in the form of notifying handlers to run additional tasks.

Documentation for each module can be accessed from the command line with the ansible-doc tool:

$ ansible-doc apt

We can list all the modules available on our host:

$ ansible-doc -l

Start the Apache web server on all nodes grouped under webservers by executing the httpd module. Note the use of the -m flag:

$ ansible webservers -m service -a "name=httpd state=started"

This snippet shows the exact same command but inside a playbook in YAML syntax:

- name: restart webserver
  service:
    name: httpd
    state: started

Each module contains multiple parameters and options, get to know more about the features of the modules by looking at their documentation and examples.

主站蜘蛛池模板: 敦化市| 竹山县| 互助| 彰武县| 台南县| 隆德县| 定边县| 麻栗坡县| 塘沽区| 贞丰县| 定陶县| 抚远县| 新巴尔虎左旗| 炉霍县| 柘城县| 红桥区| 定远县| 延边| 岑溪市| 永靖县| 大田县| 攀枝花市| 达拉特旗| 蒙阴县| 永川市| 油尖旺区| 大名县| 韩城市| 务川| 原平市| 太和县| 龙井市| 湘潭市| 沅江市| 安乡县| 谷城县| 玉山县| 德清县| 临汾市| 玛纳斯县| 阿图什市|