- SaltStack 教程
- SaltStack - 首頁
- SaltStack - 概述
- SaltStack 架構
- SaltStack - 競爭對手
- SaltStack - 安裝
- 建立簡單的環境
- SaltStack - 訪問控制系統
- SaltStack - 作業管理
- SaltStack - Salt 檔案伺服器
- SaltStack - 使用 Git 作為檔案伺服器
- 使用 MinionFS 作為檔案伺服器
- SaltStack - 使用 Salt 與 Cron
- SaltStack - 遠端執行
- 配置管理
- SaltStack - 日誌記錄
- SaltStack - 透過 SSH 使用 Salt
- Salt 用於雲基礎設施
- SaltStack - Salt 代理 Minion
- SaltStack - 事件系統
- SaltStack - 編排
- SaltStack - Salt 包管理器
- SaltStack - Python API
- SaltStack - 工作示例
- SaltStack 有用資源
- SaltStack - 快速指南
- SaltStack - 有用資源
- SaltStack - 討論
SaltStack 架構
SaltStack 的架構設計可以與任意數量的伺服器一起工作,從本地網路系統到跨不同資料中心的其它部署。該架構是一個簡單的伺服器/客戶端模型,其所需的功能內置於一組守護程序中。
請檢視下圖。它顯示了 SaltStack 架構的不同元件。
SaltMaster − SaltMaster 是主守護程序。SaltMaster 用於向 Salt 從屬傳送命令和配置。單個主伺服器可以管理多個從屬伺服器。
SaltMinions − SaltMinion 是從屬守護程序。Salt minion 從 SaltMaster 接收命令和配置。
執行 − 從命令行針對一個或多個 minion 執行模組和臨時命令。它執行即時監控。
公式 (Formulas) − 公式是預先編寫的 Salt 狀態。它們與 Salt 狀態本身一樣開放,可用於安裝包、配置和啟動服務、設定使用者或許可權以及許多其他常見任務。
Grains − Grains 是一個介面,提供特定於 minion 的資訊。透過 grains 介面可用的資訊是靜態的。Salt minion 啟動時載入 Grains。這意味著 grains 中的資訊是不變的。因此,grains 資訊可能是關於正在執行的核心或作業系統的。它不區分大小寫。
Pillar − Pillar 是一個介面,用於生成和儲存特定於某個 minion 的高度敏感資料,例如加密金鑰和密碼。它以鍵值對儲存資料,資料管理方式與 Salt 狀態樹類似。
頂部檔案 (Top File) − 將 Salt 狀態和 pillar 資料與 Salt minion 匹配。
Runners − 它是一個位於 SaltMaster 內部的模組,執行諸如作業狀態、連線狀態、讀取外部 API 的資料、查詢已連線的 salt minion 等任務。
Returners − 將資料從 Salt minion 返回到另一個系統。
Reactor − 它負責在 SaltStack 環境中發生事件時觸發反應。
SaltCloud − Salt Cloud 提供了一個強大的介面來與雲主機互動。
SaltSSH − 在不使用 Salt minion 的系統上透過 SSH 執行 Salt 命令。
在下一章中,我們將詳細瞭解 SaltStack 的各種競爭對手及其功能。