jaeger 使用scylladb作为后端存储
scylladb 是一个不错的apache Cassandra 替代,而且兼容很不错,今天在尝试过yugabyte 之后放弃了,因为在进行jaeger 创建
Cassandra schema 的时候碰到各种问题(可能兼容还是少有问题),试用之后发现很不错,没有碰到错误,以下是一个演示环境
使用了docker-compose 运行
环境准备
- docker-compose 文件
version: "3"
services:
scylladb:
image: scylladb/scylla
ports:
- "9042:9042"
scylladb2:
image: scylladb/scylla
command: --seeds=scylladb
ports:
- "9043:9042"
scylladb3:
image: scylladb/scylla
command: --seeds=scylladb
ports:
- "9044:9042"
jaeger:
image: jaegertracing/all-in-one:1.13
environment:
- COLLECTOR_ZIPKIN_HTTP_PORT=9411
- CASSANDRA_SERVERS=scylladb,scylladb2,scylladb3
- SPAN_STORAGE_TYPE=cassandra
ports:
- "9411:9411"
- "5775:5775/udp"
- "6831:6831/udp"
- "6832:6832/udp"
- "16686:16686"
- 简单说明
以上是一个简单的scylladb 集群环境,三个节点,同时使用了jaeger 的all-in-one,对于大规模的请求依赖处理的方式还是
推荐基于spark 等大数据的方式,会加快数据的生成
测试项目
- nodejs 项目
从github clone 了一个简单的nodejs 项目,尽管有点问题,但是不影响测试
git clone https://github.com/luoyjx/opentracing-demos.git
- 启动docker-compose
docker-compose up -d
- 创建schema
需要clone jaeger 项目,同时需要配置本地cqlsh 工具
git clone https://github.com/jaegertracing/jaeger.git
cd jaeger
MODE=test sh ./plugin/storage/cassandra/schema/create.sh | cqlsh
- 重启jaeger
docker-compose restart jaeger
- nodejs 启动
方式很简单,进入服务目录 yarn 以及node <startscript>
效果
- jaeger ui

- 注册的service
nodejs 应用

- 一个简单的请求链路

- 服务依赖

说明
以上是一个简单的测试集成,实际生产使用还有好多事情需要做
参考资料
https://docs.scylladb.com/
https://www.jaegertracing.io/docs/1.13/architecture/
https://github.com/rongfengliang/scylladb-jaeger
jaeger 使用scylladb作为后端存储的更多相关文章
- jaeger 使用ElasticSearch 作为后端存储
jaeger 支持es 作为后端存储,这样对于查询.以及系统扩展是比较方便的 使用docker-compose 运行 环境准备 参考项目: https://github.com/rongfenglia ...
- jaeger使用yugabyte作为后端存储的尝试以及几个问题
前边写过使用scylladb 做为jaeger 的后端存储,还是一个不错选择的包括性能以及 兼容性,对于 yugabyte 当前存在兼容性的问题,需要版本的支持,或者尝试进行一些变动 create 语 ...
- Flocker 做为后端存储代理 docker volume-driver 支持
docker Flocker https://github.com/ClusterHQ/flocker/ 文档: https://docs.clusterhq.com/en/latest/docker ...
- Openstack_后端存储平台Ceph
框架图 介绍 一种为优秀的性能.可靠性和可扩展性而设计的统一的.分布式文件系统 特点 CRUSH算法 Crush算法是ceph的两大创新之一,简单来说,ceph摒弃了传统的集中式存储元数据寻址的方案, ...
- 9 云计算系列之Cinder的安装与NFS作为cinder后端存储
preface 在前面我们知道了如何搭建Openstack的keystone,glance,nova,neutron,horizon这几个服务,然而在这几个服务中唯独缺少存储服务,那么下面我们就学习块 ...
- Openstack入门篇(十八)之Cinder服务-->使用NFS作为后端存储
1.安装cinder-volume组件以及nfs [root@linux-node2 ~]# yum install -y openstack-cinder python-keystone [root ...
- 以ScaleIO 1.30为后端存储运行微软服务器软件SQL Server 2014, SharePoint 2013, Exchange 2013的解决方案
EMC新发布了以ScaleIO 1.30为后端存储来运行SQL, SharePoint, Exchange的解决方案白皮书. 下面的页面中有简要的介绍和整篇文档PDF的下载. https://co ...
- OpenStack Cinder 与各种后端存储技术的集成叙述与实践
先说下下loop设备 loop设备及losetup命令介绍 1. loop设备介绍 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备.它能使我们 ...
- 配置Ceph集群为OpenStack后端存储
配置Ceph存储为OpenStack的后端存储 1 前期配置 Ceph官网提供的配置Ceph块存储为OpenStack后端存储的文档说明链接地址:http://docs.ceph.com/docs/ ...
随机推荐
- texlive2019安装
TeX Live 是 TUG (TeX User Group) 发布并维护的的 TeX 系统,可以称得上是TeX的官方系统,官网为:https://www.tug.org/texlive/ 1.通过最 ...
- el-select和el-cascader的visible-change下拉框隐藏时触发相关事件(下拉框下拉显示时不触发)
原文:https://blog.csdn.net/CarryBest/article/details/79959389 今天做项目时,用elementUI框架,需要下拉框隐藏时出发某个函数,用了vis ...
- Springboot html vue.js 前后分离 跨域 Activiti6 工作流 集成代码生成器 shiro 权限
官网:www.fhadmin.org 特别注意: Springboot 工作流 前后分离 + 跨域 版本 (权限控制到菜单和按钮) 后台框架:springboot2.1.2+ activiti6.0 ...
- 内核加载错误module license
出现如下错误: module_name: Unknown symbol "symbol_name" tail /var/log/messages查看具体错误 出现如下错误: Unk ...
- tcp、udp协议栈
tcp struct tcphdr { __be16 source; //源端口 __be16 dest; //目的端口 __be32 seq; //序列号 __be32 ack_seq; //确认号 ...
- Devops Reference
摘自 https://www.cnblogs.com/yibutian/p/9561657.html DevOps 企业实践 实施DevOps的核心目标是加速团队.企业的IT精益运行,从根本上提升IT ...
- linux apache的httpd
学习目标:apache在linux上的应用,通过三种方式在浏览器上访问 LAMP:linux+apache+MYSQL+php wamp:windows+apache+MYSQL+php linux上 ...
- idea中新增package总是嵌套的解决方法
在idea中创建package,为了方便会将com.xx.xx作为一个package,下面添加对应的子package.比如service,config等.但是当我创建是总是会嵌套在下面变成了com.x ...
- Pthon魔术方法(Magic Methods)-反射
Pthon魔术方法(Magic Methods)-反射 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.反射概述 运行时,区别于编译时,指的时程序被加载到内存中执行的时候. 反射 ...
- ztree根据关键字模糊搜索
html页面需要引入以下资源 <!-- jquery包,ztree依赖jquery --> <script type="text/javascript" src= ...