簡介
在安全惡意軟體分析(SMA)裝置中,我們不提供SNMP協定來監控裝置資源使用情況,而是裝置提供Prometheus。
本文檔將概述如何配置遠端Prometheus例項和使用Grafanato視覺化從裝置中提取的資料。
必要條件
將下列工具下載並安裝至您的本機電腦/伺服器:
需求
- 安全惡意軟體分析(SMA)裝置軟體版本2.18及更高版本
- Windows電腦
- 對裝置管理員(Opadmin)控制檯的管理員訪問許可權
- 安全惡意軟體分析(SMA)裝置Opadmin SSL證書受本地電腦信任
採用元件
設定
在本檔案中,我們使用Windows 11 Pro作為遠端主機,安裝Prometheus和Grafana。這些工具也可用於Linux或MacOS。
1. 在安全惡意軟體分析(SMA)裝置中生成API金鑰以訪問指標
登入到SMA Appliance Opadmin。 透過Opadmin >操作>度量生成度量的API金鑰
2. 將生成基本身份驗證使用者名稱和密碼,我們需要在遠端Prometheus配置中使用它們。
3. 安裝和配置Prometheus
如果您使用的是Linux或MacOS,請依照Prometheus使用者指南提供的指示來安裝您的執行處理。在本文檔中,我們已在Windows 11電腦上安裝Prometheus,在安裝過程中,我們遵循此Youtube影片。
4. 建立名為prometheus.ymlwith
以下內容的配置檔案-
scrape_configs:
- job_name: metrics
scheme: https
file_sd_configs:
- files:
- 'targets.json'
relabel_configs:
- source_labels: [__address__]
regex: '[^/]+(/.*)' # capture '/...' part
target_label: __metrics_path__ # change metrics path
- source_labels: [__address__]
regex: '([^/]+)/.*' # capture host:port
target_label: __address__ # change target
basic_auth:
username: "API_KEY"
password: "2024-04-22T15:32:14.082689318Z xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
5. 在basic_auth
部分中,使用步驟1中生成的基本身份驗證使用者名稱和口令。
6. 在登入Opadmin之後,在UI中輸入下列專案,以取得您將能夠取得測量結果的服務組態-
https://<opadmin IP>/metrics/v1/config
您將獲得類似於-
[{"labels":{"service":"classifier"},"targets":["192.168.97.111:443/metrics/v1/service/classifier"]},{"labels":{"service":"dictator"},"targets":["192.168.97.111:443/metrics/v1/service/dictator"]},{"labels":{"service":"fav2"},"targets":["192.168.97.111:443/metrics/v1/service/fav2"]},{"labels":{"service":"monbox"},"targets":["192.168.97.111:443/metrics/v1/service/monbox"]},{"labels":{"service":"node-exporter"},"targets":["192.168.97.111:443/metrics/v1/service/node-exporter"]},{"labels":{"service":"observer"},"targets":["192.168.97.111:443/metrics/v1/service/observer"]},{"labels":{"service":"supervisor"},"targets":["192.168.97.111:443/metrics/v1/service/supervisor"]},{"labels":{"service":"ven-entrance"},"targets":["192.168.97.111:443/metrics/v1/service/ven-entrance"]}]
此處,192.168.97.111
是我的SMA裝置的管理IP。
7. 建立名為targets.json
的檔案,並將上述內容複製到該檔案中。
8. 將prometheus.yml
和targets.json
複製到Prometheus目錄(按照安裝指南操作)。對於Windows,我已在C:\驅動器中建立資料夾,並已提取該資料夾中的Prometheus安裝檔案。然後將prometheus.yml
和targets.json
複製到同一資料夾。
9. 啟動Prometheus
啟動普羅米修斯。對於Windows,請從命令列執行prometheus.exe
。
C:\Prometheus\prometheus-2.51.2.windows-amd64\prometheus-2.51.2.windows-amd64>prometheus.exe
這將啟動Prometheus並開始從SMA裝置提取度量。注意:請勿關閉命令列,否則Prometheus將關閉。
10. 要檢查本地Prometheus例項是否能從SMA裝置載入Prometheus UI提取度量- 'http://localhost:9090/'
11. 轉至Status
> Targets
- http://localhost:9090/targets?search=
幾分鐘內,您應該會看到所有目標和狀態都為UP
(藍色)。
12. 安裝和配置Grafana
從Grafana Labs下載Grafana執行檔。 安裝Granafa,然後按照安裝程式提供的說明進行操作。
13. 在瀏覽器中安裝Grafana access UI之後-http://localhost:3000/
轉至Home > Connections > Data sources - 'http://localhost:3000/connections/datasources'
從清單中選擇增加新資料來源
和SelectPrometheus
。 輸入「http://localhost:9090/」作為Prometheus伺服器URL
在該頁底部選擇Save & test
。測試成功後,我們可以建立儀表板。
14. 建立Grafana儀表板
在Grafana UI中轉至
控制台(SelectCreate Dashboard
>增加視覺化
)。選取Prometheus
資料來源。
在查詢生成器中,選擇Codeinput,選擇視覺化型別(我選擇了儀表盤)
輸入以下查詢CPU Utilization-
100-(avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
15. 按一下Run
查詢,您應該會看到如下所示的CPU使用率視覺化-
16. 儲存面板,命名圖示板,然後儲存。 增加另一個記憶體使用情況的視覺化
-
17. 針對記憶體使用率,請使用下列查詢
(node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes) / (1024*1024*1024)
18. 儲存變更,您應該擁有如下的儀表板-
19. 還提供其他硬體和軟體度量。有關詳細資訊,請按一下Opadmin
> Metrics頁
中提供的連結
Grafana儀表板範本
Grafana網站上有許多Grafana Dashboard範本可供節點匯出程式使用。其中一個是-節點匯出程式已滿
1. 要將此儀表板導入您的Grafana例項下載JSON,請導入Grafana中的JSON檔案
2. 上傳JSON檔案並選擇Prometheusdata source
3. 這將建立一個包含大量硬體資訊的儀表板(並非所有面板指標都可用)-
疑難排解
如果Prometheus未能從SMA裝置連線和提取度量,您將在Status
> Targets
-中看到此錯誤 http://localhost:9090/targets?search=
如果存在anyError
,需要先修復此問題,然後才能提取資料。常見問題是SMA裝置的SSL證書Opadmin不受本地電腦信任。確保使用IP和DNS SAN建立SMA管理證書,並將簽名根CA增加到本地電腦的信任儲存中。