Sentry(v20.12.1) K8S 云原生架構探索,玩轉前/后端監控與事件日志大數據分析,高性能+高可用+可擴展+可伸縮集群部署

1.png

Sentry 算是目前開源界集錯誤監控,日志打點上報,事件數據實時分析最好用的軟件了,沒有之一。將它部署到 Kubernetes,再搭配它本身自帶的利用 Clickhouse (大數據實時分析引擎)構建的 Snuba 服務進行數據分析~簡直了。(已無敵??)

在實戰之前,我們先跟隨官方文檔初步了解下 Sentry 的整體項目架構。

項目架構

這一節,來自于官方文鐺。

注意:最新官方版 20.12.1,截止到今天。

它的架構細節可能又發生了演進,從已啟動的容器來看。

高層概述

邊線表示 Sentry 服務依賴關系圖

1.png

事件管道

如何保存事件。邊線表示通過系統的數據流。

由于布局限制,此圖非常簡化。此圖表中缺少:

  • Relay 如何獲取項目配置。答:來自 sentry-web
  • Relay 如何緩存項目配置。答:在內存中,在 Redis 中
  • Relay 如何計數事件并跟蹤 quotas(配額)。答案:更多 Redis
  • Symbolicator 作為 symbolicate-event 的輔助服務
  • 如何觸發警報?;卮穑簆ostprocess-event,一個 Celery 任務,負責報警(由一個Kafka消費者在Sentry中從eventstream讀取數據)
  • 可能更多

有關更多信息請閱讀 Path of an event through RelayEvent Ingestion Pipeline。

2.png

通過 Relay 的事件路徑

2-1.png

事件提取管道

2-2.png

部署實戰

Helm Charts

這里我用的是:sentry-kubernetes/charts

Helm 一鍵部署

注意:Helm 部署是一個比較專業的話題(要玩好,注意拖運維大佬下水??),如:

  • 持久化是否采用分布式存儲 or NFS...
  • 是否采用外部(公司運維老板維護的)的 Redis 集群
  • 是否采用外部的 Kafaka 集群
  • 是否采用外部的 RabbitMQ 集群
  • 是否采用外部的 Postgresql 集群
  • 是否采用外部的 Clickhouse 集群
  • 等等......

試玩:

helm repo add sentry https://sentry-kubernetes.github.io/charts
helm repo update
helm search repo sentry
# sentry/sentry  8.1.0  20.12.1  A Helm chart for Kubernetes
# 我這里用的是這個版本

helm install sentry sentry/sentry --version 8.1.0  -n sentry

你沒看錯,我這里足足給你啟動了 34 個容器(too young, too simple, sometimes naive??):

3.png

中文文檔陸續同步到:

我是為少。
微信:uuhells123。
公眾號:黑客下午茶。
謝謝點贊支持??????!

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 適用于大部分項目(大同小異) 一、 項目遷移到K8S平臺是怎樣的流程 要以鏡像作為交付對象,不再以jar包、war...
    Linux丶晨星閱讀 2,877評論 0 2
  • 久違的晴天,家長會。 家長大會開好到教室時,離放學已經沒多少時間了。班主任說已經安排了三個家長分享經驗。 放學鈴聲...
    飄雪兒5閱讀 7,557評論 16 22
  • 今天感恩節哎,感謝一直在我身邊的親朋好友。感恩相遇!感恩不離不棄。 中午開了第一次的黨會,身份的轉變要...
    迷月閃星情閱讀 10,607評論 0 11
  • 可愛進取,孤獨成精。努力飛翔,天堂翱翔。戰爭美好,孤獨進取。膽大飛翔,成就輝煌。努力進取,遙望,和諧家園??蓯塾巫?..
    趙原野閱讀 2,767評論 1 1
  • 在妖界我有個名頭叫胡百曉,無論是何事,只要找到胡百曉即可有解決的辦法。因為是只狐貍大家以訛傳訛叫我“傾城百曉”,...
    貓九0110閱讀 3,343評論 7 3