服务器信息
elasticsearch版本 1.6.0
jdk版本 1.7.0_80
10.100.0.29 es1
10.100.0.44 es2
10.100.0.45 es3
10.100.0.46 es4
10.100.0.47 es5
在线扩容(3->5)
原es集群 es1,2,3配置
cluster.name: esc1
node.name: sen1 #各节点不通
discovery.zen.minimum_master_nodes: 2 #节点数+1 再除2
discovery.zen.ping.timeout: 30s
discovery.zen.ping.unicast.hosts: [10.100.0.29,10.100.0.44,10.100.0.45]
index:
analysis:
analyzer:
ik:
alias: [ik_analyzer]
type: org.elasticsearch.index.analysis.IkAnalyzerProvider
ik_max_word:
type: ik
use_smart: false
ik_smart:
type: ik
use_smart: true
启动集群查看集群状态,各节点状态一致
###加入es4,5节点
es4,5节点配置
cluster.name: esc1
node.name: sen4
discovery.zen.minimum_master_nodes: 3 #5节点修改为3
discovery.zen.ping.timeout: 30s
discovery.zen.ping.unicast.hosts: [10.100.0.29, 10.100.0.44,10.100.0.45,10.100.0.46,10.100.0.47] #加入4,5节点
index:
analysis:
analyzer:
ik:
alias: [ik_analyzer]
type: org.elasticsearch.index.analysis.IkAnalyzerProvider
ik_max_word:
type: ik
use_smart: false
ik_smart:
type: ik
use_smart: true
启动4,5节点,查看1,2,3,4,5节点状态
原1,2,3节点都已发现4,5节点,各节点状态一致
修改其他zk服务器配置
修改 1,2,3节点配置后依次重启(一定要优先重启follower,不然4,5节点报错) 集群扩容完成,之后可以修改应用的配置
cluster.name: esc1
node.name: sen3
discovery.zen.minimum_master_nodes: 3 #5节点最小得有3个节点在线,修改为3
discovery.zen.ping.timeout: 30s
discovery.zen.ping.unicast.hosts: [10.100.0.29, 10.100.0.44,10.100.0.45,10.100.0.46,10.100.0.47] #3个节点修改为5个节点
index:
analysis:
analyzer:
ik:
alias: [ik_analyzer]
type: org.elasticsearch.index.analysis.IkAnalyzerProvider
ik_max_word:
type: ik
use_smart: false
ik_smart:
type: ik
use_smart: true
在线收缩(5->3)
从集群中剔除4,5节点,则修改其他节点的配置,依次重启修改过配置的节点(没错,就是扩容操作反着来一遍)
es1收缩后的配置
cluster.name: esc1
node.name: sen1
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping.timeout: 30s
discovery.zen.ping.unicast.hosts: [10.100.0.29, 10.100.0.44,10.100.0.45]
index:
analysis:
analyzer:
ik:
alias: [ik_analyzer]
type: org.elasticsearch.index.analysis.IkAnalyzerProvider
ik_max_word:
type: ik
use_smart: false
ik_smart:
type: ik
use_smart: true
####重启1,2,3完成后集群仍然是5节点的,此时依次关闭4,5节点
查看各节点状态一致,并且状态为green,至此收缩完成