本文介紹如何使用阿里云Prometheus監控ECS主機,以及配置主機監控組件、指標采集、告警的方案,以實現符合您所需的指標采集業務場景。
方案概覽
使用Prometheus監控ECS主機大致分為4步,如下:
ECS接入主機監控:接入后,會自動安裝各類開源Exporter,托管Prometheus Agent自動采集數據,統一管理。
配置主機監控組件(可選):重新配置主機監控組件參數,例如服務端口,以修復錯誤的部分,或者滿足新的業務需要。
配置指標采集(可選):廢棄不需要采集的指標,使指標數據更清晰,也可節省費用。
配置告警(可選):根據采集到的數據觸發告警,讓您對感興趣的指標變化有感知,幫助您更好的分析問題。
前提條件
已創建ECS實例。具體操作,請參見通過控制臺使用ECS實例(快捷版)。
已開通阿里云資源中心。具體操作,請參見開通資源中心。
說明由于Prometheus依賴阿里云資源中心獲取云產品當前登錄賬戶的VPC、ECS等數據進行服務發現,在操作ECS接入主機監控前,需要您已開通資源中心。
1.ECS接入主機監控
接入主機監控后,會默認在ECS主機上安裝Node-exporter和Process-exporter,托管Prometheus Agent自動采集數據,數據統一存儲、展示、告警,單次采集指標量約為1000條/臺。
1.1 接入主機監控
在ARMS控制臺的接入中心>基礎設施頁面,單擊主機監控。
在彈出的主機監控頁面中,選擇目標ECS所屬的VPC,按照需求填寫配置信息,配置說明請參見步驟一:接入主機監控數據。
單擊確定,等待1~2分鐘即可完成ECS主機監控接入。
1.2 查看監控大盤
在ARMS控制臺的接入管理>已接入環境>ECS環境列表中,單擊目標環境名稱,進入詳情頁面。
在組件管理頁簽,單擊組件類型區域的大盤,即可查看內置的Grafana大盤。
說明ECS接入主機監控后,如果監控大盤沒有數據,請檢查安全組配置,參見接入主機監控后,在監控大盤查看不到數據,為什么?。
2.配置主機監控組件(可選)
在ECS接入主機監控后,如果您想修改主機監控組件的配置,例如主機服務發現的方式、服務端口、采集間隔等,可以參考下面的方案操作。
2.1 配置方案
在ARMS控制臺的接入管理>已接入環境>ECS環境列表中,單擊目標環境名稱,進入詳情頁面。
找到目標組件,單擊設置。
根據需求修改主機監控組件配置,完成后單擊確定,配置說明請參見步驟一:接入主機監控數據。
2.2 驗證
刷新頁面,再次單擊設置即可查看到修改生效。
查看監控大盤,觀察數據是否符合預期。參見1.2 查看監控大盤。
3.配置指標采集(可選)
可根據您的業務需求配置不需采集的指標,將指標廢棄,廢棄的指標將不會再采集,幫助您更輕松的分析和管理。
3.1 配置方案
3.2 驗證
單擊更新后,刷新頁面即可查看到修改生效。
查看監控大盤,觀察數據是否符合預期。參見1.2 查看監控大盤。
4.配置告警(可選)
您可以配置不同規則的告警,監控感興趣的指標,當指標的變化觸發告警時,可以及時通知您,方便您日常維護和問題分析。
告警分為內置告警和自定義告警兩種,內置告警無法新增,如果需要新增告警,可新增自定義告警。下面介紹兩種告警的配置方式。
4.1 配置內置告警
內置的告警規則默認會產生告警事件,但不會進行告警通知,如需通知,可參考下文編輯內置告警規則,配置通知方式。
在ARMS控制臺的接入管理>已接入環境>ECS環境列表中,單擊目標環境名稱,進入詳情頁面。
在組件管理頁簽,單擊組件類型區域的告警規則,即可查看告警事件或者編輯告警。
根據需要編輯告警,單擊完成。配置參數的具體說明請參見Prometheus告警規則。
4.2 配置自定義告警
當內置告警無法滿足您的需要時,您可以為該Prometheus實例配置自定義告警。
在ARMS控制臺的接入管理>已接入環境>ECS環境列表中,單擊目標環境名稱,進入詳情頁面。
在組件管理頁簽,單擊基本信息區域的默認指標存儲。
進入告警規則頁面,即可創建、編輯和查看自定義告警。告警配置說明請參見Prometheus告警規則。
4.3 驗證
修改告警配置后,刷新頁面即可查看到修改生效。
可配置易觸發、無風險的告警規則,配置后嘗試觸發告警,查看是否符合預期。
說明告警通知的具體方式由您的告警配置決定。
常見問題
接入主機監控后,在監控大盤查看不到數據,為什么?
如果監控大盤沒有數據,可能是ECS的安全組未放通導致的,請您確認:
ECS的安全組在入方向需要允許100.64.0.0/10和192.168.0.0/18網段對node-exporter、process-exporter端口的訪問權限(node-exporter默認端口:9100,process-exporter默認端口:9256,具體端口需要根據您的配置確認)。查看ECS的安全組詳情,請參見查詢安全組。
選擇了自動安裝,但Node-Exporter并沒有在我的ECS中安裝成功,為什么?
請檢查以下幾點:
您的ECS實例是否處于運行狀態。
目標ECS實例是否已經安裝了開源Node-Exporter并占用了默認9100端口。如果已安裝并占用了9100端口,需要在接入管理頁面,單擊設置修改阿里云Node-exporter的安裝端口,避免端口沖突導致的安裝失敗。
如何驗證Node-Exporter是否成功安裝?
您可以通過訪問http://<ECS-IP>:<PORT>/metrics
查看是否有指標數據被輸出。如果頁面顯示指標數據,則表明安裝成功。
如果不啟用自動配置安全組,需要如何手動添加規則?
您需要登錄ECS管理控制臺。在ECS實例的安全組設置中手動添加入方向規則,以允許指定的監控端口(如9100和9256)的訪問(設置為當前VPC網段)。
在接入過程中遇到了網絡連接問題,該怎么辦?
首先,確認被監控的ECS實例和Prometheus探針服務能夠在網絡上互相訪問。檢查VPC的路由表配置,確保數據流向正確。然后檢查防火墻或安全組規則是否正確配置,以允許監控流量通過。
監控數據不準確或缺失,可能是什么原因導致的?
檢查Node-Exporter和Process-exporter(如果啟用)是否正常運行。使用命令行工具(如curl)查詢Exporter暴露的指標頁面,查看是否可以正常返回數據。如果Exporter運行異常,請檢查日志。
啟用了進程狀態指標采集后,有哪些額外的考慮?
進程狀態指標采集通過Process-exporter實現,默認使用9256端口。請確保該端口在安全組中同樣被允許,以便指標能夠被成功采集。此外,進程狀態指標增加了對系統資源的小額額外消耗,通常不會對系統性能造成顯著影響,但在資源極為有限的環境中需要注意。