- SaltStack 教程
- SaltStack - 首頁
- SaltStack - 概述
- SaltStack - 架構
- SaltStack - 競爭對手
- SaltStack - 安裝
- 建立簡單的環境
- SaltStack - 訪問控制系統
- SaltStack - 作業管理
- SaltStack - Salt 檔案伺服器
- SaltStack - Git 作為檔案伺服器
- 使用 MinionFS 作為檔案伺服器
- SaltStack - 使用 Cron 與 Salt
- SaltStack - 遠端執行
- 配置管理
- SaltStack - 日誌記錄
- SaltStack - 透過 SSH 使用 Salt
- Salt 用於雲基礎設施
- SaltStack - Salt 代理 Minion
- SaltStack - 事件系統
- SaltStack - 編排
- SaltStack - Salt 包管理器
- SaltStack - Python API
- SaltStack - 工作示例
- SaltStack 有用資源
- SaltStack - 快速指南
- SaltStack - 有用資源
- SaltStack - 討論
SaltStack - 安裝
在開始安裝之前,您需要滿足以下要求:
一臺 Linux 伺服器(最新的 Ubuntu 伺服器)。
對該伺服器擁有 sudo 或 root 許可權。
使用以下命令安裝所有更新:
sudo apt-get update
安裝 Salt Master
使用以下 apt-get 命令從倉庫安裝 Salt Master。
sudo apt-get install salt-master
安裝 Salt Minion
使用以下 apt-get 命令從倉庫安裝 Salt minion。
sudo apt-get install salt-minion
安裝 Salt Syndic
使用以下 apt-get 命令從倉庫安裝 Salt syndic。
sudo apt-get install salt-syndic
Master 配置
Salt 配置非常簡單。Master 的預設配置適用於大多數安裝。配置檔案安裝在 ‘/etc/salt’ 目錄中,並以其各自的元件命名,例如:/etc/salt/master 和 /etc/salt/minion。
#interface: 0.0.0.0 interface: <local ip address>
更新配置檔案後,使用以下命令重啟 Salt master。
sudo service salt-master restart
Minion 配置
配置 Salt Minion 非常簡單。預設情況下,Salt Minion 會嘗試連線到 DNS 名為“salt”的伺服器;如果 Minion 能夠正確解析該名稱,則無需進行任何配置。請重新定義 minion 配置檔案(通常為 /etc/salt/minion)中的“master”指令,如下程式碼所示:
#master: salt master: <local ip address>
更新配置檔案後,使用以下命令重啟 Salt minion。
sudo service salt-minion restart
金鑰管理
Salt 使用 AES 加密進行 Master 和 Minion 之間的所有通訊。Master 和 Minion 之間的通訊透過受信任的、已接受的金鑰進行身份驗證。
salt-key -L
這將產生以下 輸出:
Accepted Keys: Denied Keys: Unaccepted Keys: <local system name> Rejected Keys:
使用以下命令接受所有金鑰。
sudo salt-key -A
這將產生以下 輸出:
The following keys are going to be accepted: Unaccepted Keys: <local system name> Proceed? [n/Y] y Key for minion bala-Inspiron-N4010 accepted.
現在再次發出 salt key listing 命令,
salt-key -L
這將產生以下 輸出:
Accepted Keys: <local system name> Denied Keys: Unaccepted Keys: Rejected Keys:
傳送命令
必須透過執行 test.ping 命令來驗證 Master 和 Minion 之間的通訊。
sudo salt '*' test.ping
這將產生以下 輸出:
<local system name> True
這裡,‘*’ 指的是所有 minion。由於我們只有一個 minion,test.ping 將執行 ping 命令並返回 ping 是否成功。