測試的時候,可以CURL -K,但真正作集成的時候,卻是不可以的。
必須,不可以讓TOKEN滿天飛吧。
現在進入這個階段了。寫個樣例先:
import salt import salt.auth import salt.log import saltapiopts = salt.client.LocalClient().opts auth = salt.auth.LoadAuth(opts) lowstate = {'username':'XXX','password':'XXX','eauth':'pam'} token = auth.mk_token(lowstate) api = saltapi.APIClient(opts) lowstate = {'client':'local','fun':'cmd.run','arg':['ls','/',],'tgt':'192.168.11.69','token':token['token']} res = api.run(lowstate) for (k,v) in res.items():print k,v
輸出:
[root@localhost]# python salt-api.py
192.168.11.69 bin
boot
dev
etc
home
lib
lib64
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
~~~~~~~~~~~~~~
其它都不用太在意,但lowstate里的fun是salt的功能(test.ping,disk.usage,cmd.run.....)這些。而arg則是可能的參數,注意,如果是遠程執行命令時,則參數是以列表的形式提供喲。。
?