SaltStack netapi模塊——Client interfaces客戶端開發接口

原文鏈接:https://docs.saltstack.com/en/latest/topics/netapi/index.html#client-interfaces

Salt的客戶端接口通過製作映射到函數參數的值的字典來對外暴露可執行的功能函數。 這允許僅通過創建數據結構來調用函數。 (而這也正是Salt自己內部的工作方式!)

您也可以參考在Github上維護的這一份技術資料:Client interfaces of netapi modules

class salt.netapi.NetapiClient(opts)

提供一種以low-data數據結構形式訪問Salt中各種客戶端接口的統一方法。 例如:

>>> client = NetapiClient(__opts__)
>>> lowstate = {'client': 'local', 'tgt': '*', 'fun': 'test.ping', 'arg': ''}
>>> client.run(lowstate)

local

local(*args, **kwargs)

同步方式運行execution modules

有關所有可用參數,請參見 salt.client.LocalClient.cmd()

從master主機發送命令到目標minions。 這與Salt自己的CLI使用的接口相同。 請注意,argkwarg參數被髮送到minions,並且使用這些參數調用指定的函數fun

返回:執行模塊輸出的結果。

##local_async

local_async(*args, **kwargs)

異步方式運行execution modules

是基於salt.client.LocalClient.run_job()客戶端接口函數的一個包裝實現。

返回:job ID

local_subset

local_subset(*args, **kwargs)

在指定網絡子網範圍內的minions上運行execution modules

New in version 2016.3.0.

基於salt.client.LocalClient.cmd_subset()做的包裝實現。

runner

runner(fun, timeout=None, full_return=False, **kwargs)

以同步方式執行 runner modules <all-salt.runners> 。

基於 salt.runner.RunnerClient.cmd_sync()的包裝實現。

請注意,runner程序函數必須使用關鍵字參數進行調用。 不支持位置參數。

返回:從運行器模塊返回的結果

runner_async

runner_async(fun, **kwargs)

以異步方式執行 runner modules <all-salt.runners> 。

基於 salt.runner.RunnerClient.cmd_async()的包裝實現。

請注意,runner程序函數必須使用關鍵字參數進行調用。 不支持位置參數。

返回:執行的函數的事件數據和job ID

ssh

**ssh(*args, kwargs)

以同步方式執行 salt-ssh 命令。

基於 salt.client.ssh.client.SSHClient.cmd()的包裝實現。

返回:執行salt-ssh 命令的結果

wheel

wheel(fun, **kwargs)

以同步方式運行 wheel 模塊。

基於 salt.wheel.WheelClient.cmd()函數的一個封裝實現。

請注意,wheel程序函數必須使用關鍵字參數進行調用。 不支持位置參數。

返回:運行 wheel 模塊的結果

wheel_async

wheel_async(fun, **kwargs)

以異步方式運行 wheel 模塊。

基於 salt.wheel.WheelClient.cmd_async()函數的一個封裝實現。

請注意,wheel程序函數必須使用關鍵字參數進行調用。 不支持位置參數。

返回:運行 wheel 模塊的結果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章