まずはお決まりインストールです。
CentOSで作業になります。
ElasticSearchではJavaが必要なので、最新版を入れます。
もしもあらかじめ入っている場合は削除して最新のものに置き換えることをオススメします。
理由は後で書いておきます。
複数のJavaを入れて起動時に指定することも可能っぽいですが、一つにできるならそのほうが確実です。
yum search jdk
上記コマンドでインストールできる最新のjdkのリストが取れるのでそれを入れる。
私の場合は
sudo yum install java-1.8.0-openjdk-devel.x86_64
でした。
あとは、環境変数にJAVA_HOMEを追加
さて、jdkが入ったのでとうとう本体のインストールです。
elastic searchはyum経由でもインストールできるので、それでインストールします。
まずは、yumのリポジトリ登録のために移動。
cd /etc/yum.repos.d/
リポジトリ作成
sudo vi elasticsearch.repo
各内容は公式サイトにあるので、それをコピペ。私の場合は
[elasticsearch-1.7]
name=Elasticsearch repository for 1.7.x packages
baseurl=http://packages.elastic.co/elasticsearch/1.7/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1
これでした。
保存したら、インストール
sudo yum install erasticsearch
jdkの場合と違い、今回は外部と通信します。
そのため、private IPの場合はyum installが失敗します。
その場合は/etc/yum.confにproxyを設定しておいてください。書き方はgoogle先生に聞くとすぐわかります。
あとは、途中でy/Nを求められたら、yを入れて待つだけ。
インストールが完了しました。
起動は以下のコマンドで
sudo service elasticsearch start
面倒ならばサービスに追加で。
chkconfig elastic search on
ターミナルからcurl打つと帰ってくることが確認できます。
curl -X GET http://127.0.0.1:9200/
{
"status" : 200,
"name" : "Ravage 2099",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "1.6.0",
"build_hash" : "cdd3ac4dde4f69524ec0a14de3828cb95bbb86d0",
"build_timestamp" : "2015-06-09T13:36:34Z",
"build_snapshot" : false,
"lucene_version" : "4.10.4"
},
"tagline" : "You Know, for Search"
}
これ、見たらわかりますが、見やすいように改行とインテントしてくれています。
実際の場合は、スマートに不要な部分は削除すると思うのでその場合は
curl -X GET http://192.168.33.10:9200/?pretty=false
{"status":200,"name":"Ravage 2099","cluster_name":"elasticsearch","version":{"number":"1.6.0","build_hash":"cdd3ac4dde4f69524ec0a14de3828cb95bbb86d0","build_timestamp":"2015-06-09T13:36:34Z","build_snapshot":false,"lucene_version":"4.10.4"}
で改行抜きで表示されます。
あとは、インストール後に色々と必要になるelasticsearchのDirectory Layputを記載しておきます。