Sentry 算是目前开源界集错误监控,日志打点上报,事件数据实时分析最好用的软件了,没有之一。将它部署到 Kubernetes,再搭配它本身自带的利用 Clickhouse (大数据实时分析引擎)构建的 Snuba 服务进行数据分析~简直了。(已无敌)

在实战之前,我们先跟随官方文档初步了解下 Sentry 的整体项目架构。

项目架构

这一节,来自于官方文铛。

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

它的架构细节可能又发生了演进,从已启动的容器来看。

高层概述

边线表示 Sentry 服务依赖关系图

事件管道

如何保存事件。边线表示通过系统的数据流。

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

  • Relay 如何获取项目配置。答:来自 sentry-web
  • Relay 如何缓存项目配置。答:在内存中,在 Redis 中
  • Relay 如何计数事件并跟踪 quotas(配额)。答案:更多 Redis
  • Symbolicator 作为 symbolicate-event 的辅助服务
  • 如何触发警报。回答:postprocess-event,一个 Celery 任务,负责报警(由一个Kafka消费者在Sentry中从eventstream读取数据)
  • 可能更多

有关更多信息请阅读 Path of an event through RelayEvent Ingestion Pipeline

通过 Relay 的事件路径

事件提取管道

部署实战

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):

中文文档陆续同步到:

我是为少。

微信:uuhells123。

公众号:黑客下午茶。

谢谢点赞支持!

Sentry(v20.12.1) K8S 云原生架构探索,玩转前/后端监控与事件日志大数据分析,高性能+高可用+可扩展+可伸缩集群部署的更多相关文章

  1. Sentry(v20.12.1) K8S 云原生架构探索,SENTRY FOR JAVASCRIPT SDK 配置详解

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  2. Sentry(v20.12.1) K8S 云原生架构探索, SENTRY FOR JAVASCRIPT 手动捕获事件基本用法

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  3. Sentry(v20.12.1) K8S 云原生架构探索,SENTRY FOR JAVASCRIPT Source Maps 详解

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  4. Sentry(v20.12.1) K8S 云原生架构探索,SENTRY FOR JAVASCRIPT 故障排除

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  5. Sentry(v20.12.1) K8S 云原生架构探索,1分钟上手 JavaScript 性能监控

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  6. Sentry(v20.12.1) K8S 云原生架构探索,JavaScript 性能监控之管理 Transactions

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  7. Sentry(v20.12.1) K8S 云原生架构探索,JavaScript 性能监控之采样 Transactions

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  8. Sentry(v20.12.1) K8S 云原生架构探索,JavaScript Enriching Events(丰富事件信息)

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  9. Docker Data Center系列(一)- 快速搭建云原生架构的实践环境

    本系列文章演示如何快速搭建一个简单的云原生架构的实践环境. 基于这个基础架构,可以持续部署微服务架构的应用栈,演练敏捷开发过程,提升DevOps实践能力. 1 整体规划 1.1 拓扑架构 1.2 基础 ...

随机推荐

  1. 冲刺Day4

    每天举行站立式会议照片: 昨天已完成的工作: 1.登录注册前端与后端的交互 2.订单模块的部分代码 3.用户模块的部分代码 今天计划完成的工作: 成员 任务 高嘉淳 继续完善用户模块的功能 覃泽泰 继 ...

  2. Java并发编程的艺术(一)——并发编程的注意问题

    并发编程是为了使程序运行得更快,但是,不是启动更多得线程就能最大限度地执行并发,也不是线程更多就能使得程序运行得更快,而且并发编程更容易产生错误,如果要高效且正确地执行并发,就需要注意这三种问题 上下 ...

  3. 庐山真面目之七微服务架构Consul集群、Ocelot网关集群和IdentityServer4版本实现

    庐山真面目之七微服务架构Consul集群.Ocelot网关集群和IdentityServer4版本实现 一.简介      在上一篇文章<庐山真面目之六微服务架构Consul集群.Ocelot网 ...

  4. airtest数据线连接手机

    1.用USB数据将手机和电脑进行连接,手机打开开发者模式,并且开启USB调试   2.下载adb调试:只是用户检查有没有设备连接,不下载也行,但是最好下载 使用方法:解压 方法一:使用cmd命令进入解 ...

  5. STL——容器(Set & multiset)的大小

    1. set.size();  //返回容器中元素的数目 2. set.empty();//判断容器是否为空 empty() 是由一下代码实现的,可以发现,当长度为0时返回 false,以此判断容器为 ...

  6. 圆周率PI

    import math import time scale=30 s,m,=1,2 total,s,n,t=0.0,1,1.0,1.0 print("执行开始".center(sc ...

  7. JavaSE21-网络编程

    1.网络编程入门 1.1 网络编程概述 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共 ...

  8. [日常摸鱼]bzoj3122 [Sdoi]2013 随机数生成器

    又是写了一晚上才过的题- 题意:有一个数列$x_n=(ax_{n-1}+b) mod p$,给你$x_1,a,b,p,t$,求最小的$x_i=t$的$i$,可能不存在 一开始很自然的推出了式子$x_n ...

  9. SQL精华总结索引类型优化SQL优化事务大表优化思维导图❤️

    索引类型 从数据结构角度: B+树索引, hash索引,基于哈希表实现,只有全值匹配才有效.以链表的形式解决冲突.查找速度非常快 O(1) 全文索引,查找的是文本中的关键词,而不是直接比较索引中的值, ...

  10. SpringBoot从入门到精通教程(五)

    上节,我们讲了 SpringBoot 如何使用MyBatis 今天我们讲讲 Springboot Logo自定义的问题, 我们在启动 SpringBoot 时,控制台会打印 SpringBoot Lo ...