通过 Python 以 playbook 模式 调用Ansible API

本文介绍了如何通过Python脚本以playbook模式调用Ansible API,详细展示了如何初始化配置,加载yaml文件,设置执行参数,并最终运行playbook。示例中使用了 DataLoader、Inventory、PlaybookExecutor 等关键模块,适用于自动化部署和管理场景。
摘要由CSDN通过智能技术生成

#!/usr/bin/env python

from collections import namedtuple
from ansible.parsing.dataloader import DataLoader
from ansible.vars import VariableManager
from ansible.inventory import Inventory
from ansible.executor.playbook_executor import PlaybookExecutor #引入executor模块

#用来加载解析yml文件或者json内容
loader = DataLoader() #读取yaml文件
variable_manager = VariableManager()

#根据inventory加载对应变量,此处host_list参数可以有两种格式:
#1: hosts文件(需要),
#2: 可以是IP列表,此处使用IP列表
inventory = Inventory(loader=loader, variable_manager=variable_manager,host_list=’/data/test/ansible_2.3/hosts’) #这里可通过分析源码得到参数
variable_manager.set_inventory(inventory)
passwords=None
#初始化
Options = namedtuple(‘Options’,
[‘connection’,
‘remote_user’,
‘ask_sudo_pass’,
‘verbosity’,
‘ack_pass’,
‘module_path’,
‘forks’,
‘become’,
‘become_method’,
‘become_user’,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值