時系列データを保存する環境をローカルに作ります。ここではKairosDBを使います。
インストールインストラクションについては、ここの内容を参照します。
Apache CassandraをDockerコンテナとして起動する。
KairosDBのバックエンドで連携するデータベースはデフォルトでH2というデータベースですが、ここではApache Cassandraを使うことにします。ここではDockerコンテナとしてCaccandraを動かします。
以下のコマンドを実行します。
$ docker run -p 9042:9042 -p 9160:9160 --name cassandra0 cassandra
起動されると、別のコンソールのコマンドから、Cassandraが実行されていることが分かります。
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93df8ff719fc cassandra "docker-entrypoint.s…" 5 minutes ago Up 5 minutes 7000-7001/tcp, 0.0.0.0:9042->9042/tcp, 7199/tcp, 0.0.0.0:9160->9160/tcp cassandra0
KairosDBのインストール
https://github.com/kairosdb/kairosdb/releases
からダウンロードします。このブログを書いている時点でのリリースバージョンは1.2.2です。
tar.gzファイルを落としてくるのが一般的かもしれませんが、ここでは楽してDebianパッケージを落としてきてしまいました。
ダウンロード先のフォルダで以下を実行して、KairosDBのソースをダウンロード&展開して設定を変更します。
$ tar zxvf kairosdb-1.2.2-1.tar.gz
$ cd kairosdb/conf
$ nano kairosdb.properties
以下の通り、エディタを立ち上げて、kairosdb.service.datastoreというプロパティで設定します。コメントのアウト、インで簡単に設定できるようになっています。
デフォルト
kairosdb.service.datastore=org.kairosdb.datastore.h2.H2Module
kairosdb.datastore.concurrentQueryThreads=5
#kairosdb.service.datastore=org.kairosdb.datastore.cassandra.CassandraModule
#kairosdb.service.datastore=org.kairosdb.datastore.remote.RemoteModule
変更後
#kairosdb.service.datastore=org.kairosdb.datastore.h2.H2Module
kairosdb.datastore.concurrentQueryThreads=5
kairosdb.service.datastore=org.kairosdb.datastore.cassandra.CassandraModule
#kairosdb.service.datastore=org.kairosdb.datastore.remote.RemoteModule
KairosDB起動
KairosDBのインストールガイドにあるとおりに、JAVA_HOME環境変数を調整して、いよいよ起動します。
sh ./kairosdb.sh run
なんかJava系の例外がいっぱい、エラーもいっぱい。
ちゃんと動いているのだろうか、という大いなる疑問を持ちつつ、次の投稿で先に進めます。
作業としてはKairosDB + Cassandraに続きます。
コメント
[…] KairosDBインストール 2019-12-11 […]