在Elasticsearch 5.6.6中下载程序包。
tar -zxvf elasticsearch-5.6.6.tar.gz
ln -s elasticsearch-5.6.6 elasticsearch
groupadd elk
useradd elk -g elk
chown -R elk:elk /application/elasticsearch-5.6.6
chown -R elk:elk /application/elasticsearch
将/application/elasticsearch/plugins中的文件复制过来

将/application/elasticsearch/config中x-pack也复制过来
将/application/elasticsearch/bin中x-pack复制过来
注意权限:
chown -R elk:elk /application/elasticsearch/config/x-pack
chown -R elk:elk /application/elasticsearch/logs
chown -R elk:elk /application/elasticsearchplugins
启动后,提示
[2019-04-18T10:58:25,586][ERROR][o.e.b.Bootstrap ] [bwhs199] node validation exception
[2] bootstrap checks failed
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
执行下面的命令,重启
vi /etc/sysctl.conf
# 添加
vm.max_map_count=655360
#再执行此命令
sysctl -p
vi /etc/security/limits.conf
# 添加下面两行
* hard nofile 65536
* soft nofile 65536
在当前es节点,添加自身的host,执行./elasticsearch -d即可

接着就可以在kibana中看到es动态平衡后的效果,shard的调整由es自身的平衡机制控制,es其他节点根本不需要重启

从下图可以看出个索引数据已经在写入了

按照上面的操作,es平均分配后,会带来一个问题.如果有一个磁盘比较小,他也会分配同样多的shard,导致很快磁盘出现报警。只是平衡分区,这样节点都一样,很容易扩展和维护

好吧,我妥协,再挂在一个磁盘把,虽然配置很简单,但是更改配置后,怎么平滑重启es呢?
chown -R elk:elk /appdata/elasticsearch/data

查看官方文档Rolling upgrades,以及elasticsearch如何安全重启节点
1、停止分区
PUT _cluster/settings
{
"transient": {
"cluster.routing.allocation.enable": "none"
}
}
2、停止需要升级的节点
注意curl -XPOST http://10.101.3.199:9200/_cluster/nodes/_local/_shutdown这个已经作废了。
ps -ef|grep elasticsearch
kill -9 xxx(pid)
3、启动需要升级的节点
sudo su -
su - elk
cd /application/elasticsearch/bin
./elasticsearch -d
4、恢复分区分配
执行GET _cat/nodes查看节点是否起来,执行GET _cluster/health查看集群是否监控,如果没有问题,再恢复分区,这样就可以了。
PUT _cluster/settings
{
"transient": {
"cluster.routing.allocation.enable": "all"
}
}
这个分配操作消耗大量的计算资源

本文详细介绍了Elasticsearch5.6.6的部署步骤,包括程序包下载、权限设置、配置调整及系统参数优化。同时,针对节点重启时的数据平衡问题,提供了具体的平滑重启策略,确保了数据的一致性和系统的稳定性。

被折叠的 条评论
为什么被折叠?



