Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Observability in Practice:Grafana 與 Edge Device...

Observability in Practice:Grafana 與 Edge Device SRE 的那些事

Grafana Friends Taipei #2 - Observability in Practice:Grafana 與 Edge Device SRE 的那些事
與常見機房內的服務不同,Edge Device 會面臨各種奇妙的挑戰:硬體異常、網路不穩定、防火牆阻擋、特殊指標監控等。本場將分享兩年來 Edge Device SRE 的實戰經驗,聚焦三個真實場景與解法,讓你更快看清 Edge Device 到底經歷了哪些磨難。

Avatar for Blueswen

Blueswen

June 12, 2026

More Decks by Blueswen

Other Decks in Programming

Transcript

  1. 自 介  • 劉義瑋 Blueswen • blueswen @ GitHub

    • https://blueswen.com • Grafana Champion • 領域 • DevOps • Observability • Developer Experience
  2. Outline  • Scenario - Berry AI 的邊緣世界 • Case

    Study • Case 0 1 - 斷網回補 • Case 0 2 - 離線偵測 • Case 0 3 - 更多指標
  3. 美國速 食 店現況  美國速 食 店總數 配有 Drive Thru

    比 率 美國計時 人 員時薪 這是 一 個值得認真解決的商業問題 2 2 2 K 6 8 % Drive Thru 營業額占 比 4 3 % ~ 7 0 % $ 1 6 . 5 USD 龐 大 的潛在市場 尚未被數位化的場景 直接影響營收的關鍵環節 每省 一 分鐘即是成本節省
  4. Berry AI - 速 食 店的觀測解決 方 案  •

    在每間速 食 店部署 Edge Server,透過 Camera AI 辨識,把 Drive Thru 的服 務狀況轉化為可測量、可優化的真實營運指標
  5. Scenario - 它住在現場,不是機房  網路 電 力 極端氣候 設備狀況 它沒有離開現場,只是離開了你的視線

    網速緩慢或不穩定,且需借道客 戶 的 Internet 停電、電壓不穩,隨時可能中斷 暴 風 、野 火 、暴 雨 、暴 風 雪,任何 一 種都可能讓設備離線 無空調導致設備過熱、 老鼠 咬斷網路線
  6. Case 0 1 - 斷網回補:Metrics 收集架構  • 標準做法是在 Edge

    端部署 Agent,透過 Remote Write 將 Metrics 推送 至 遠 端 Storage Grafana Alloy、VMAgent etc. Metrics Storage Edge Server Agent Remote Write Prometheus、Mimir etc.
  7. Edge Server Agent Case 0 1 - 斷網回補  •

    Edge 斷網很常 見 ,但 Edge 上的服務仍持續運 行 ,Agent 可以將這段期間的 Metrics 暫存 至 本地 Disk Bu ff er • 待網路恢復,再將累積的資料 一 次回補上去 Grafana Alloy、VMAgent etc. Metrics Storage Remote Write Prometheus、Mimir etc.
  8. Case 0 1 - 斷網回補  • 回補的資料時間戳都落在斷線期間,屬於亂序寫 入 ,若

    Storage 不接受,這 些 Metrics 會直接被丟棄 • Storage 端需設定 out_of_order_time_window,才能正確接收 • 大 量回補也可能瞬間打爆 Storage,建議在 Agent 端設定相關限流 Grafana Alloy、VMAgent etc. Metrics Storage Edge Server Agent Remote Write Prometheus、Mimir etc.
  9. Case 0 2 - 離線偵測  • Edge 借道客 戶

    的 Internet,背後通常有防 火 牆把關 • 防 火 牆 一 旦異動,Metrics 推不出去,我們就完全看不 見 Server 的狀態
  10. Case 0 2 - 離線偵測  • 採雙路備援策略,兩條路 走 不同

    Endpoint,不容易同時被擋 Path A 主要訊號 Path B 備援 心 跳 Metrics 推送 AWS S 3 Heartbeat File Remote Write 持續推送指標 有資料進來 = 設備在線 定期寫 一 個 心 跳檔到 S 3 AWS Athena 查詢 S 3 上的 心 跳紀錄
  11. • Athena 可直接對 S 3 的 心 跳檔執 行 SQL,不需另建資料庫

    • 搭配 Grafana 1 1 新增的 SQL Expression,能在同 一 條 Alert 中 Join Metrics 與 Athena 查詢結果,讓判斷更準確 Case 0 2 - 離線偵測  S 3 + Athena Athena 以 SQL 查詢 S 3 物件 SQL Expression 用 SQL Join Metrics 與 Athena 結果 Accurate Alert 兩路都沒有訊號才判定離線
  12. Case 0 2 - 離線偵測:Grafana SQL Expression  Feature Toggle

    啟 用 SQL Expression 後,在 Alert Rule 開啟 Advanced options 後可以增加 SQL Expression Metircs 最後收到時間與 Heart Beat 最後收到時間 Join 比 較
  13. Case 0 3 - 更多指標:不只是 Container  • Edge Server

    不只跑 Container,還有 大 量 Server 層級的資訊需要納 入 監控 cAdvisor 監控各容器的資源使 用 狀況 Node Exporter CPU / 記憶體 / 磁碟 / 網路 Process Exporter 監控各 Process 的資源使 用 狀況 Systemd Exporter 監控 systemd 服務的狀態
  14. Case 0 3 - 更多指標:沒有 Exporter 怎麼辦  • 有些指標沒有現成

    Exporter,但 自己 從頭寫 一 個 又 太費 工 • 可以 用 Node Exporter 的 Text fi le Collector,讓 自 訂指標搭便 車 ,跟著 Node Exporter 一 起被收 走 • Crontab + Script 定期產 生 Prometheus Metrics File,丟進 Text fi le Collector 目 錄,就能無縫接 入 既有的指標收集 Data Flow Text fi le Collector Metrics Data Flow
  15. Recap - Edge 觀測的三個案例  • Case 0 1 -

    Metrics Bu ff er • 斷網時本地暫存,復網後 自 動回補 • Storage 務必設定 out_of_order_time_window • Case 0 2 - O ffl ine Detection • Metrics + S 3 心 跳雙路備援, 用 SQL Expression 交叉判斷告警 • Case 0 3 - More Metrics • 組合多種 Exporter,補 齊 Server 層視 角 • Node Exporter Text fi le Collector 讓 自 訂指標無縫接 入 採集 Data Flow
  16. Platform & System Engineer 工 商徵才時間  • Software Tech

    Stack • Cloud:AWS • On-Prem:Ubuntu • Python:FastAPI / Django • PostgreSQL + dbt • Grafana Stack • Ansible AWX • Kubernetes、Docker UP to 2 M !!! Full-Stack Engineer Machine Learning Engineer • Machine Learning Stack • Core • Solid ML/DL/CV • PyTorch / TensorFlow • ONNX / OpenVINO / TensorRT • Bonus • ML fl ow / DVC • Dagster / Air fl ow • LLM / RAG / Agentic AI