问题

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

  • 是否有一种方法可以启用自动发现,而不必在配置文件中添加所有IP地址?
  • 以下配置有任何问题?
  • 在同一台物理计算机上运行2个 flex 进程是否会有问题?

  • 组态

    当前,我在第一台服务器上具有以下配置:
    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
    

    另外,这里是否有任何看起来不正确或可能引起问题的东西?

    我进行了测试,发现即使其中一个节点发生故障,集群也可以继续运行。一次至少需要运行两个节点。

    更新资料

    通过更多地阅读文档,我意识到我们应该使符合资格的主节点与数据节点分开吗?使我们的数据节点也符合主机资格是否有任何重大问题?

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

    我正在看和阅读以下内容:
  • Mastering ElasticSearch : Setting Up Production Cluster
  • https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html#master-node
  • 最佳答案

    您可以在同一节点上运行主角色和数据角色,但不建议

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

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

    为了发现,我认为您只需要将主节点放入列表中即可使用

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

    注意:

    除Zen发现外,您还可以在云环境中使用以下功能:

  • EC2 Discoery
  • GCP发现
  • Azure发现
  • 10-07 18:56
    查看更多