查看原文
其他

跟我学Spring Cloud(Finchley版)-26-使用Elasticsearch作为Zipkin的后端存储

周立 IT牧场 2021-08-10

点击上方 IT牧场 ,选择 置顶或者星标您的关注意义重大!

前文搭建的Zipkin Server是没有后端存储的——数据会存储在Zipkin的内存中。这一般不适合生产,本节来探讨如何将Zipkin中的数据持久化。

Zipkin支持多种存储:

•内存(默认)•MySQL(数据量大时,查询较为缓慢,不建议使用)•Elasticsearch•Cassandra(Twitter官方使用Cassandra作为Zipkin Server的存储,但国内大规模用Cassandra的公司较少,Cassandra相关文档也不多)

综上,个人建议使用Elasticsearch作为Zipkin Server的存储。

OK,话不多说,来搭建吧。

搭建

1 前往 https://www.elastic.co/products/elasticsearch 下载Elasticsearch,笔者使用的版本是 elasticsearch-6.5.3

2 启动Elasticsearch:

cd elasticsearch-6.5.3/bin./elasticsearch
# Elasticsearch集群的搭建大家自己百度一下吧,也很简单。本文主要是讲Zipkin,只用一个实例演示就可以了。

3 执行如下命令,启动Zipkin Server

STORAGE_TYPE=elasticsearch ES_HOSTS=localhost:9200 java -jar zipkin-server-2.11.3-exec.jar

其中:STORAGE_TYPE 指定存储类型是啥;ES_HOSTS 指定你的Elasticsearch地址列表,多个用 , 分隔。还可指定其他环境变量,详见:这里[1]

4 访问 http://localhost:9411/ 即可看到Zipkin Server的首页。

测试

测试步骤非常简单:

•按照 跟我学Spring Cloud(Finchley版)-25-Spring Cloud Sleuth与Zipkin配合使用[2] 一节的描述,往Zipkin Server中存储一些数据•停止Zipkin Server•再次启动Zipkin Server,查看之前存储的数据是否存在,如果存在说明数据已被持久化。

干货分享

最近将个人学习笔记整理成册,使用PDF分享。关注我,回复如下代码,即可获得百度盘地址,无套路领取!

•001:《Java并发与高并发解决方案》学习笔记;•002:《深入JVM内核——原理、诊断与优化》学习笔记;•003:《Java面试宝典》•004:《Docker开源书》•005:《Kubernetes开源书》•006:《DDD速成(领域驱动设计速成)》

近期热文

这才是实现分布式锁的正确姿势!持续集成工具Jenkins看这篇就够啦!这个Jedis的坑你肯定没踩过!记一次深坑排查过程AWS CTO对过去十年的经验总结 – 十条军规不能完整地满足服务开发和治理的微服务都是扯淡!!!

关注我

References

[1] 这里: https://github.com/openzipkin/zipkin/tree/master/zipkin-server#elasticsearch-storage
[2] 跟我学Spring Cloud(Finchley版)-25-Spring Cloud Sleuth与Zipkin配合使用: http://www.itmuch.com/spring-cloud/finchley-25/


点好看是一种美德^_^

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存