天天看點

skywalking概念與設計總覽

SkyWalking是什麼

SkyWalking 為 服務(service), 服務執行個體(service instance), 以及 端點(endpoint) 提供了可觀測能力。使用 SkyWalking 時, 使用者可以看到服務與端點之間的拓撲結構, 每個服務/服務執行個體/端點的性能名額, 還可以設定報警規則。

架構

SkyWalking 邏輯上分為四部分: 探針, 平台後端, 存儲和使用者界面.

skywalking概念與設計總覽
  • 探針 基于不同的來源可能是不一樣的, 但作用都是收集資料, 将資料格式化為 SkyWalking 适用的格式.
  • 平台後端, 支援資料聚合, 資料分析以及驅動資料流從探針到使用者界面的流程。分析包括 Skywalking

    原生追蹤和性能名額以及第三方來源,包括 Istio 及 Envoy telemetry , Zipkin 追蹤格式化等。 你甚至可以使用

    Observability Analysis Language 對原生度量名額 和 用于擴充度量的計量系統 自定義聚合分析。

  • 存儲 通過開放的插件化的接口存放 SkyWalking 資料. 你可以選擇一個既有的存儲系統, 如 ElasticSearch, H2 或

    MySQL 叢集(Sharding-Sphere 管理),也可以選擇自己實作一個存儲系統。

  • UI 一個基于接口高度定制化的Web系統,使用者可以可視化檢視和管理 SkyWalking 資料。

設計目标

  • 拓撲結構, 性能名額和追蹤一體化
  • 輕量級:1.探針的輕量級;2.技術棧足夠簡單
  • 可插拔:提供大量的特性支援可插拔
  • 可移植:可運作在多種環境,包括傳統注冊中心Eureka、RPC架構如Spring Cloud, Dubbo、服務網格、雲服務、跨雲
  • 可互操作:支援與其他運維系統進行互操作,主要是探針,如 Zipkin, Jaeger, OpenTracing 和 OpenCensus. SkyWalking 接收并了解他們的資料格式

參考文檔:

skywalking官網-概念與設計總覽

skywalking官網-設計目标

繼續閱讀