Zipkin搭建分布式链路跟踪平台 -- 第一篇

zipkin搭建分布式微服务跟踪平台

zipkin用于跟踪微服务之间的调用过程 ,具体概念不介绍了,给出搭建过程

  • 被跟踪的微服务简称为zipkin client ,收集跟踪信息的简称为zipkin server,client和server之间支持几种通信方式,同步的HTTP,异步的Kafka或者rabbitmq,server端的存储有几种方式,不用数据库直接存在内存,存在mysql,存在ES,或者cassadala,如下
    这里写图片描述
  • 按照由易到难的顺序会依次给出搭建过程,入门:Http+内存 –> Http+Mysql –> Kafka+Mysql –> Kafka + ES ,入门篇是Http + 内存的简易教程

Http+内存

Client端:
依赖:
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-sleuth</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
        </dependency>
        不写依赖版本需要添加(或者不添加下面的,自己写依赖版本):
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Dalston.SR4</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
 配置:
    spring.zipkin.enabled=true  #默认是true,可以省略
    spring.sleuth.sampler.percentage=1  #默认是0.1,收集10%的信息,1代表全量收集
    spring.zipkin.baseUrl=http://ip:port  #配置的是zipkinserver的地址,默认是localhost:9411 
server端:
依赖:
    <dependency>            
        <groupId>io.zipkin.java</groupId>           
        <artifactId>zipkin-server</artifactId>      
    </dependency>   
    <dependency>            
        <groupId>io.zipkin.java</groupId> 
        <artifactId>zipkin-autoconfigure-ui</artifactId>        
    </dependency>
 配置:
    server.port = 9441  #我把端口改成9441避免干扰,通常是9411
    zipkin.storage.type = mysql
    spring.datasource.url = jdbc:mysql://192.168.xx.xx:3306/ifaas_trace  ##数据库地址
    spring.datasource.username = xxx  #数据库用户名
    spring.datasource.password = xxx  #数据库密码 
    spring.datasource.driver-class-name = com.mysql.jdbc.Driver
    spring.datasource.schema[0] = classpath:/ifaas_trace.sql  #指定初始化数据库的sql脚本位置
    spring.datasource.initialize = true
    spring.datasource.continue-on-error = true

总结

  • 到这两端就搭建完成了,启动server端可以初始化数据库,访问client,即可在server端页面查看调用信息,后续附上源码

猜你喜欢

转载自blog.csdn.net/my_momo_csdn/article/details/81586946