elasticsearch采坑 集群失败(清理旧数据)

场景

  • elasticserach生产环境肯定是进行集群的, 集群失败的主要是根据下面的两个配置
    • cluster.name
    • discovery.zen.ping.unicast.hosts

问题描述

  • 我的各个节点的cluster.namer相同, discovery.zen.ping.unicast.hosts囊括了所有的IP, 但是总是有两个节点无法组成集群
  • 各个节点只有node.name不同
cluster.name: wechat-es-cluster   #集群的名字
node.name: es-node-1  #节点的名字 每个节点都不一样
node.master: true   # 是否有资格成为主节点  我的机器是都可以成为主节点的
node.data: true  # 是否可以成为数据节点 (主节点也可以成为数据节点)
path.data: /home/carsonlius/elasticsearch/data  // 数据存储路径
path.logs: /home/carsonlius/elasticsearch/logs // 日志存储路径
network.host: 0.0.0.0  # 设置访问的地址和端口, 默认无法公开访问
http.port: 9200  # 设置访问的地址和端口
discovery.zen.ping.unicast.hosts: ["172.17.0.4", "172.17.0.2", "172.17.0.3", "172.17.0.5"] #集群的主机地址
discovery.zen.minimum_master_nodes: 3 # 防止脑裂 通常为 (可成为主节点的主机数目 / 2) + 1
gateway.recover_after_nodes: 3 # 最好3个节点 回应之后集群就可以继续工作
cluster.initial_master_nodes: ["es-node-4", "es-node-3", "es-node-2", "es-node-1"]  # 通过为 cluster.initial_master_nodes 参数设置一系列符合主节点条件的节点的主机名或 IP 地址来引导启动集群

参考文档

解决

  • 清理掉数据文件, 重启集群
  • rm -fr /home/carsonlius/elasticsearch/data
  • sudo -i service elasticsearch restart
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章