天天看點

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

(一)背景

随着企業資訊化的發展,面向雲的IT基礎設施越來越普遍,如何解決跑大的軟體系統的監控問題,成為IT穩定性保障的關鍵環節。 本方案主要介紹如何使用SLS 對阿裡雲、專有IDC以及第三方雲場景下,進行企業級的監控方案。

(二)架構

依托于MetricStore/Logstore存儲能力,SLS提供了從底向上全棧的監控能力

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

(三)前序工作

  1. 在阿裡雲官網已經開通 SLS服務
  2. 確定現有的網絡環境,可以連通到阿裡雲網絡。

網絡聯通說明:

本方案要求現有的需要采集名額或日志的裝置能夠聯通阿裡雲的網絡環境,目前SLS支援的Region 參考 

連結

對于IDC或者其他雲廠商的場景,如果是進行POC的話可以優先使用SLS的公網位址進行日志收集;如果是生産使用建議搭建相應的專線接入阿裡雲網絡,以保障資料傳輸的可靠性

(四)步驟

配置步驟彙總

監控層次 監控類型 接入方式 接入說明
IAAS層 k8s名額監控 配置即可接入(Promethues Remote Write) 支援Pod、Deployment、SatefulSet、k8s核心元件名額監控,具體配置方法 
k8s事件監控 配置即可接入(需部署k8s npd元件) 容器的重新開機、Crash、OOM等監控,關鍵元件異常監控
主機監控 logtail采集 支援CPU、Mem、Disk、Net、System等相關名額采集
PAAS層 MySQL 配置方案見 
MongoDB
Redis
ClickHouse
Kafka
Nginx
ElasticSearch
阿裡雲雲産品 配置即可接入 支援常見的雲産品(ecs、rds等)名額接入
應用層 應用Trace 業務代碼內建(部分支援無侵入) 支援常見語言SDK
現有Trace內建
  • OpenCensus Trace 資料接入 參考 
  • Zipkin Trace資料接入 參考 
  • SkyWalking Trace資料接入 參考 
  • Jaeger Trace資料接入 參考 
JVM名額監控 配置方式參考 
自定義名額 開發接入/SLS資料加工/SLS ScheduleSQL 支援使用Python、Java、Go等語言,向SLS MetricStore寫入自定義的監控資料。 參考 
業務層 業務接入層分析
  • Nginx通路日志分析 
  • ALB通路日志分析 
  • SLB通路日志分析 
  • Kubernetes Ingress日志分析 
業務日志中的日志,通過計算轉換為名額
  • 使用SLS資料加工轉換日志為名額 

部分監控效果展示

k8s 接入Prometheus後名額查詢展示

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

k8s 接入Prometheus後使用Grafana查詢

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

k8s事件中心

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

Redis監控

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

雲産品 - ecs名額導入

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

SLB日志中心

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

應用JVM監控

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟

應用Trace接入

使用SLS建構企業級監控(一)背景(二)架構(三)前序工作(四)步驟