saltstack 类接口调用示例

下面是salt-ssh类接口调用示例

ssh模式:

from salt.client.ssh.client import SSHClient

client = SSHClient()

ret = client.cmd('*','pillar.items')
print(ret)

agent模式:
如果是agent模式的话
from salt.client import LocalClient
client = LocalClient()

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
SaltAPI推送文件
"""
 
# #### 基于SSH:API ####
"""
from salt.client.ssh.client import SSHClient
client = SSHClient()
 
# 执行命令
# result = client.cmd('*', 'cmd.run', ('ls',))
 
# 调用grains
# ret = client.cmd('*','grains.items')
 
# 调用pillar
# ret = client.cmd('*','pillar.items')
 
# 执行 state
# ret = client.cmd('*','state.sls',('fengfeng','pillar={"xxxx":"luffy"}'))
 
# 发送文件
# ret = client.cmd('*','cp.get_file',('salt://fengfeng/files/test.conf','/data/s1.conf'))
 
# 发送文件
# ret = client.cmd('*','cp.get_url',('http://www.pythonav.com/allstatic/imgs/mv/picture/2.jpeg','/data/s1.jpeg'))
"""
# #### 基于Master:API ####
"""
import salt.client
local = salt.client.LocalClient()
 
# 执行命令
# result = client.cmd('*', 'cmd.run', ('ls',))
 
# 调用grains
# ret = client.cmd('*','grains.items')
 
# 调用pillar
# ret = client.cmd('*','pillar.items')
 
# 执行 state
# ret = client.cmd('*','state.sls',('fengfeng','pillar={"xxxx":"luffy"}'))
 
# 发送文件
# ret = client.cmd('*','cp.get_file',('salt://fengfeng/files/test.conf','/data/s1.conf'))
 
# 发送文件
# ret = client.cmd('*','cp.get_url',('http://www.pythonav.com/allstatic/imgs/mv/picture/2.jpeg','/data/s1.jpeg'))
"""
原文地址:https://www.cnblogs.com/ahliucong/p/10594131.html