LoginSignup
15
15

More than 5 years have passed since last update.

microservicesの調査に向けて〜Dockerで初めてのOpenZipkin!

Last updated at Posted at 2016-03-03

1. やりたいこと

oreillyのマイクロサービスアーキテクチャを読んで、OpenZipkinを試してみたくなりました。
ドキュメントのQuickstartを読みながら、docker-composeで試してみようと思います!

Zipkin is a distributed tracing system. 
It helps gather timing data needed to troubleshoot latency problems in microservice architectures. 
It manages both the collection and lookup of this data through a Collector and a Query service. 
Zipkin’s design is based on the Google Dapper paper.

分散環境で、システムトレースをするために使うみたいですね。
時系列を扱うようなサービスでのlatencyのトラブルシューティングで役に立つそうです。
また、GoogleのDapperを参考にしているみたいです。

2. 手順

  1. githubからdocker-compose用のプロジェクトを落としてくる
  2. docker-composeでサービスを立ち上げる
  3. 8080ポートでブラウザアクセスしてみる
  4. Find Traceボタンを押下してみる
  5. zipkin-queryというバーを押下してみる
  6. さらに、zipkin-queryバーを押下してみる

3. 実施事項

3-1. githubからdocker-compose用のプロジェクトを落としてくる

git clone https://github.com/openzipkin/docker-zipkin.git

3-2. docker-composeでサービスを立ち上げる

cd docker-zipkin

docker-compose up

3-3. 8080ポートでブラウザアクセスしてみる

スクリーンショット 2016-03-03 10.22.58.png

これがトップ画像みたいです。

3-4. Find Traceボタンを押下してみる

スクリーンショット 2016-03-03 10.24.16.png

3-5. zipkin-queryというバーを押下してみる

スクリーンショット 2016-03-03 10.27.43.png

3-6. さらに、zipkin-queryバーを押下してみる

ポップアップが出てきましたね!

スクリーンショット 2016-03-03 10.28.33.png

4. 次回やること

ここに対して、ガシガシとデータを突っ込んでいけばいいわけですね!

RubyのTracerが用意されていますのでこちらを試したいと思います。

また、他のTracer突っ込むサンプルのようなものは以下のとおりあるみたいです。
Golang製のもあるんですね。RPC周りの実装とかどうやってるのとか、含めて使って、かつ、見てみたいと思います!

Language Library Framework Transports Supported Sampling Supported? Other notes
Python pyramid_zipkin Pyramid [Kafka \ Scribe](http://pyramid-zipkin.readthedocs.org/en/latest/configuring_zipkin.html#zipkin-transport-handler) Yes
Java brave Jersey, RestEASY, JAXRS2, Apache HttpClient, Mysql Http, Kafka, Scribe Yes Java 7 or higher
Ruby zipkin-tracer Rack Http, Kafka, Scribe Yes lc support. Ruby 2.0 or higher
C# ZipkinTracerModule OWIN, HttpHandler Http Yes lc support. 4.5.2 or higher
Go go-zipkin x/net Context Kafka Yes

本日はここまでとなります。

次回はmicroservicesの調査に向けて〜railsのサンプルアプリにzipkinのtracerを仕込んで動作確認をしてみよう!です。

15
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
15