Elastic Search Cluster Config - 一个物理上的自动发现、配置和多弹性

Elastic Search Cluster Config - automatic discovery , config, and multi-elastic on one physical

问题

所以我们正在使用 elasticsearch-5.6.12 我想知道:

  1. 有没有一种方法可以启用自动发现而不必在配置文件中添加所有 IP 地址?
  2. 以下配置有任何问题吗?
  3. 在同一台物理机上运行ning 2个弹性进程会不会有什么问题?

配置

目前我在第一台服务器上有以下配置:

cluster.name: mbak-prod-elastic-search
node.name: mbak-PROD1.net
network.host: 192.168.212.191
http.port: 8200
discovery.zen.ping.unicast.hosts: ["192.168.212.191", "192.168.212.192", "192.168.212.193"]
discovery.zen.minimum_master_nodes: 2
node.data: true
node.master: true

我在其他两台服务器上也有以下内容:

   cluster.name: mbak-prod-elastic-search
    node.name: mbak-PROD2.net
    network.host: 192.168.212.192
    http.port: 8200
    discovery.zen.ping.unicast.hosts: ["192.168.212.191", "192.168.212.192", "192.168.212.193"]
    discovery.zen.minimum_master_nodes: 2
    node.data: true
    node.master: true

  cluster.name: mbak-prod-elastic-search
    node.name: mbak-PROD3.net
    network.host: 192.168.212.193
    http.port: 8200
    discovery.zen.ping.unicast.hosts: ["192.168.212.191", "192.168.212.192", "192.168.212.193"]
    discovery.zen.minimum_master_nodes: 2
    node.data: true
    node.master: true

此外,这里是否有任何看起来不正确或可能导致问题的地方?

我做了一个测试,发现集群继续 运行 即使其中一个节点已关闭。任何时候至少需要有两个节点运行ning。

更新

我意识到,通过更多阅读文档,我们也许应该让符合主节点条件的节点与数据节点分开?让我们的数据节点也符合 master-eligible 是否存在任何重大问题?

是否有必要将主节点资格从数据节点移开?

我正在观看和阅读以下内容:

您可以运行同一节点上的主角色和数据角色,但不推荐

您需要根据公式配置最少的master节点,以避免脑裂,例如,如果您有3个master节点,那么您需要min : 2

法定人数为(符合主节点资格的节点数 / 2)+ 1

对于发现,我认为你只需要将主节点放在列表中就可以了

您的配置似乎没问题,但在大规模生产环境中,您应该 运行 单独节点上的主角色和数据角色。

注:

除了 Zen discovery 之外,您还可以在云环境中使用以下内容:

  • EC2 探索
  • GCP 发现
  • Azure 发现

不推荐运行一台物理机上的多个实例。但我们这样做是因为我们有非常大的 RAM 容量。 (我不知道你为什么要这样做)

正确配置:

cluster.name: mbak-prod-elastic-search node.name: mbak-PROD1.net
network.host: 192.168.212.191 
transport.tcp.port: 9300 
http.port: 8200 
discovery.zen.ping.unicast.hosts: ["192.168.212.191", "192.168.212.192:9302", "192.168.212.193:9304"] 
discovery.zen.minimum_master_nodes: 3 
node.data: true 
node.master: true



cluster.name: mbak-prod-elastic-search
node.name: mbak-PROD2.net
network.host: 192.168.212.192
transport.tcp.port: 9302
http.port: 8202
discovery.zen.ping.unicast.hosts: ["192.168.212.191:9300", "192.168.212.192", "192.168.212.193:9304"]
discovery.zen.minimum_master_nodes: 3
node.data: true
node.master: true



cluster.name: mbak-prod-elastic-search
node.name: mbak-PROD3.net
network.host: 192.168.212.193
transport.tcp.port: 9304
http.port: 8204
discovery.zen.ping.unicast.hosts: ["192.168.212.191:9300", "192.168.212.192:9302", "192.168.212.193"]
discovery.zen.minimum_master_nodes: 3
node.data: true
node.master: true