用python登入遠端salt,並執行命令

2022-07-08 07:51:15 字數 1440 閱讀 3557

用python操作saltstack,如果是在本地,則可以用python的salt模組,但如果要操作遠端saltstack,則不行,今天就來看看怎麼操作。

用python操作遠端的saltstack,需要遠端saltstack安裝並開啟salt-api,然後用python登入salt-api獲取token,再執行命令,具體**如下:

把上面的引數格式化為字串,因為下面request函式需要str型別的引數

url = str(url.rstrip('

/')) + '

/login

' # 構造url

headers = # 設定頭部資訊

req = urllib2.request(url, params_encode, headers) #

params_encode為傳入字典引數,params_encode為none 則方法為get,有params_encode為post方法

opener =urllib2.urlopen(req)

resp =(opener.read()).strip()

s_token = (resp.split('

\n')[-2]).split('

:')[1]

return

s_token

defexec_salt_cmd(dip, cmd):

params =

params =urllib.urlencode(params)

token = get_salt_token('', 'salt', 'salt_pwd') # 這裡的賬號密碼是上篇文章中salt-master配置檔案裡面配置的

這就是簡單的用python登入遠端saltstack並執行命令。

salt遠端執行指令碼

如果針對大量的伺服器,那麼就需要去寫指令碼,然後使用salt對所有伺服器進行操作 高效並能節省時間。寫乙個簡單的指令碼 如 在master端 usr local bin下寫下如下指令碼 vim usr local bin shell.sh bin bash if d tmp 123 then rm ...

python實現ssh遠端登入

測試過程中,比較常用的操作就是將dut 待測物 接入網路中,然後遠端操控對dut,使用ssh遠端登陸到主機,然後執行相應的command即可 python 如下 paramiko是用python語言寫的乙個模組,遵循ssh2協議,支援以加密和認證的方式,進行遠端伺服器的連線 首先第一步我們需要安裝p...

python實現ssh遠端登入

python實現ssh遠端登入 測試過程中,比較常用的操作就是將dut 待測物 接入網路中,然後遠端操控對dut,使用ssh遠端登陸到主機,然後執行相應的command即可 python 如下 paramiko是用python語言寫的乙個模組,遵循ssh2協議,支援以加密和認證的方式,進行遠端伺服器...