elasticsearch-headを使ってみる
今日はelasticsearch-headを使ってみました。
インストール
2台のEC2インスタンスを作成し、ElasticSearch + AWS Cloud Plugin for ElasticSearchでクラスタ構成にします。手順は「AWS Cloud Plugin for ElasticSearchを使う – AWSで始めるElasticSearch(3)」を参照して下さい。
elasticsearch-headはpluginコマンドでインストールします。
インストール
2台のEC2インスタンスを作成し、ElasticSearch + AWS Cloud Plugin for ElasticSearchでクラスタ構成にします。手順は「AWS Cloud Plugin for ElasticSearchを使う – AWSで始めるElasticSearch(3)」を参照して下さい。
elasticsearch-headはpluginコマンドでインストールします。
$ sudo /usr/share/elasticsearch/bin/plugin -install mobz/elasticsearch-head
-> Installing mobz/elasticsearch-head...
Trying https://github.com/mobz/elasticsearch-head/archive/master.zip...
Downloading .......................DONE
Installed mobz/elasticsearch-head into /usr/share/elasticsearch/plugins/head
Identified as a _site plugin, moving to _site structure ...
インストール後、elasticsearchのサービスを再起動し、「http://IPアドレス:9200/_plugin/head/」にWebブラウザでアクセスすると、elasticsearch-headのWebUI画面が表示されます。
使い方
[Overview]タブでは概要が表示されます。この状態では2台のElasticSearch nodeがCluster構成になっており、dicというIndexが共有化されていることが分かります。数字の札はShardを表しています。
数字をクリックするとShardのステータスが表示されます。
[Browser]タブでは各Indexの情報が参照できます。この例だとIndex=dic、Type=ejの情報が表示されています。
[Structured Query]画面では、通常JSONで投げるQueryを簡単に投げることが出来ます。この例ではmatch_allでQueryしたところです。
これはej.wordというfieldのtermに"run"があるものをQueryしたもの。
[Any Request]タブでは、Request Methodを指定して投げられます。POSTとかDELETEとかですね。結果はJSONで右側ペインに表示されます。curlでRESTful API叩くのと同様ですね。
右上の[Info]ドロップダウンからは、固定的なInfoやStats画表示できます。例えばNode Statsだったり...
Cluster Stateなどを表示することが出来ます。
まとめ
elasticsearch-headで表示できることは大体RESTful APIで出来てしまうのだけど、まぁ取っ付きやすくはあるかなぁと思いました。でも例えばAWSでPrivate Subnetに配置している場合とか、わざわざWebUI使わないよなぁ...curl+jqで充分かなぁという気がします。Shardの分散状態が確認できるのは便利ですね。
Mastering ElasticSearch Rafał Kuć,Marek Rogoziński Packt Publishing Amazonで詳しく見る by AZlink |