Ansible api详解
一: 环境介绍:
CentOS Linux release 7.7.1908 (Core)
ansible-2.7.8-1.el7.ans.noarch
文档:
-
官方文档
version2.8: https://docs.ansible.com/ansible/latest/dev_guide/developing_api.html version2.7: https://docs.ansible.com/ansible/2.7/dev_guide/developing_api.html
-
其他参考文档
二: ansible的api模块的含义
from ansible.inventory.manager import InventoryManager
from ansible.parsing.dataloader import DataLoader
from ansible.vars.manager import VariableManager
from ansible.playbook.play import Play
from ansible.executor.task_queue_manager import TaskQueueManager
from ansible.plugins.callback import CallbackBase
from collections import namedtuple
参数详解:
DataLoader
来加载解析yaml
文件或JSON
内容,并且支持vault的解密VariableManager
用来处理ansible各个层级(Playbook/Group/Host等)中的变量Play
用来执行远程任务TaskQueueManager
顾名思义, 这是ansible的任务队列管理器