vim /etc/security/limits.conf
- elasticsearch soft nofile 65535
- elasticsearch hard nofile 65535
- elasticsearch soft memlock unlimited
- elasticsearch hard memlock unlimited
3)为了使以上参数永久生效,还要设置两个地方:
- vim /etc/pam.d/common-session-noninteractive
- vim /etc/pam.d/common-session
添加如下属性:
- session required pam_limits.so
可能需重启后生效。
Elasticsearch中的JVM配置文件
-Xms2g
-Xmx2g
- 将最小堆大小(Xms)和最大堆大小(Xmx)设置为彼此相等。
- Elasticsearch可用的堆越多,可用于缓存的内存就越多。但请注意,太多的堆可能会使您长时间垃圾收集暂停。
- 设置Xmx为不超过物理RAM的50%,以确保有足够的物理内存留给内核文件系统缓存。
- 不要设置Xmx为JVM用于压缩对象指针的临界值以上;确切的截止值有所不同,但接近32 GB。不要超过32G,如果空间大,多跑几个实例,不要让一个实例太大内存。
Elasticsearch配置文件优化参数:
1)vim elasticsearch.yml
- bootstrap.memory_lock: true #锁住内存,不使用swap
- #缓存、线程等优化如下
- bootstrap.mlockall: true
- transport.tcp.compress: true
- indices.fielddata.cache.size: 40%
- indices.cache.filter.size: 30%
- indices.cache.filter.terms.size: 1024mb
- threadpool:
- search:
- type: cached
- size: 100
- queue_size: 2000
2)设置环境变量
vim /etc/profile.d/elasticsearch.sh export ES_HE AP _SIZE=2g #Heap Size不超过物理内存的一半,且小于32G。
集群的优化(我未使用集群):
- ES是分布式存储,当设置同样的cluster.name后会自动发现并加入集群;
- 集群会自动选举一个master,当master宕机后重新选举;
- 为防止"脑裂",集群中个数最好为奇数个;
- 为有效管理节点,可关闭广播discovery. zen.ping.multicast.enabled: false,并设置单播节点组discovery.zen.ping.unicast.hosts: ["ip1", "ip2", "ip3"]。
6、性能的检查
检查输入和输出的性能:
Logstash和其连接的服务运行速度一致,它可以和输入、输出的速度一样快。
检查系统参数:
1)CPU
- 注意CPU是否过载。在Linux/Unix系统中可以使用top-H查看进程参数以及总计。
- 如果CPU使用过高,直接跳到检查JVM堆的章节并检查Logstash worker设置。
2)Memory
- 注意Logstash是运行在Java虚拟机中的,所以它只会用到你分配给它的最大内存。
- 检查其他应用使用大量内存的情况,这将造成Logstash使用硬盘swap,这种情况会在应用占用内存超出物理内存范围时。
3)I/O监控磁盘I/O检查磁盘饱和度
- 使用Logstash plugin(例如使用文件输出)磁盘会发生饱和。
- 当发生大量错误,Logstash生成大量错误日志时磁盘也会发生饱和。
- 在Linux中,可使用iostat,dstat或者其他命令监控磁盘I/O。
4)监控网络I/O
- 当使用大量网络操作的input、output时,会导致网络饱和。
- 在Linux中可使用dstat或iftop监控网络情况。
检查JVM heap:
- heap设置太小会导致CPU使用率过高,这是因为JVM的垃圾回收机制导致的。
- 一个快速检查该设置的方法是将heap设置为两倍大小然后检测性能改进。不要将heap设置超过物理内存大小,保留至少1G内存给操作系统和其他进程。
- 你可以使用类似jmap命令行或VisualVM更加精确的计算JVM heap。
【编辑推荐】 - Unix操作系统病毒之ELK CLONER
- 如何在CentOS 7上安装Redis服务器
- 深入了解一下Redis的内存模型!
- 基于Redis+MySQL+MongoDB存储架构应用
- NoSQL数据库服务之Redis
【责任编辑:武晓燕 TEL:(010)68476606】
点赞 0
(编辑:ASP站长网)
|