如何将es cluster 5.5.0升级至 es cluster 5.6.14,参考如下表选用滚动升级方案来进行操作
下表显示何时可以执行滚动升级,什么时候需要重新索引或删除旧的索引,以及何时需要完整的群集重新启动。
升级前 | 升级后 | 支持的升级类型 |
---|---|---|
5.x | 5.y | 滚动升级(y>x) |
5.6 | 6.x | 滚动升级 |
5.0-5.5 | 6.x | 全集群升级 |
< 5.x | 6.x | 重建索引升级 |
6.x | 6.y | 滚动升级(y>x)[b] |
[a] 在升级之前,您必须删除或重新索引在2.x中创建的任何索引。
[b] 从6.0.0之前的GA版本升级需要完整的群集重启。
滚动升级
滚动升级允许Elasticsearch群集一次升级一个节点,因此升级不会中断服务。一旦超过升级期限,在同一集群中运行多个版本的Elasticsearch是不支持的,因为无法将分片从已升级的节点复制到运行旧版本的节点。
滚动升级可以在次要版本之间执行。Elasticsearch 6.x支持Elasticsearch 5.6的滚动升级。从较早的5.x版本升级需要完整的群集重启。您必须重新索引以从5.x之前的版本升级。
1、禁用分片分配
关闭节点时,分配过程会等待一分钟,然后才能将该节点上的分片复制到集群中的其他节点,从而导致大量浪费的I / O资源。在关闭节点之前,可以通过禁用分配来避免耗时的分片分配行为(racing the clock):
curl -X PUT "192.168.200.200:9200/_cluster/settings" -H 'Content-Type: application/json' -d'
{
"persistent": {
"cluster.routing.allocation.enable": "none"
}
}
'
2、停止非必要的索引并执行同步刷新。(可选的)
虽然可以在升级过程中继续建立索引,但是如果临时停止非必要的索引并执行同步刷新,则碎片恢复速度会更快 。
curl -X POST "192.168.200.200:9200/_flush/synced"
执行同步刷新时,请检查响应以确保没有故障失败。由于挂起索引操作而失败的同步刷新操作在响应体中列出,尽管请求本身仍然返回200 OK状态。如果出现故障,请重新发出请求。
3、停用单节点服务
/etc/init.d/elasticsearch stop
4、备份data
根据es配置里面找到data的路径,做好本地备份
4、卸载单节点es服务
yum -y remove elasticsearch-5.5.0*
5、安装5.6.14的es rpm包
[root@test-hiddle-200-200 ~ 19:19:27]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.14.rpm
[root@test-hiddle-200-200 ~ 19:19:27]#rpm -ivh elasticsearch-5.6.14.rpm
[root@test-hiddle-200-200 ~ 19:19:27]#cat /etc/elasticsearch/elasticsearch.yml.rpmsave > /etc/elasticsearch/elasticsearch.yml
[root@test-hiddle-200-200 ~ 19:19:27]#cat /etc/elasticsearch/jvm.options.rpmsave > /etc/elasticsearch/jvm.options
6、启动升级的节点,查看是否加入集群
/etc/init.d/elasticsearch start
curl 192.168.200.200:9200/_cat/nodes
7、重新启用分片分配
curl -X PUT "192.168.200.200:9200/_cluster/settings" -H 'Content-Type: application/json' -d'
{
"persistent": {
"cluster.routing.allocation.enable": "all"
}
}
'
8、等待节点恢复
curl -XGET 192.168.200.200:9200/_cat/health
9、建议安装web管理插件
https://github.com/lmenezes/cerebro
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-upgrade.html#
https://www.elastic.co/guide/en/elasticsearch/reference/current/rolling-upgrades.html
网友评论