0%
eBPF系列之:DeepFlow 扩展协议解析实践(MongoDB协议与Kafka协议)
发表于:
分类于:
eBPF
概述:
MongoDB
目前使用广泛,但是缺乏有效的可观测能力。
DeepFlow
在可观测能力上是很优秀的解决方案,但是却缺少了对 MongoDB
协议的支持。
该文是为 DeepFlow
扩展了 MongoDB
协议解析,增强 MongoDB
生态的可观测能力,简要描述了从协议文档分析到在 DeepFlow
内实现代码解析的过程拆解。
VictoriaMetrics的指标流聚合能力应用
发表于:
分类于:
Prometheus/VictoriaMetrics
社区VM对指标流聚合能力分析与问题
VictoriaMetrics开源项目的原生能力
VictoriaMetrics项目中的流聚合能力是从1.86版本开始整合到vmagent的,具体可参考: https://github.com/VictoriaMetrics/VictoriaMetrics/issues/3460 从源码分析来看,流集合能力如图:
eBPF系列之:Pixie浅剖析
发表于:
分类于:
eBPF
部署过程和指令参考: pixie install
Pixie平台主要由以下组件组成:
Pixie Edge Module 边缘模块(PEM): Pixie’s agent, installed per node. PEMs use eBPF to collect data, which is stored locally on the node. Pixie的代理,安装在每个节点上。PEM使用eBPF收集数据,这些数据存储在节点本地。
闲聊一下CPU时序和现代操作系统二三事
发表于:
分类于:
Linux/CPU
监控系统企业架构演进史-拨测监控
发表于:
监控系统企业架构演进史-跨地域混合云
发表于:
监控系统企业架构演进史-初入Prometheus
发表于:
Prometheus
是一个开源的监控与时间序列数据库系统,在近年来得到了越来越广泛的应用。
官方的架构图如图所示:
本系列文章会以
Prometheus
的在一个企业里的部署架构演进过程中逐步理解和深入各种组件和概念。
先通过下图简单了解这个演进发展史
Linode的BBR简单测试
发表于:
分类于:
Tcp
概述:
- TCP BBR 致力于解决两个问题:
- 在有一定丢包率的网络链路上充分利用带宽。非常适合高延迟、高带宽的网络链路。
- 降低网络链路上的 buffer 占用率,从而降低延迟。非常适合慢速接入网络的用户。
- 测试目的: 这次的测试主要是针对丢包率.更有说服力的测试请参考 Lawrence Brakmo的BBR Report .
- BBR的另一面
测试准备:
- ADDR01:aaa.aaa.aaa.aaa
|
|
- ADDR02:bbb.bbb.bbb.bbb
|
|
测试方式:
- 模拟丢包1%-30%的场景,分别测试不同内核开启BBR先后的情况。 用到的tc指令:
|
|
- 测试从从ADDR02传数据到ADDR01,ADDR01的内核不变,ADDR02在每次测试都会调整内核重启。
测试过程:
- 步骤略,test.gz约160MB,过程大致如下: 没有启用BBR的情况,从ADDR02传数据到ADDR01:
|
|
4.8.6-x86_64-linode78 | 4.9.15-x86_64-linode78 | 非linode的官方4.10内核(generic) | |
---|---|---|---|
没有启动BBR正常情况 | 3.27MB/s | 3.36MB/s | 没有测试 |
启动BBR正常情况 | 没有测试 | 3.45MB/s | 2.31MB/s |
启动BBR丢包1% | 3.19MB/s | 没有测试 | 没有测试 |
启动BBR丢包10% | 没有测试 | 3.21MB/s | 2.81MB/s |
启动BBR丢包30% | 97.30kB/s(在20分钟内没有传输完成中断得到的最后结果) | 1.35MB/s | 1.15MB/s |
测试总结和当时情况(以上述结果来总结):
- linode自己编译的内核有明显针对性优化,效果比较明显.
- 启动bbr后在丢包30%的情况下还能完成传输,bbr的效果也比较明显;
- 4.10内核选择了generic没有选择lowlatency.
- 本来还打算测50%的丢包.但是50%设置后几乎无法远程操作ADDR01而放弃测试.
附录:
- centos7官方内核的升级方法:
- 升级内核:
|
|
- 更新启动
|
|
- 开启BBR:
|
|
树莓派 RaspberryPi docker集群
发表于:
分类于:
Docker
概述:
参考 Hypriot 的博客,我买了1块Rasp2代板和2块Rasp3代板。
其中2代默认安装了 Hypriot 的系统。3代板如果您有兴趣可以自己参考 《Building a 64bit Docker OS for the Raspberry Pi 3》 这篇文章编译一套64bit的系统。也可以直接下载作者的 已编译好镜像地址 中压缩包。