ansible api

时间:2023-03-08 17:44:23

##一个简单的python脚本,通过ansible的api调用get_url模块实现远程下载功能

 #!/usr/bin/env python
import json
import ansible.runner runner = ansible.runner.Runner(
module_name='get_url', #模块
module_args='url="http://192.168.1.100/Operation/zhao/script/falcon-agent.sh" dest=/tmp mode=0440 force=yes', #参数
pattern='192.168.1.101', #被操作主机
forks=10
)
dataresult = runner.run() #获取执行结果
data = json.dumps(dataresult, indent=4) #转化为json格式
print data

##一个简单的python脚本,通过ansible的api调用script模块实现在被管理端执行shell脚本,并传参

  1 #!/usr/bin/env python
2 import json
3 import ansible.runner
4
5 runner = ansible.runner.Runner(
6 module_name="script", #script模块
7 module_args="/etc/ansible/falcon-agent.sh xymxd-and-dbs 192.168.1.100 creates=/home/work/install.log", #如果/home/work/install.log文件不存在,那么在被管理端执行/etc/ansible/falcon-agent.sh脚本,并传入两个参数,如果文件install.log文件存在,脚本则不执行
8 pattern="192.168.1.100", #被管理端机器
9 forks=10
10 )
11 result = runner.run()
12 data = json.dumps(result, indent=4)
13 print data