Elasticsearch擬似クラスタモード構成

2338 ワード

サーバーで遊んだのはesクラスタだった.
最近、テストサーバに単機esがもったいないと感じています.サーバメモリ128 Gのため、esが推奨するheapは32 Gを超えません.このテストサーバはes以外に何もしないので、esの偽クラスタを遊びたいと思っています.
1つのmasterノード、2つのdataノードを構成することを決定します.まずconfigフォルダの下のjvmを変更します.options:
-Xms30g
-Xmx30g

masterの構成は直接ネット上で1つ探して変更しました:
cluster.name: leopard
node.name: master-1
node.master: true
node.data: false

http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300"]
discovery.zen.minimum_master_nodes: 1

構成が完了したら、直接起動します.
./bin/elasticsearch

間違ったジャンプをしました.
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

この問題は以前centos 6のような古いバージョンの機械で出会ったが、当時は多くのパラメータを変更するのに苦労した.ただしdebian 8については、esのgithubのissue 92を参照する、/etc/sysctlを修正するだけである.conf,追加
vm.max_map_count=655360

できます.同時にrootユーザーで実行:
sysctl -w vm.max_map_count=655360

修正を適時に発効させる.
es起動コマンドを使用すると、esのmasterのプライマリノードが正常に動作していることがわかります.
ただし、擬似クラスタモードではesに異なるプロファイルを読み込むには、公式サイトsettingを参照してください.
./bin/elasticsearch -Epath.conf=/path/to/my/config/

configをconfigにコピーしますmaster1.実行時にオプションを追加:
./bin/elasticsearch -E path.conf=config_master1

このときデータノードconfig_を再構成するnode1:
cluster.name: leopard
node.name: node-1
node.master: false
node.data: true
node.max_local_storage_nodes: 3

http.port: 9201
transport.tcp.port: 9301

discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300"]
discovery.zen.minimum_master_nodes: 1

ここでは、いくつかの点に注意してください.
1.     ,       data log  ,         /data        。     node.max_local_storage_nodes。        ,    。
2. http.port transport.tcp.port    master       。
3.   transport.tcp.port       9301   Master,       discovery.zen.ping.unicast.hosts  。

次に、次のように実行します.
./bin/elasticsearch -E path.conf=config_node1

このときwebインタフェースにアクセスすると、すでにmasterノードとnodeノードがオンラインになっていることがわかります.
クラスタが機械の性能を十分に掘り起こしたいなら、法のように砲制することもできる.ちょうどshardとreplicaがこのマシンのmasterとnodeに割り当てられている場合、マシンが切れてデータが失われるリスクがあるため、shardとreplicaの割り当てを設定する必要があります.公式サイトで指導があります
    cluster.routing.allocation.same_shard.host: true