在默认情况下,es认为你运行在开发环境,有些设置没有正确设置,则会记录一条提醒的日志。但是一旦你设置了network.host这样的高级设置,es则认为你运行在生产环境了,上面的提醒则会变成异常抛出。
系统设置
设置最大文件打开数目
/etc/security/limits.conf 添加
elasticsearch - nofile 65536
设置jvm堆内存
默认在jvm.options文件中设置jvm为2g内存。对于生产环境尽量重新设置内存占用大小。
1最小堆内存和最大堆内存要一致(否则在内存扩容会出现灾难性的等待)
2堆内存设置越大,则缓存的数据就越大,同样垃圾回收也会越耗时
3堆内存设置要少于机器总内存的一半,确保有足够内存就给系统使用
4注意内存设置上限。一般上限在32GB附近。具体可以查看日志(heap size [1.9gb], compressed ordinary object pointers [true])
5在大部分系统中内存使用小于26G是安全,当然在某些系统也可以使用30G,你可以确认你使用的内存在安全线之下,你可以在jvm参数中添加
-XX:+UnlockDiagnosticVMOptions -XX:+PrintCompressedOopsMode
并且查找一条日志
heap address: 0x000000011be00000, size: 27648 MB, zero based Compressed Oops
如果出现如下日志则说明内存设置过大
heap address: 0x0000000118400000, size: 28672 MB, Compressed Oops with base: 0x00000001183ff000
禁止交换空间
使用内存交换空间会导致垃圾回收时间长达分钟,并且导致请求变慢,甚至与集群失去连接。所以尽量要避免其出现。
第一种方法:
在文件
config/elasticsearch.yml
中设置
bootstrap.memory_lock: true
启动之后可以通过请求
GET _nodes?filter_path=**.mlockall
来验证。如果mlockall是false,则说明设置失败,你可能需要看更多的日志查看失败原因。
对于大部分linux系统来说失败的主要原因是权限不够
对于zip,tar.gz解压缩文件可以在启动es前设置ulimit -l unlimited或者在文件/etc/security/limits.conf中设置memlock为unlimited
另一个原因可能是临时文件夹(/tmp)不具有执行权限,建议直接更换临时目录
第二种方法:
可以通过
sudo swapoff -a
临时禁止交换空间,或者编辑
/etc/fstab
注释掉所有有
swap
的行来永久禁止。
window则
Properties → Advanced → Performance → Advanced → Virtual memory
。
第三种方式
在linux中确认sysctl中的vm.swappiness值为1.在正常情况下减少核心对交换空间使用的倾向,但是在紧急情况下还是会使用
文件描述符
对于linux和mac os来说需要设置文件操作符至少65536,如果是zip或者tar.gz包则需要在es启动前使用root设置ulimit -n 65536 或者设置nofile为65536.
查看es的最大文件操作符
GET _nodes/stats/process?filter_path=**.max_file_descriptors
虚拟内存
es使用mmapfs来保存索引,但是默认的内存映射的数量太小,所以会导致内存溢出。在linux需要使用root账号执行
sysctl -w vm.max_map_count=262144
。如果想永久修改则修改文件/etc/sysctl.conf中的vm.max_map_count的值。重启后执行sysctl vm.max_map_count来验证成功
线程数
确认es可以创建至少2048个线程。启动es前使用root账号执行ulimit -u 2048,或者在文件/etc/security/limits.conf设置nproc为2048。
分享到:
相关推荐
IEC 61375-2-5-2014作为TCN标准的重要组成部分,对于确保列车通信系统的高效运行和兼容性具有重要意义。通过对以太网列车骨干的具体技术要求和测试方法的规定,该标准不仅促进了列车通信网络技术的发展,也为列车...
5. **调试与测试**:设置完成后,可以通过软件进行动态调试,比如运行电机,观察其运行状态,如速度、位置误差等。如果出现异常,可依据反馈调整相关参数,直至达到满意的运行效果。 6. **保存与下载**:调试满意后...
这使得 iLO2 成为了服务器管理的重要工具。 #### 三、使用 iLO2 安装 Windows Server 2008 操作系统 ##### 3.1 准备工作 1. **iLO2 管理接口访问:** - 确保已连接至 iLO2 接口,并能够通过 Web 浏览器登录。 -...
本文将深入解析与"S-1-5-21"相关的权限问题及其解决方案,基于Windows系统从XP升级到Win7后的具体实例。 ### S-1-5-21:SID(安全标识符) "S-1-5-21"是一个安全标识符(SID),它用于标识一个域或一个用户/组。在...
2. **启动目标系统**:通过BIOS设置让系统从安装介质启动。 3. **选择安装选项**:根据需求选择合适的安装类型,如最小安装、完全安装等。 4. **配置网络**:设置网络参数,包括IP地址、子网掩码、默认网关等。 5. *...
2. 系统防火墙设置:确保开放必要的端口,以便Greenplum数据库实例间的通信。 3. 数据安全:在生产环境中,务必设置好权限和访问控制,防止未授权访问。 总结,Greenplum数据库4.2.2.4的安装涉及多个步骤,包括系统...
三菱通讯NZ2MFB1-32DT是一款用于CC-Link IE Field Basic网络的远程模块,适用于三菱FX5U PLC系统,扩展了PLC的I/O点数和距离。CC-Link IE Field Basic是一种基于以太网的现场网络技术,用于连接控制器与远程I/O、...
在IT行业中,嵌入式开发是一项重要的工作领域,而MCD2--ICD2仿真调试器则是其中不可或缺的工具。本文将深入探讨MCD2--ICD2仿真调试器及其USB驱动程序,帮助用户理解其功能、作用以及如何正确安装和使用。 MCD2--ICD...
JAVA-OPTS 变量的设置对 Java 应用程序的性能和稳定性具有重要影响。 在设置 JAVA-OPTS 变量时,需要注意以下几个方面: 1. -server:这个参数一定要作为第一个参数,否则可能会导致性能下降。在多个 CPU 时性能佳...
在使用扫描枪进行工作时,以上知识点涵盖了从设备的基本使用、系统设置到无线通讯配置及条码数据格式和参数的具体设置。每个操作环节都应严格遵循用户手册的指导以保障设备的正常运行。由于扫描枪在许多行业中都被...
Oracle Database Server...总结一下,Oracle Database Server 12cR2 Preinstall是Oracle数据库在Linux环境中快速、高效部署的重要工具,它简化了系统准备阶段,确保了安装的顺利进行,是企业级数据库管理者的得力助手。
在Linux操作系统中,网络通信管理和系统服务管理是两个至关重要的方面。通过熟练掌握相关的命令,可以有效地监控和调整系统的网络连接以及服务运行状态。以下是对实验报告中涉及的知识点的详细解释: 1. **网络管理...
5. 保存设置并启动仿真。 电机start server是另一个关键功能,它允许用户模拟PLC控制电机的过程。在实际的工业应用中,PLC通过各种输入/输出(I/O)信号与电机等设备交互,控制它们的启动、停止、速度等参数。在...
AIX操作系统中,有一个重要的安全机制,即自动断开时间设置。该机制可以限制用户的登录时间,从而提高系统的安全性。本文将详细介绍AIX会员自动断开时间设置的配置方法。 什么是自动断开时间设置? ---------------...
7. 等待安装过程完成,包括系统设置、驱动程序安装等步骤。 8. 安装完成后,根据提示设置操作系统的基本信息,如用户名、密码和网络设置。 至此,DELL R720服务器的RAID-5阵列配置和Windows Server 2008 R2的安装就...
- **概述**:简要介绍系统设置的重要性,以及进行设置的基本步骤。 - **授权信息**:涉及软件的合法使用,包括获取和管理授权密钥,确保系统能够正常启动和更新。 7. **通用设置**:涵盖适用于多种场景的系统...
- **重要性**:在高负载系统中,合理设置此参数非常重要。如果设置得太低,在某些情况下可能会导致刚创建的连接立即被关闭。这是因为活跃线程关闭连接的速度超过了打开连接线程的速度,导致空闲连接数超出`maxIdle`...
综上所述,《YD-T 1775-2008 基于用户设置规则的短消息过滤系统技术要求》是一项重要的通信标准,它推动了短信过滤技术的发展,为用户提供了一个更加安全、个性化的信息环境。通过理解和遵循这一标准,相关企业和...
- 配置barnyard2,修改配置文件如`barnyard2.conf`,设置Snort日志路径、输出目的地等参数。 - 启动barnyard2服务,监控Snort日志。 4. 使用案例 - 实时警报:通过将barnyard2连接到UDP服务器,可以快速将警报...