Amazon Linux に Elasticsearch 5.5 をインストール

https://www.elastic.co/guide/en/elasticsearch/reference/5.5/rpm.htmlの通りですが、メモしておきます。

elasticsearch リポジトリの設定を/etc/yum.repos.d/elasticsearch.repoに下記の内容で保存します。

[elasticsearch-5.x]
name=Elasticsearch repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

Elasticsearch をインストール

$ sudo yum install -y elasticsearch

8 以降の java が必要との事なのでインストール

$ sudo yum install -y java-1.8.0-openjdk

CentOS と違ってデフォルトで java 7 がインストールされているのでバージョンを切り替えます。

$ sudo /usr/sbin/update-alternatives --set java /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java

Elasticsearch 起動

# 起動時に自動で起動
$ sudo chkconfig --add elasticsearch
$ sudo -i service elasticsearch start

Starting elasticsearch: OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x000000008a660000, 1973026816, 0) failed; error='Cannot allocate memory' (errno=12)

メモリサイズが足りないとのことなので /etc/elasticsearch/jvm.options を修正

-Xms500m
-Xmx500m

試しに日本語用アナライザ用らしいプラグインをインストール、Elasticsearch 再起動

sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-kuromoji

起動しているか確認

$ curl "localhost:9200"
{
  "name" : "hoRwe69",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "50OEG4CdTmKwB8o7fQVJag",
  "version" : {
    "number" : "5.5.1",
    "build_hash" : "19c13d0",
    "build_date" : "2017-07-18T20:44:24.823Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.0"
  },
  "tagline" : "You Know, for Search"
}

参考

java バージョン切り替え http://qiita.com/genreh/items/5ca16775442f3e3a355a

update-alternativesの使い方 http://graziegrazie.hatenablog.com/entry/2015/11/14/101050