Elasticsearch5.6.1(最新版)インストール手順 tar.gz

Elasticsearch

今回は、Elasticsearch5.6.1のインストール方法(tar.gz)をご紹介します。

インストール手順については、Elasticsearch自体が日本語の情報が少ないのと、基本的に日本語の情報は古いものが多いですので、公式の英語マニュアルを参考に進めていきます。

 

Elasticsearchインストール環境

# cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.2 LTS (Xenial Xerus)"

 

Elasticsearchインストール手順概要

基本的には以下公式サイトの手順でインストールしていきますので、不明点がある場合は公式サイトも目を通してみてください。

Set up Elasticsearch | Elasticsearch Reference [5.6] | Elastic

Installing Elasticsearch | Elasticsearch Reference [5.6] | Elastic

 

1. まず、以下公式サイトにもあるように、Javaのインストールが必要です。
Java(jdk9)(最新版)インストール手順 tar.gzから最新版のJavaをインストールしてください。

 

Java (JVM) Versionedit

Elasticsearch is built using Java, and requires at least Java 8 in order to run. Only Oracle’s Java and the OpenJDK are supported. The same JVM version should be used on all Elasticsearch nodes and clients.

We recommend installing Java version 1.8.0_131 or later. Elasticsearch will refuse to start if a known-bad version of Java is used.

The version of Java that Elasticsearch will use can be configured by setting the JAVA_HOMEenvironment variable.

 

2. Javaのインストールが完了したら、Elasticsearchをインストールしていきます。

公式サイトの手順には、ぱっとみ見当たらなかったのですが、「tar.gz」からインストールしたものは、rootユーザでElasticsearchを起動するとエラーがでましたので、事前に専用のユーザを作成しておきたいと思います。

 

「adduser」コマンドについは、パスワードを入力し、残りはEnterで大丈夫です。

最後の「以上で正しいですか? [Y/n] 」の問いに「Y」を入力すればユーザが作成できます。

elasticsearchユーザ を sudo グループに追加しておきましょう。「sudoグループ」については事前に設定しておいてください。

 

# adduser elasticsearch
------------------------------------------------
ユーザー `elasticsearch' を追加しています...
新しいグループ `elasticsearch' (1001) を追加しています...
新しいユーザー `elasticsearch' (1001) をグループ `elasticsearch' に追加しています...
ホームディレクトリ `/home/elasticsearch' を作成しています...
`/etc/skel' からファイルをコピーしています...
新しい UNIX パスワードを入力してください:
新しい UNIX パスワードを再入力してください:
passwd: パスワードは正しく更新されました
elasticsearch のユーザ情報を変更中
新しい値を入力してください。標準設定値を使うならリターンを押してください
        フルネーム []:
        部屋番号 []:
        職場電話番号 []:
        自宅電話番号 []:
        その他 []:
以上で正しいですか? [Y/n] Y
------------------------------------------------

# gpasswd -a elasticsearch sudo
ユーザ elasticsearch をグループ sudo に追加

 

3. elasticsearchユーザにスイッチして、インストールするディレクトリへ移動してください。(今回は、/usr/localへインストールします)
以下のように、「wget」コマンドで取得するか、Download Elasticsearch Free • Get Started Now | ElasticからWinSCP等で対象のディレクトリへ配置してください。
また、ダウンロードしたファイルが破損していないか公式サイトのチェックサム(published SHA)と比較して確認してください。

# su - elasticsearch

$ cd /usr/local

$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.1.zip

$ sha1sum elasticsearch-5.6.1.tar.gz
31168d3e6383dd5aef03b150fc718c789b6ad1dd  elasticsearch-5.6.1.tar.gz

 

4. 「tar.gz」ファイルを解凍して、できたディレクトリへ移動してください。

$ tar -xzf elasticsearch-5.6.1.tar.gz

$ cd elasticsearch-5.6.1/

 

5. Elasticsearchを起動してみましょう。エラーが出力されずに起動できれば成功です。
別ターミナルを開いて、「curl」コマンドで「localhost:9200」アクセスしてみてください。
※もし、ポート9200が他に使われてしまっている場合はElasticsearchは別ポートで起動します。

$ ./bin/elasticsearch
-------------------------------------------------------
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
.
.
[2017-09-26T20:28:03,736][INFO ][o.e.p.PluginsService     ] [yUTLDl8] no plugins loaded
-------------------------------------------------------

★別ターミナルから
# curl -XGET 'localhost:9200/?pretty'
{
  "name" : "yUTLDl8",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "8b0C5hPrTx2mIWx883sfWw",
  "version" : {
    "number" : "5.6.1",
    "build_hash" : "667b497",
    "build_date" : "2017-09-14T19:22:05.189Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.1"
  },
  "tagline" : "You Know, for Search"
}

 

6. 起動することまで確認できたので、一旦ここで不要になったファイルは削除しておきましょう。

$ cd /usr/local

$ rm -i elasticsearch-5.6.1.tar.gz

 

7. 今度はホームディレクトリへ移動して、Elasticsearchをデーモンモード(バックグラウンド)で実行してみましょう。
デーモンモードで起動できたら、再度curlコマンドでElasticsearchにアクセスして確認します。

$ cd ~

$ pwd
/home/elasticsearch

$ ls -l /usr/local/elasticsearch-5.6.1/bin/elasticsearch
-rwxr-xr-x 1 elasticsearch elasticsearch 8075 Sep 15 04:19 /usr/local/elasticsearch-5.6.1/bin/elasticsearch

$ /usr/local/elasticsearch-5.6.1/bin/elasticsearch -d -p pid
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.

$ cat pid
6556

$ curl -XGET 'localhost:9200/?pretty'
----------------------------------------------------
{
  "name" : "yUTLDl8",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "8b0C5hPrTx2mIWx883sfWw",
  "version" : {
    "number" : "5.6.1",
    "build_hash" : "667b497",
    "build_date" : "2017-09-14T19:22:05.189Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.1"
  },
  "tagline" : "You Know, for Search"
}
----------------------------------------------------

$ kill `cat pid`

 

8. リンクを張って、「ES_HOME」を設定しておきましょう。

ディレクトリを移動して、相対パスで、リンクを張っておきます。

$ whoami
elasticsearch

$ cd /usr/local

$ sudo ln -sf elasticsearch-5.6.1/ elasticsearch

$ ls -l elasticsearch
lrwxrwxrwx 1 root root 20 Sep 26 22:34 elasticsearch -> elasticsearch-5.6.1/

 

elasticsearchユーザの「.bashrc」に追記して、、「ES_HOME」を設定してください。

$ vi ~/.bashrc
----------------------------------------
export ES_HOME=/usr/local/elasticsearch
----------------------------------------

$ exit
ログアウト

# su - elasticsearch

$ env|grep -i es_home
ES_HOME=/usr/local/elasticsearch

 

9. 最後にElasticsearchコマンドをPATHにいれて完了としましょう。

$ whoami
elasticsearch

$ ls -l /usr/local/elasticsearch/bin/
---------------------------------------------------------
合計 348
-rwxr-xr-x 1 elasticsearch elasticsearch   8075 Sep 15 04:19 elasticsearch
-rwxr-xr-x 1 elasticsearch elasticsearch   2550 Sep 15 04:19 elasticsearch-keystore
.
.
-rw-r--r-- 1 elasticsearch elasticsearch   1023 Sep 15 04:19 elasticsearch.in.bat
-rwxr-xr-x 1 elasticsearch elasticsearch    367 Sep 15 04:19 elasticsearch.in.sh
---------------------------------------------------------

$ vi ~/.bashrc
以下を追記する。
---------------------------------------------------------
export PATH="/usr/local/elasticsearch/bin:$PATH"
---------------------------------------------------------

 

お疲れ様でした。

次回以降は、Elasticsearchの起動スクリプトとcurlでのアクセス方法、プラグインを活用した方法をご紹介していきます。

コメント