Elasticsearch Cluster Runner

Elasticsearch関連の開発をしていると、クラスタ環境とかでのテストとかを使いたくなるケースがあると思う。Elasticsearchはクラスタ環境を簡単に作れるけど、わざわざ複数のインスタンスを立ち上げてとかは面倒だな、と思っていたので、ElasticsearchのInternalNodeを使って、Ⅰつのインスタンスで複数のElasticsearchのノードを起動できるElasticsearch Cluster Runnerを作ってみました。
JavaとMavenがインストールされた環境であれば、

git clone https://github.com/codelibs/elasticsearch-cluster-runner.git

として、プロジェクトをcloneして、あとは

mvn exec:java

とすれば、3ノードのElasticsearchクラスタが起動します。
-basePathオプションでElasticsearchのルートディレクトリを指定することはできるけど、デフォルトではes_homeディレクトリが作成されてそこを利用されます。logsとかはノードごとにそこ以下にディレクトリが作成されます。
-numOfNodeを変更すればノード数も変更することができます。
あとは使いながら、改善していこうかと…。

Ubuntuのログイン画面でユーザーが選択できない

UbuntuでLDAP環境とかのユーザー情報でログインをしようとしたときにログイン画面のユーザー一覧に表示されず、ログインできない場合がある。そんなときは/etc/lightdm/lightdm.confを編集して(存在していなければ作成して)

greeter-show-manual-login=true

を追加しておく。そして、再起動すればOK。

Ubuntu 14.04でChromeが起動しない

Ubuntu 12.04から14.04にアップグレードインストールしたら、Chromeが起動しなくなった。エラーは

/usr/bin/google-chrome: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory

という感じだった。その場合は

sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /usr/lib/libudev.so.0

とすれば良い。