CentOS 7
Sponsored Link

Elastic Stack 7 : Elasticsearch クラスターを構成する2019/06/18

 
Elasticsearch クラスターを構成します。
当例では 3ノード構成で Elasticsearch クラスターを設定します。
Elasticsearch クラスターではノード毎に役割が設定可能ですが、当例では 各ノードそれぞれが、デフォルト設定の Master Eligible Node 兼 Data Node として設定します。
ノードの役割については公式サイトを参照ください。
⇒ https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html

[1]
こちらを参考に全ノードに Elasticsearch をインストールしておきます。(インストールのみで起動はしない)
[2] 全ノードで以下のように設定変更します。
[root@node01 ~]#
vi /etc/elasticsearch/elasticsearch.yml
# 17行目:コメント解除して変更 (任意のクラスター名)

cluster.name:
elastic-cluster
# 23行目:コメント解除して変更 (ノード名はホスト名とする)

node.name:
${HOSTNAME}
# 55行目:コメント解除して変更 (全てリスンする)

network.host:
0.0.0.0
# 73行目:追記 (全ノードを指定する - ノード名は [node.name] と同じであること)

cluster.initial_master_nodes:
  - node01.srv.world
  - node02.srv.world
  - node03.srv.world

[root@node01 ~]#
systemctl start elasticsearch

[root@node01 ~]#
systemctl enable elasticsearch

[3] Firewalld を有効にしている場合は、サービスポートの許可が必要です。
[root@node01 ~]#
firewall-cmd --add-port={9200/tcp,9300/tcp} --permanent

success
[root@node01 ~]#
firewall-cmd --reload

success
[4] 設定後はクラスターの状態を確認し、以下のように status が green 且つ ノードの数が設定数分の数値になっていれば OK です。
[root@node01 ~]#
curl http://10.0.0.51:9200/_cluster/health?pretty

{
  "cluster_name" : "elastic-cluster",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 3,
  "number_of_data_nodes" : 3,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "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" : 100.0
}
関連コンテンツ