Elaboration in, Garbage out

Twitt*r ではメモできない何かそれ的なモノ・コトを

かんたんに可視化をしたくて三千里(一里目)

やりたいこと

なんか ElasticSearch + Kibana で「わたしたちが考えたもっともかんたんなかしか」みたいなことができるらしいが、Hadoop User Experience (HUE)でもできるたい。

gethue.com

これ見た時には、すげーー!!!! もしかしたら IBM の Many Eyes も目じゃねーよ!って思って、とりあえずやってみようと決意しました。

installation(途中)

環境

  • cloudn の FLAT タイプ
  • CentOS 6.5
  • ansible は少々おまちください。

途中経過

これをやるためには cloudera(少なくともHUE の主要開発者トップ 2 が cloudera の人)に体と魂を売らなければならない、もとい、cloudera のパッケージを使わなければいけないっぽい。それですっげー苦労した。

gethue.com

とっかかりとなる Documents となるのはこのぐらい。とっかかりがあるだけましか。あとは solr と hue を動かせるようにしよう、ってところなんだけれども、これも辛い。とりあえず、 cloudera search という名の solr-serverhue さえ入れられれば(一番最初の URL が書いているように)動く、という希望をもとにとりあえず solr-server を動かすところまでできた。

HUE のインストール

Github の hue のページを見ると、cloudera のレポジトリを用意しなくともインストールできる感が満載。だが、できなかった←

仕方ないので cloudera のレポジトリを使います。http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/cdh_ig_cdh5_install.html を参考にとりあえず最新のレポジトリを使う。

sudo yum clean all
curl -O http://archive.cloudera.com/cdh5/one-click-install/redhat/6/x86_64/cloudera-cdh-5-0.x86_64.rpm
sudo yum --nogpgcheck localinstall cloudera-cdh-5-0.x86_64.rpm

で、HUE のインストール・立ち上げ

sudo yum install hue hue-server
sudo service hue start

なんか余計なものまでけっこー入っている気がする、けどまあいいやっていうことで。これで port 8888 番でアクセスすれば HUE の画面が出るはず。あと画面のなかでの初期設定で Google Analytics に匿名データ渡しますよ、っていうチェックがあるのでそれは外す。

cloudera search という名の solr-server のインストール

sudo yum install solr-server

でインストールは可能。だがしかし sudo service solr-server と solr を動かそうとすると /var/log/solr/solr.out

log4j:ERROR Could not read configuration file from URL [file:/etc/solr/conf/log4j.properties].
java.io.FileNotFoundException: /etc/solr/conf/log4j.properties (No such file or directory)

というエラーを吐きつつ動かない。レポジトリでインストールするのにそこら辺の初期設定はおいてくれないのか・・・ということで、solr のデフォルト(https://github.com/apache/lucene-solr/blob/lucene_solr_4_10/solr/example/resources/log4j.properties)から取ってくる。

これでいけるだろーとおもいきや、同じく /var/log/solr/solr.out

31330 [main] ERROR org.apache.curator.ConnectionState  ? Connection timed out for connection string (localhost:2181) and timeout (15000) / elapsed (31150)
org.apache.curator.CuratorConnectionLossException: KeeperErrorCode = ConnectionLoss
        at org.apache.curator.ConnectionState.checkTimeouts(ConnectionState.java:197)
        at org.apache.curator.ConnectionState.getZooKeeper(ConnectionState.java:87)
        at org.apache.curator.CuratorZookeeperClient.getZooKeeper(CuratorZookeeperClient.java:115)
        at org.apache.curator.utils.EnsurePath$InitialHelper$1.call(EnsurePath.java:148)

(後略)

というエラーが。デフォルトで ZooKeeper 上で動かすようになっているらしい。Solr ってそーだっけー(実は使ったことがない)。とりあえず Stand-alone 構成で ZooKeeper で動かせるように ZooKeeper をインストール。

sudo yum install zookeeper-server
sudo service zookeeper-server start

これだけでも動かないようでなんでだーと思ったんだが、zookeeper が入っただけで solr の初期設定をしないといけないらしい。というわけで

solrctl init --force

を実行。恐らくは zookeeper を入れたあとに solr いれたげればオプション --force はいらないかもしれない。

で、service solr-server start で実行すると、例の solr の画面が見れました。 疲れたー。