ELK-Cluster部署建议

本文详细介绍了ELK(Elasticsearch, Logstash, Kibana)集群的资源配置建议,包括内存、CPU、磁盘、网络、JVM、数据量处理、集群规划等方面。强调了SSD硬盘、RAID 0提升性能、网络要求、JVM堆内存不超过物理内存一半以及合理规划数据量和分片副本的重要性。同时,讨论了避免脑裂问题的策略和集群规模的考量因素。" 136502087,22405961,PHP开发的进销存源码系统详解,"['进销存', 'PHP开发', '企业管理', '流程自动化']

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

在这里插入图片描述

二、资源配置依据
ES特性:

(1)内存
ES非常消耗内存 —— 不是JVM用到的内存, 而是机器的物理内存, 因为ES在运行期间对JVM Heap(堆内存)的需求较小,
实践建议: 数据量过亿, 建议单台服务器的内存至少要有64GB
(2)CPU
ES集群对CPU的要求比较低, 一般来说2~8个CPU Core即可满足集群的需求
(3)磁盘
1)在磁盘的使用上, 推荐使用SSD(固态硬盘), 而不是(HDD)机械硬盘.
2)此外, 使用RAID 0也是一种提升磁盘读写速度的高效方式, 无论是HDD, 或者SSD都支持RAID 0
3)最后, 要避免使用与网络相关的存储模式 (network-attached storage, NAS), 比如基于网络的分布式存储模式

(4)网络
不低于千兆网卡,避免一个集群横跨多个数据中心,
1)ES集群是一种p2p模式的分布式系统架构, 并不是master-slave主从分布式系统.
2)ES集群中, 所有节点都是平等的, 任意两个节点之间的通信都很频繁, 如果部署在异地多机房, 就会导致各个节点之间频繁跨地域通信, 通信时延会非常高, 甚至有可能造成集群运行频繁出现异常.
3)与NAS存储模式一样, 跨地域多机房部署一个ES集群带来的效益要远远低于维护这类集群所付出的额外成本.
(4)集群节点
实践建议: 小规模、高配置, 但无需超高配置, 会造成资源的浪费.
(5)JVM配置
1) 如果通过Java API操作ES服务, 那么编译Java程序的JVM版本最好与ES服务器所运行的JVM版本一致
2)JVM配置官方建议不易修改
ES服务中, JVM Heap堆内存的大小一般不超过服务器物理内存的一半, 以1/4为宜, 且最多不宜超过32GB.

(6)数据量问题
(1) ES的常见使用场景有:
1) 构建业务搜索功能模块, 且多是垂直领域的搜索: 以网站或APP为例, 数据规模相对比较大, 通常是百万级到亿级;
2) 进行数据分析: 需要消耗更大的内存, 但支持的数据规模要小很多, 通常是十万级到千万级;
3) 用于大规模数据的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值