elasticsearch集群优化

本文详述了ES集群的优化方案,包括节点职责划分、禁用交换分区、关闭data节点HTTP功能及内存分配策略。同时介绍了索引优化方法,如取消副本和合并segment,以提升ES集群性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

es集群优化方案:
1.节点职责划分明确:master节点(控制整个集群),数据节点(存储数据),客户端节点(响应用户,转发请求);
2.禁用交换分区:
3.关闭data节点服务器的http功能:
4.内存分配

 

配置详情
1. 节点职责划分
主节点:主要职责是和集群操作相关的内容,如创建或删除索引,跟踪哪些节点是群集的一部分,并决定哪些分片分配给相关的节点。 配置文件定义:node.master: true node.data: false
数据节点:主要是存储索引数据的节点,主要对文档进行增删改查操作,聚合操作等。 配置文件定义:node.master: false node.data: true
客户端节点:处理路由请求,处理搜索,分发索引操作等,从本质上来讲客户节点表现为智能负载平衡器。配置文件定义:node.master: false node.data: false

2. 禁用交换分区
临时禁用:
swapoff -a
降低操作系统交换内存的频率:
在/etc/sysctl.conf中配置:vm.swappiness = 1
配置JVM锁住内存:
在elasticsearch.yml配置: bootstrap.mlockall: true

3.关闭data节点服务器的http功能
针对ElasticSearch集群中的所有数据节点,不用开启http服务。将其中的配置 参数这样设置:http.enabled: false。
同时不要安装head, bigdesk, marvel等监控插件,保证data节点服务器只需处理创建/更新/删除/查询索引数据等操作。

4.内存分配
配置机器50%的内存给elasticsearch,预留一半内存给Lucene使用。 修改配置文件/etc/elasticsearch/jvm.options。

 

索引优化策略
1.取消replica
curl -XPUT -u$es_user:$es_passwd http://localhost:9200/$index_name/_settings -d '
{
"index" : {
"number_of_replicas" : 0
}
}'
#注意替换变量index_name,es_user,es_passwd
2.合并segment
curl -XPOST -u$es_user:$es_passwd "http://localhost:9200/$index_name/_forcemerge?max_num_segments=1"

转载于:https://www.cnblogs.com/imcati/p/9774505.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值