mamori017のブログ

二番煎じ感のある作業記録

Ubuntu 16.04にElasticSearch 5.3.0とKibana 5.3.0をインストールする

OpenJDK

ElasticsearchはJava 8が必要になるのでOpenJDKを使用してインストールする。

$ apt-get install openjdk-8-jdk

Javaバージョンを確認する。

ubuntu@ubuntu:~$ java -version
openjdk version "1.8.0_121"
OpenJDK Runtime Environment (build 1.8.0_121-8u121-b13-0ubuntu1.16.04.2-b13)
OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)

Elasticsearch

www.elastic.co

リポジトリを登録する。

$ wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

パッケージのダウンロード元を追記する。

$ echo "deb http://packages.elastic.co/elasticsearch/5.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-5.x.list

Elasticsearchをインストールする。

$ sudo apt-get update
$ sudo apt-get install elasticsearch

この時点でElasticsearchのバージョンは5.0.0-alphaになっているはずなので5.3.0にアップデートする。このアップデートをスキップした場合、ブラウザでKibanaを見たときにElasticsearchとKibanaでバージョンが違うと警告が出る。

$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.deb
$ sudo dpkg -i elasticsearch-5.3.0.deb

リモート接続を許可するため、/etc/elasticsearch/elasticsearch.ymlの設定を変更する。

変更前
#network.host: "localhost"
変更後
network.host: "0.0.0.0"

Elasticsearchを開始する。

ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch start
[ ok ] Starting elasticsearch (via systemctl): elasticsearch.service.

curl http://localhost:9200でElasticsearchが動作しているか確認したところ、curl: (7) Failed to connect to localhost port 9200 接続を拒否されましたと出力された。

blog.johtani.info

この記事によると、ElasticsearchはIPv4IPv6どちらにもバインドするようなので、IPv6を無効にするようhostsファイルを変更する。

変更前
::1 localhost
変更後
#::1 localhost

再度確認してみたところ表示されるようになった。

ubuntu@ubuntu:~$ curl "http://localhost:9200/"
{
  "name" : "EVAwQeO",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "y0uAjCj5TE2M6Z-Zw4TK9g",
  "version" : {
    "number" : "5.3.0",
    "build_hash" : "3adb13b",
    "build_date" : "2017-03-23T03:31:50.652Z",
    "build_snapshot" : false,
    "lucene_version" : "6.4.1"
  },
  "tagline" : "You Know, for Search"
}

Kibana

www.elastic.co

リポジトリを登録する。

$ sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

httpsに対応したapt methodをインストールする。

$ sudo apt-get install apt-transport-https

パッケージのダウンロード元を追記する。

$ echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list

Kibanaをインストールする。

$ sudo apt-get update
$ sudo apt-get install kibana

リモート接続を許可するため、/etc/kibana/kibana.ymlの設定を変更する。

server.host: "0.0.0.0"

Kibanaを開始する。

ubuntu@ubuntu:~$ sudo /etc/init.d/kibana start
kibana started

ブラウザからhttp://localhost:5601にアクセスして確認する。 ここで警告が出ていなければインストールは完了。

f:id:mamori017:20170418145559p:plain

Elasticsearchが起動していなかったり、ElasticsearchとKibanaのバージョンが異なっていたりするとStatus:Redと表示される。この画面の場合はElasticsearchが起動していない場合。

f:id:mamori017:20170419102308p:plain