LoginSignup
8
7

More than 5 years have passed since last update.

Apache Storm 1.0.0を使ってみる Storm UI編

Last updated at Posted at 2016-04-15

Storm 1.0.0がリリースされましたので、早速使ってみようと思います。

スクリーンショット 2016-04-16 7.12.45.png

改修点は300以上

いわゆる大型メジャーバージョンアップというやつです。そのため、tar.gz媒体のサイズが0.10.0と1.0.0で約倍も差が出ています。

0.10.0 1.0.0
73.9 MB 146 MB

今回はその中でも、まずStorm UIを使ってみようと思います。

準備

Zookeeperを用意します。

とりあえずZookeeperの最新版(このとき3.4.8)をDLして、設定ファイルを編集します。

$ cp conf/zoo_sample.cfg conf/zoo.cfg

あとはそのまま起動するだけ。

$ bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: XXXXX/zookeeper-3.4.8/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

動きましたね。

このzookeeper上でStormを動かします。

/opt/stormにstormの中身を配置した上で、以下の設定変更をconf/storm.yamlに記述します。

storm.zookeeper.servers:
  - "0.0.0.0"

storm.local.dir: "/opt/storm"

nimbus.host: "0.0.0.0"

実行してみます。まずはnimbusから。

$ bin/storm nimbus

logsにnimbus.logが出力されました。動作したようです。

nimbus.log
[INFO] Using statistics reporter plugin:org.apache.storm.daemon.metrics.reporters.JmxPreparableReporter
o.a.s.d.m.r.JmxPreparableReporter [INFO] Preparing...
o.a.s.d.common [INFO] Started statistics report plugin...
o.a.s.d.nimbus [INFO] Starting nimbus server for storm version '1.0.0'

次にStorm UIの起動。

$ bin/storm ui

こちらも起動したようです。

ui.log
o.a.s.s.o.e.j.s.h.ContextHandler [INFO] started o.a.s.s.o.e.j.s.ServletContextHandler{/,null}
o.a.s.s.o.e.j.s.AbstractConnector [INFO] Started SelectChannelConnector@0.0.0.0:8080

Supervisorも起動します。

$ bin/storm supervisor

起動したようですね。

supervisor.log
o.a.s.s.o.a.c.f.s.ConnectionStateManager [INFO] State change: CONNECTED
o.a.s.d.supervisor [INFO] Starting supervisor with id 3db82a97-2a95-4dea-8981-5f19a5084f1c at host 192.168.10.104
o.a.s.d.m.MetricsUtils [INFO] Using statistics reporter plugin:org.apache.storm.daemon.metrics.reporters.JmxPreparableReporter
o.a.s.d.m.r.JmxPreparableReporter [INFO] Preparing...
o.a.s.d.common [INFO] Started statistics report plugin...

Storm UIにアクセスしてみる

うまく起動できたら、Storm UIに早速アクセスしてみましょう。

スクリーンショット 2016-04-16 8.15.25.png
とりあえず表示できました。

Topologyのサンプルを動かしてみる

以下のコマンドでTopologyのサンプルを動かしてみます。

$ bin/storm jar examples/storm-starter/storm-starter-topologies-1.0.0.jar org.apache.storm.starter.ExclamationTopology ExclamationTopology

スクリーンショット 2016-04-16 8.28.28.png
うまく起動すればTopology Summaryに表示されます。地味にSearchができるようになっていますね。

ログレベルがUIから変更可能に

Topologyの詳細ページに遷移すると、Topology Actionsに"Change Log Level"が増えています。UIからログレベルが変更可能になったんですね。これは地味に便利かも。

スクリーンショット 2016-04-16 8.30.00.png

Supervisorログの確認がStorm UIから可能に

今まではサーバ上でsupervisor.logを見る必要がありましたが、1.0.0からStormUIからのsupervisor.log確認ができるようになりましたね。

ただし、ログを確認するためにはlogviewerの動作が必要です。

$ bin/storm logviewer

Supervisor SummaryのHostのIPアドレスをクリックすればlogviewerの画面に遷移し、ログの確認ができます。

スクリーンショット 2016-04-16 8.38.16.png

logviewer画面の操作性が増している

表示しているログ内部の操作が可能に

これは嬉しい。。。キーワードを入力することで該当するログのみを表示してくれます。

スクリーンショット 2016-04-16 8.40.51.png
表示したsupervisor.logを"thread"というキーワードで絞り込んでみます。

スクリーンショット 2016-04-16 8.42.42.png
うん、普通に便利。

ログフォルダのファイル一覧が出せる

スクリーンショット 2016-04-16 8.43.30.png
ログフォルダ配下にあるログの一覧がドロップダウンで出力されるようです。これ、つまり実質ログを見るためにサーバにアクセスする必要がなくなった、ということですね。

ちなみにlogsフォルダの構成も仕様変更があったようで、workerのログはworkers-artifactsというフォルダの中で、TopologyID毎、ポート番号毎でログの配置先が変わっているようです。
->Topologyのログを確認する場合は、上記のフォルダ配下の一覧が出力されるようです。

スクリーンショット 2016-04-16 8.43.45.png

さて、Storm UIを起動してざっと見てきましたが、今までサーバにアクセスして確認していたものを、なるべくViewで済ませられるように使い勝手、機能性の向上がされているように見えました。まだまだ調べがいがありますね。

8
7
1

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
8
7