- 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 - 事件系統
Salt 中的事件系統是一個本地 ZeroMQ PUB 介面,它觸發 Salt 事件。它由以下元件執行。
事件套接字 − 用於釋出事件。
事件庫 − 用於監聽事件並將事件傳送到 Salt 系統。
Salt Master 事件
Salt master 提供不同型別的事件,詳述如下:
- 身份驗證事件
- 啟動事件
- 金鑰事件
- 作業事件
- Runner 事件
- 存在事件
- 雲事件
讓我們詳細瞭解每種事件型別。
身份驗證事件
當 minion 與 master 執行身份驗證檢查時,會觸發這些身份驗證事件。它由 salt/auth 表示。
啟動事件
每當 minion 連線到 Salt master 時,都會觸發啟動事件,它由 salt/minion//start 表示。
金鑰事件
當 Salt master 接受和拒絕 Salt minion 上的金鑰時,會觸發金鑰事件。您可以使用 salt-key 命令訪問此事件。
作業事件
每當新作業即將開始時,就會觸發作業事件。它由 salt/job//new 表示。這裡,JID - 作業 ID new - 新作業
Runner 事件
當 runner 開始執行時,會觸發 runner 事件。它由 salt/run//new 表示。
存在事件
當 minion 連線或新連線或斷開連線時,會定期觸發此事件。它由 – salt/presence/present 和 salt/presence/change 表示。這裡:
Present − 表示 Salt master 當前已連線到 minion 列表。
Change − 用於檢測新的 minion – 已連線或已斷開連線。
雲事件
salt-cloud 事件在虛擬機器上觸發。除非其他事件,否則它不會在 minion 上執行。您可以使用 – salt/cloud//creating 訪問它。當 Salt cloud 開始虛擬機器執行過程時,它會被觸發。
事件工具
現在,讓我們瞭解事件工具和指令碼。您可以使用 CLI 訪問事件匯流排。它可以透過以下命令訪問。
salt-run state.event pretty = True
在這裡,runner 旨在從外部工具和 shell 指令碼與事件匯流排互動。Salt 的事件匯流排可以透過 REST API 遠端訪問。它由 – (示例 URL) 表示。
curl -SsNk https://salt-api.example.com:8000/events?token = 05A3.
同樣,您也可以從 Python 指令碼訪問事件。