# Elasticsearch 1.7.5 から 2.3.3 へのアップデート後に Kibana でエラーが発生する

**URL:** <https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742>\
**Category:** 日本語による質問・議論はこちら\
**Created:** [June 14, 2016, 1:41pm UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742 "2016-06-14T13:41:22Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![masutaka](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/masutaka/32/10294_2.png) [@masutaka](https://discuss.elastic.co/u/masutaka)\
**Post date:** [June 14, 2016, 1:41pm UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742/1 "2016-06-14T13:41:22Z")

</div>

先日 Elasticsearch を 1.7.5 から 2.3.3 に、Kibana を 4.1.2 から 4.5.1 にアップデートしました。

現在のところ、Kibana にアクセスすると  
plugin:elasticsearch: Elasticsearch is still initializing the kibana index.  
とのエラーが発生しており、馴染みの画面に進めません。

どんな原因が考えられるでしょうか？

状態としては以下になります。

```auto
$ curl 'http://localhost:9200/_cluster/health?pretty'
{
  "cluster_name" : "masutaka_net",
  "status" : "red",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 2550,
  "active_shards" : 2550,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 2552,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 49.98039984319875
}

```

以下、アップデートで行ったことです（長文です）。

* * *

Elasticsearch はさくらの VPS 上で稼働しており、メモリは 2G です。Kibana も同一ホスト上にあります。

はじめ、以下のドキュメントを参照し、不要な設定を削除しました。

> **[Breaking changes | Elasticsearch Guide \[2.0\] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/2.0/breaking-changes.html)**

> **[Breaking changes | Elasticsearch Guide \[2.1\] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/2.1/breaking-changes.html)**

> **[Breaking changes | Elasticsearch Guide \[2.2\] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/2.2/breaking-changes.html)**

> **[Breaking changes | Elasticsearch Guide \[2.3\] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/2.3/breaking-changes.html)**

実際の差分は以下になります。Kibana の設定はデフォルトです。何も設定していません。

```auto
cluster.name: masutaka_net
node.name: "Masutaka Net"
discovery.zen.minimum_master_nodes: 1
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["localhost"]
http.cors.enabled: true

↓

cluster.name: masutaka_net
node.name: "Masutaka Net"
discovery.zen.ping.unicast.hosts: ["localhost"]
discovery.zen.minimum_master_nodes: 1

```

Elasticsearch は停止しても構わないため、apt の source.list を 2.x 系に変更し `$ apt-get update && apt-get upgrade` しました。

Elasticsearch 自体は以下のようなログを多く出しながらも、最終的に `$ curl localhost:9200` で応答が返ることを確認しました。

> [2016-06-13 23:21:33,840][WARN][cluster.metadata] [Masutaka Net] [index-name-2016.02.14] re-syncing mappings with cluster state because of types [[type-name]]

Kibana-4.5.1 をダウンロードして起動したところ、以下のエラーが発生。

```auto
$ ./bin/kibana
  log [23:28:28.298] [info][status][plugin:kibana] Status changed from uninitialized to green - Ready
  log [23:28:28.412] [info][status][plugin:elasticsearch] Status changed from uninitialized to yellow - Waiting for Elasticsearch
  log [23:28:28.456] [info][status][plugin:kbn_vislib_vis_types] Status changed from uninitialized to green - Ready
  log [23:28:28.478] [info][status][plugin:markdown_vis] Status changed from uninitialized to green - Ready
  log [23:28:28.492] [info][status][plugin:metric_vis] Status changed from uninitialized to green - Ready
  log [23:28:28.530] [info][status][plugin:spyModes] Status changed from uninitialized to green - Ready
  log [23:28:28.555] [info][status][plugin:statusPage] Status changed from uninitialized to green - Ready
  log [23:28:28.570] [info][status][plugin:table_vis] Status changed from uninitialized to green - Ready
  log [23:28:28.616] [fatal] Error: listen EADDRINUSE 0.0.0.0:5601
    at Object.exports._errnoException (util.js:870:11)
    at exports._exceptionWithHostPort (util.js:893:20)
    at Server._listen2 (net.js:1234:14)
    at listen (net.js:1270:10)
    at net.js:1379:9
    at nextTickCallbackWith3Args (node.js:453:9)
    at process._tickDomainCallback (node.js:400:17)
FATAL { [Error: listen EADDRINUSE 0.0.0.0:5601]
  cause:
   { [Error: listen EADDRINUSE 0.0.0.0:5601]
     code: 'EADDRINUSE',
     errno: 'EADDRINUSE',                                                                                                                                                 
     syscall: 'listen',
     address: '0.0.0.0',
     port: 5601 },
  isOperational: true,
  code: 'EADDRINUSE',
  errno: 'EADDRINUSE',
  syscall: 'listen',
  address: '0.0.0.0',
  port: 5601 }

```

[Redirecting to Google Groups](https://groups.google.com/forum/#!msg/selks/BpxyVLwuuW4/KKKRhlHZAgAJ) を見つけ、delete-by-query をインストール（元々インストールされてなかった）。 `http.cors.enabled: true` も設定したところ、表題の現象になりました。この辺、どちら要因かの切り分けは出来ていません。

それでもダメなので、Kibana のダッシュボードが消えることを覚悟して、`$ curl -XDELETE http://localhost:9200/.kibana` を実行したが、変化なし。 [Elasticsearch is still initializing the kibana index - Stack Overflow](http://stackoverflow.com/questions/31201051/elasticsearch-is-still-initializing-the-kibana-index) を参考にしました。

---

<div class="post-metadata">

**Author:** ![johtani](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/johtani/32/44956_2.png) [@johtani](https://discuss.elastic.co/u/johtani)\
**Post date:** [June 16, 2016, 10:28am UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742/2 "2016-06-16T10:28:30Z")

</div>

Elasticsearchのクラスタのstatusがredだったりはしないですか？  
Es側にログは何か出てないでしょうか？

---

<div class="post-metadata">

**Author:** ![masutaka](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/masutaka/32/10294_2.png) [@masutaka](https://discuss.elastic.co/u/masutaka)\
**Post date:** [June 18, 2016, 6:01am UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742/3 "2016-06-18T06:01:01Z")

</div>

返信ありがとうございます。

> [@masutaka](#):
>
> $ curl '[http://localhost:9200/\_cluster/health?pretty](http://localhost:9200/_cluster/health?pretty)'  
> {  
> "cluster\_name" : "masutaka\_net",  
> "status" : "red",  
> (snip)

こちらのとおり、Elasticsearch のクラスタの status は red です。  
Elasticsearch 側のログにはエラーメッセージはないようです。  
grep ERR /var/log/elasticsearch/masutaka\_net.log.2016-06-\* で何もヒットしませんでした。

Elasticsearch 単体の動作は正常に見えます...。以下のような Document の POST や、GET/DELETE の正常動作は確認できています。

```auto
curl -s -XPOST 'http://localhost:9200/index-name-2016.06/type-name/' -d '{
    "aaa" : 1111,
    "bbb" : 2222,
    "ccc" : 3333
}'

```

---

<div class="post-metadata">

**Author:** ![johtani](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/johtani/32/44956_2.png) [@johtani](https://discuss.elastic.co/u/johtani)\
**Post date:** [June 18, 2016, 9:07am UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742/4 "2016-06-18T09:07:59Z")

</div>

Elasticsearchのクラスredということは、インデックスが壊れている状況になっています。

KibanaはElasticsearchがRedではない状況で動作するので、  
Elasticsearchの状況をもっと調べる必要があるかと。

```auto
GET /_cat/indices

```

でまずは、保存されているインデックスの状態を確認してみてください。  
いずれかのインデックスがredになっているはずです。

---

<div class="post-metadata">

**Author:** ![masutaka](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/masutaka/32/10294_2.png) [@masutaka](https://discuss.elastic.co/u/masutaka)\
**Post date:** [June 18, 2016, 1:18pm UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742/5 "2016-06-18T13:18:17Z")

</div>

結論から言うと、Kibana 直りました。ありがとうございます！

> [@johtani](#):
>
> GET /\_cat/indices
> 
> でまずは、保存されているインデックスの状態を確認してみてください。

533 個のインデックスのうち、52 個が壊れていました。

```auto
$ curl -s -X GET 'http://localhost:9200/_cat/indices' | grep '^red' | wc -l
52

$ curl -s -X GET 'http://localhost:9200/_cat/indices' | grep -v '^red' | wc -l
481

$ curl -s -X GET 'http://localhost:9200/_cat/indices' | grep '^red' | sort
red open .kibana 1 1
red open kibana-int 5 1
red open nginx-access-2014.12 5 1
red open nginx-access-2015.01 5 1
red open nginx-access-2015.02 5 1
red open nginx-access-2015.03 5 1
red open nginx-access-2015.04 5 1
red open nginx-access-2015.05 5 1
red open sshd-invalid-user-2015.02.15 5 1
(snip)

```

ところが、何度か `GET /_cat/indices` していたら .kibana 以外 yellow に復帰しました。Elasticsearch を起動した直後は red のインデックスがあるが、しばらくすると yellow に変わるのですね。

red がなくなった直後の Elasticsearch のログです。

> [2016-06-18 21:09:26,239][INFO][cluster.routing.allocation] [Masutaka Net] Cluster health status changed from [RED] to [YELLOW] (reason: [shards started [[nginx-access-2014.12][3], [nginx-access-2014.12][0], [nginx-access-2014.12][3], [nginx-access-2014.12][0]] ...]).

ところが今度は以下のエラーが発生し、Kibana が完全に動作不能になってしまいました。`Go back` も `clear your session` も、`.kibana` と `kibana-int` を `DELETE` しても効果なしでした。

 ![](https://us1.discourse-cdn.com/elastic/original/2X/d/d414894169012f91bd0f94bc74160f25216f6d93.png)

試行錯誤して `http.cors.enabled: true` を削除したところ、Kibana が無事復帰しました。

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 1:47pm UTC](https://discuss.elastic.co/t/elasticsearch-1-7-5-2-3-3-kibana/52742/6 "2017-07-06T13:47:38Z")

</div>


