1. 程式人生 > >跟我學Spring Cloud(Finchley版)-26-使用Elasticsearch作為Zipkin Server的後端儲存

跟我學Spring Cloud(Finchley版)-26-使用Elasticsearch作為Zipkin Server的後端儲存

前文搭建的Zipkin Server是沒有後端儲存的——資料會儲存在Zipkin的記憶體中。這一般不適合生產,本節來探討如何將Zipkin中的資料持久化。

Zipkin支援多種儲存:

  • 記憶體(預設)
  • MySQL(資料量大時,查詢較為緩慢,不建議使用)
  • Elasticsearch
  • Cassandra(Twitter官方使用Cassandra作為Zipkin Server的儲存,但國內大規模用Cassandra的公司較少,Cassandra相關文件也不多)

綜上,個人建議使用Elasticsearch作為Zipkin Server的儲存。

OK,話不多說,來搭建吧。

搭建

  • 前往 https://www.elastic.co/products/elasticsearch

    下載Elasticsearch,筆者使用的版本是 elasticsearch-6.5.3

  • 啟動Elasticsearch:

    cd elasticsearch-6.5.3/bin
    ./elasticsearch
    
    # Elasticsearch叢集的搭建大家自己百度一下吧,也很簡單。本文主要是講Zipkin,只用一個例項演示就可以了。
    
  • 執行如下命令,啟動Zipkin Server

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

    其中:STORAGE_TYPE

    指定儲存型別是啥;ES_HOSTS 指定你的Elasticsearch地址列表,多個用 , 分隔。還可指定其他環境變數,詳見:https://github.com/openzipkin/zipkin/tree/master/zipkin-server#elasticsearch-storage

  • 訪問 http://localhost:9411/ 即可看到Zipkin Server的首頁。

測試

測試步驟非常簡單:

本文首發

http://www.itmuch.com/spring-cloud/finchley-26/

關注我