saltstack 遠程執行

本教程描述了遠程執行系統的工做原理:python

Salt 從一開始就被設計爲遠程執行工具,而且Salt中的其餘子系統大量使用遠程執行。git

  • Salt 命令旨在跨OS和跨平臺工做。一個 salt "*" pkg.install git 命令使用yum, apt, pacman或者基於目標平臺上軟件倉庫進行軟件安裝,一個命令支持多個系統。
  • 全部的Salt命令都以一致的數據結構返回結果。這樣能夠輕鬆檢查結果或將其存儲在數據庫中。
  • 全部目標系統均可以同時運行做業,由於他們都同時接受命令。
  • Salt使用數百個Python模塊庫來執行遠程管理,你能夠添加本身的,能夠使用python,shell命令或者幾乎任何其餘接口訪問的任何應用程序或服務均可以做爲Salt中的執行模塊公開。

遠程執行shell

使用Salt 命令界面訪問遠程執行系統。讓咱們從Salt接口發送一個簡單的命令,並經過Salt系統跟蹤它:數據庫

salt '*' test.rand_sleep 120

  

根據咱們對Salt通訊系統的瞭解,一下是發生的狀況:服務器

  1. 此命令經過發佈者端口發送到全部鏈接的minions數據結構

  2. 每一個minion檢查命令,根據目標評估本身,並決定是否應該運行命令。函數

  3. 目標系統運行該命令,而後將結果返回給請求服務器。工具

當Salt minion收到命令是,它只是找到正確的模塊(test),而後調用相應的函數(rand_sleep)提供所提供的參數(120)。從這個意義上講,你能夠將Salt視爲Python函數的一個(瘋狂強大)抽象層。spa

相關文章
相關標籤/搜索