zipkin

ZIPKIN

这玩意最坑的就是环境了,所以上来先把环境给它整好了,伺候好了,后面也就舒服了。

(一)环境准备:

1:java环境 

yum -y install java

2:npm环境

随同NodeJS一起安装的包管理工具

这个国内目前我知道的只有淘宝有。

alias npm="npm --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao.org/mirrors/node"

3:node环境

版本:V5.5.0

yum install npm -y

git clone https://github.com/creationix/nvm.git /usr/local/nvm

source /usr/local/nvm/install.sh

nvm --version

nvm install v5.5.0

4:准备FQ环境

zipkin从git上git下来后,因为需要FQ才能安装,我们需要对他的配置文件进行如下的修改:

zipkin目录下有这个文件gradle.properties,添加在文件的末尾即可。地址是本机的IP。

systemProp.http.proxyHost=192.168.100.33

systemProp.http.proxyPort=8118

systemProp.https.proxyHost=192.168.100.33

systemProp.https.proxyPort=8118

环境准备到此为止。

(二)架构图:

(三)安装部署:

建议不要git最新版本的,有坑。。。我使用的是V1.33.2版本。也可以直接下载下来解压。


# get the zipkin source and change to its directory $ git clone https://github.com/openzipkin/zipkin;cd zipkin # start the query server in a new terminal session or tab $ ./bin/query ##### 数据从DB中查询出来,用给WEB展示# start the collector server in a new terminal session or tab $ ./bin/collector ##### 将数据从kafka中读取出来,并写入到DB中# start the web server in a new terminal session or tab $ ./bin/web ##### 将数据从WEB中展示出来# create dummy traces $ ./bin/tracegen ##### 测试使用,向DB中写入数据,以供测试# open the ui and look at them! $ open http://localhost:8080/

官方提供的数据库因为有问题,我们再此不用,使用mysql代替。

(四)数据库的配置:

yum -y install mysql

添加zipkin用户,定义密码123456。

进入数据库,执行以下操作

SET GLOBAL innodb_file_format=Barracuda
show global variables like ‘innodb_file_format‘
create database if not exists zipkin

找到zipkin-anormdb/src/main/resources/mysql.sql导入进去,因为文件不大,可以直接复制里面的语句操作。

(五)编写启动脚本:

因为不使用他们自带的数据库cassandra,那么query和collector就不能使用原本的启动文件,再次我们编写他们分别的配置文件

query:

  1. #!/bin/bash
  2. MYSQL_DB=zipkin MYSQL_HOST=192.168.100.128 MYSQL_USER=root MYSQL_PASS=123456 MYSQL_TCP_PORT=3306 java -jar/application/zipkin/zipkin-query-service/build/libs/zipkin-query-service-1.33.3-SNAPSHOT-all.jar -f/application/zipkin/zipkin-query-service/config/query-mysql.scala

解析:

数据库名称、地址、用户名、密码、端口、指定运行的java程序和配置文件。

collector:

  1. #!/bin/bash
  2. KAFKA_ZOOKEEPER=192.168.100.131:2181,192.168.100.130:2181,192.168.100.132:2181/kafka/q-voerd639 MYSQL_DB=zipkin MYSQL_HOST=192.168.100.128 MYSQL_USER=root MYSQL_PASS=123456 MYSQL_TCP_PORT=3306 java -jar/application/zipkin/zipkin-collector-service/build/libs/zipkin-collector-service-1.33.3-SNAPSHOT-all.jar -f/application/zipkin/zipkin-collector-service/config/collector-mysql.scala

解析:

1:kafka的管理是使用zookeeper来管理的

2:ZooKeeper的连接(kafka在ZK中注册的地址)、数据库名称、地址、用户名、密码、端口、指定运行的java程序和配置文件。

检查测试:

1:检查zipkin的服务是否正常启动,可以简单的通过访问本机的8080端口,能访问即可。

2:因为之前执行了./bin/tracegen,向数据库中写入测试数据,去数据库的zipkin数据库中查看是否有数据

3:在网页上选择要看的项目后,点击Find Traces查看

http://www.cnblogs.com/caoxiaojian/p/5309745.html

时间: 2024-08-20 19:03:12

zipkin的相关文章

zipkin使用mysql保存数据

zipkin和mysql结合保存zipkin在项目监控中得到的所有数据. <dependency> <groupId>io.zipkin.java</groupId> <artifactId>zipkin-server</artifactId> </dependency> <!-- 我的zipkin版本是1.19.0,所以zipkin-storage-mysql也是1.19.0.前面改到版本比较高的,1.26.0就一直报错.所以

golang环境中grpc与zipkin的集成

对于分布式系统服务,一个请求需要系统中多个模块,上百台机器配合才能完成.当进行系统调优时单靠分析日志是很难发现到系能瓶颈的,效率非常低下,为此google上线了分布式服务追踪系统Drapper.目前市面上的实现有Twitter的zipkin和阿里的鹰眼系统.最近我在做服务追踪,我们后台使用golang开发,grpc做服务通信,最终选择集成zipkin来做,这个公开资料比较少,写文章来总结一下,方便后来者. 一.首先zipkin的安装使用 1.下载 wget -O zipkin.jar 'http

第二十九章 springboot + zipkin + mysql

zipkin的数据存储可以存在4个地方: 内存(仅用于测试,数据不会持久化,zipkin-server关掉,数据就没有了) 这也是之前使用的 mysql 可能是最熟悉的方式 es Cassandra 一.代码(基于 第二十八章 springboot + zipkin(brave定制-AsyncHttpClient)) 1.pom.xml 1 <dependency> 2 <groupId>io.zipkin.brave</groupId> 3 <artifactI

第二十八章 springboot + zipkin(brave定制-AsyncHttpClient)

brave本身没有对AsyncHttpClient提供类似于brave-okhttp的ClientRequestInterceptor和ClientResponseInterceptor,所以需要我们定制,而ServerRequestInterceptor和ServerResponseInterceptor是在BraveServletFilter部分直接指定就好了(这在任何client技术下都可以复用). 实际上,ClientRequestInterceptor和ClientResponseIn

基于zipkin分布式链路追踪系统预研第一篇

分布式服务追踪系统起源于Google的论文“Dapper, a Large-Scale Distributed Systems Tracing Infrastructure”(译文可参考此处),Twitter的zipkin是基于此论文上线较早的分布式链路追踪系统了,而且由于开源快速被各社区所研究,也诞生了很多的版本. 在这里也是对zipkin进行研究,先贴出Twitter zipkin结构图. 结构比较简单,大概流程为: Trace数据的收集至Scribe(Facebook开源的日志传输通路)或

spring cloud zipkin

spring-cloud-sleuth+zipkin追踪服务实现(一) 最近在学习spring cloud构建微服务,很多大牛都提供很多入门的例子帮助我们学习,对于我们这种英语不好的码农来说,效率着实提高不少.这两天学习到追踪微服务rest服务调用链路的问题,接触到zipkin,而spring cloud也提供了spring-cloud-sleuth来方便集成zipkin实现.

spring cloud 学习(8) - sleuth &amp; zipkin 调用链跟踪

业务复杂的微服务架构中,往往服务之间的调用关系比较难梳理,一次http请求中,可能涉及到多个服务的调用(eg: service A -> service B -> service C...),如果想分析各服务间的调用关系,以及各服务的响应耗时,找出有性能瓶颈的服务,这时zipkin就派上用场,它是Twitter公司开源的一个tracing系统,官网地址为: http://zipkin.io/ , spring cloud可以跟它无疑集成. 使用步骤: 一.微服务方 1.1 添加依赖jar包 c

zipkin分布式链路追踪系统

基于zipkin分布式链路追踪系统预研第一篇 分布式服务追踪系统起源于Google的论文“Dapper, a Large-Scale Distributed Systems Tracing Infrastructure”(译文可参考此处),Twitter的zipkin是基于此论文上线较早的分布式链路追踪系统了,而且由于开源快速被各社区所研究,也诞生了很多的版本. 在这里也是对zipkin进行研究,先贴出Twitter zipkin结构图. 结构比较简单,大概流程为: Trace数据的收集至Scr

微服务之分布式跟踪系统(springboot+zipkin)

微服务之分布式跟踪系统(springboot+zipkin) 一.zipkin是什么 zipkin是一个开放源代码分布式的跟踪系统,由Twitter公司开源,它致力于收集服务的定时数据,以解决微服务架构中的延迟问题,包括数据的收集.存储.查找和展现.它的理论模型来自于Google Dapper 论文. 每个服务向zipkin报告计时数据,zipkin会根据调用关系通过Zipkin UI生成依赖关系图,显示了多少跟踪请求通过每个服务,该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如

第二十七章 springboot + zipkin(brave-okhttp实现)

本文截取自:http://blog.csdn.net/liaokailin/article/details/52077620 一.前提 1.zipkin基本知识:附8 zipkin 2.启动zipkin server: 2.1.在官网下载服务jar,http://zipkin.io/pages/quickstart.html,之后使用命令启动服务jar即可. nohup java -jar zipkin-server-1.5.1-exec.jar & 之后,查看与该jar同目录下的nohup.o