阿里雲k8s事件監控


事件監控是Kubernetes中的另一種監控方式,可以彌補資源監控在實時性、准確性和場景上的缺欠。Kubernetes的架構設計是基於狀態機的,不同的狀態之間進行轉換則會生成相應的事件,正常的狀態之間轉換會生成Normal等級的事件,正常狀態與異常狀態之間的轉換會生成Warning等級的事件。開發者可以通過獲取事件,實時診斷集群的異常與問題。

背景信息

kube-eventer是阿里雲容器服務維護的開源Kubernetes事件離線工具,可以將集群的事件離線到釘釘、SLS等系統,並提供不同等級的過濾條件,實現事件的實時采集、定向告警、異步歸檔。更多內容請參見kube-eventer

通過以下三種場景為您介紹事件監控。

場景1:使用釘釘實現Kubernetes監控告警

使用釘釘機器人監控並告警Kubernetes的事件是一個非常典型的ChatOps實現。具體的操作步驟如下:

  1. 單擊釘釘群右上角群設置圖標,進入群設置頁面。
  2. 單擊群機器人,進入群機器人頁面,選擇需要添加的機器人。此處選擇自定義機器人。

    自定義機器人
  3. 機器人詳情頁面,單擊添加,進入添加機器人頁面。

    添加機器人
  4. 根據如下信息配置群機器人后,單擊完成添加。
     
    配置 說明
    編輯頭像 (可選)為群機器人設置頭像。
    機器人名字 添加的機器人名稱。
    添加到群組 添加機器人的群組。
    是否開啟Outgoing機制 (可選)通過@群機器人,將消息發送到指定外部服務,還可以將外部服務的響應結果返回到群組。
     
    說明 建議不開啟。
    POST 地址 接收消息的HTTP服務地址。
     
    說明 當選擇開啟Outgoing機制時,此項可配置。
    Token 用於驗證請求來自釘釘的密鑰。
     
    說明 當選擇開啟Outgoing機制時,此項可配置。
  5. 單擊復制,復制webhook地址。

    復制webhook
     
    說明 在 群機器人頁面,選擇目標群機器人,單擊右側設置按鈕圖標可以:
    • 修改群機器人的頭像及機器人名字。
    • 開啟或關閉消息推送。
    • 重置webhook地址。
    • 刪除群機器人。

    設置機器人
  6. 登錄容器服務管理控制台
  7. 在Kubernetes菜單下,單擊左側導航欄中的應用 > 無狀態,進入 無狀態(Deployment)頁面。
  8. 選擇目標集群,命名空間選為kube-system,單擊右上角使用模板創建。
    創建應用
  9. 根據以下信息配置模板,完成后單擊創建。
     
    配置 說明
    集群 選擇目標集群。
    命名空間 選擇資源對象所屬的命名空間,默認是 default。此處選擇kube-system。
    示例模板 阿里雲容器服務提供了多種資源類型的 Kubernetes yaml 示例模板,讓您快速部署資源對象。您可以根據 Kubernetes Yaml 編排的格式要求自主編寫,來描述您想定義的資源類型。此處選擇自定義。
    模板 填寫以下自定義內容:
     
    apiVersion: extensions/v1beta1 kind: Deployment metadata: name: eventer namespace: kube-system spec: replicas: 1 template: metadata: labels: task: monitoring k8s-app: eventer annotations: scheduler.alpha.kubernetes.io/critical-pod: '' spec: serviceAccount: admin containers: - name: eventer image: registry.cn-hangzhou.aliyuncs.com/acs/eventer:v1.6.0 imagePullPolicy: IfNotPresent command: - /eventer - --source=kubernetes:https://kubernetes.default - --sink=dingtalk:[your_webhook_url]&label=[your_cluster_id]&level=[可選參數:Normal或者Warning,默認值為:Warning] #level可配置為:Normal或Warning,默認值為:Warning。當配置Normal時,會在釘釘群收到Normal和Warning級別的告警;不配置或配置為Warning時,釘釘群僅收到Warning級別的告警。
    集群列表頁面選擇目標集群,單擊操作列控制台,進入Kubernetes 控制台,選擇命名空間為kube-system,單擊左側導航欄部署,可查看到eventer已部署成功。
    部署eventer

預期結果:

部署成功后30s,eventer生效,當事件等級超過閾值等級時,即可在釘釘群收到如下告警。
消息提醒
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM