当前位置: 首页>数据库>正文

es 查看bulk线程池 elasticsearch线程数配置

  1. 下载最新版ElasticSearch。 下载地址:https://www.elastic.co/cn/downloads/。并上传到CentOS上的/usr/local目录下。
  2. 解压刚刚下载的ElasticSearch的压缩包
tar -zxf elasticsearch-7.12.0-linux-x86_64.tar.gz
  1. 修改Linux系统的限制配置

a. 修改系统中允许应用最多创建多少文件等的限制权限。Linux默认来说,一般限制应用最多创建的文件是65535个。但是ES至少需要65536的文件创建权限。
b. 修改系统中允许用户启动的进程开启多少个线程。默认的Linux限制root用户开启的进程可以开启任意数量的线程,其他用户开启的进程可以开启1024个线程。必须修改限制数为4096+。因为ES至少需要4096的线程池预备。ES在5.x版本之后,强制要求在linux中不能使用root用户启动ES进程。所以必须使用其他用户启动ES进程才可以。
c. Linux低版本内核为线程分配的内存是128K。4.x版本的内核分配的内存更大。如果虚拟机的内存是1G,最多只能开启3000+个线程数。至少为虚拟机分配1.5G以上的内存。

vim /etc/security/limits.conf
es soft nofile 65536 
es hard nofile 65536
es soft nproc  4096
es hard nproc  4096
  1. 修改系统控制权限

a. 修改管理系统中的各种资源控制的配置文件。
b. ElasticSearch需要开辟一个65536字节以上空间的虚拟内存。Linux默认不允许任何用户和应用程序直接开辟这么大的虚拟内存

vim /etc/sysctl.conf
#当前用户拥有的内存权限太小
vm.max_map_count=262144
#减小内存交换
vm.swappiness=1
#让系统控制权限配置生效
sysctl -p
  1. 新建一个用户, 用于ElasticSearch启动(ElasticSearch5及以上版本,基于安全考虑,强制规定不能以root身份运行。)
#创建用户
useradd  es
#修改上述用户的密码
passwd es 
#修改elasicsearch目录的拥有者
chown -R es elasticsearch-7.6.2/
chown -R es /data/es (存放es数据的目录,任意位置,没有可以创建: mkdir -p /data/es )
  1. 修改elasticsearch.yml文件

参数说明:
cluster.name 集群名称,相同名称为一个集群
node.name 节点名称,集群模式下每个节点名称唯一
path.data 索引数据存放的位置
path.logs 日志文件存放的位置
bootstrap.memory_lock 需求锁住物理内存,避免操作系统的内存Swaping,是:true、否:false
network.host 可填写本机IP地址。填写非回路IP表示生产环境,否则就是开发环境。
http.port es对外提供的http端口,默认 9200
discovery.seed_hosts 集群中的其他地址,如果是域名,则会解析这个域名关联的所有IP地址
cluster.initial_master_nodes es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
index.mapper.dynamic : false 全局关闭dynamic mapping

示例:

cluster.name: es
node.name: node-1
network.host: 192.168.X.X

cluster.initial_master_nodes: ["node-1","..."]
discovery.seed_hosts: ["192.168.X.X","..."]

path.data: /data/es/data
path.logs: /data/es/logs

http.port: 9200
  1. 修改jvm.options文件,配置JVM的大小,建议是机器物理内存的一半,并且将最小和最大堆内存设置一样。
  2. es 查看bulk线程池 elasticsearch线程数配置,es 查看bulk线程池 elasticsearch线程数配置_IP,第1张

  3. 添加-Dlog4j2.enable.threadlocals=false选项,避免ElasticSearch中的log4j使用threadlocals记录异常,从而有效避免大量且频繁的Bulk操作异常时,造成ElasticSearch内存泄露的问题。
  4. es 查看bulk线程池 elasticsearch线程数配置,es 查看bulk线程池 elasticsearch线程数配置_IP_02,第2张

  5. 启动ElasticSearch
#切换用户
su es
#到ElasticSearch的bin目录下
cd bin/
./elasticsearch
#后台启动
./elasticsearch -d
  1. 验证是否运行成功
用浏览器打开:http://ip:9200.若能出现下图结果, 则表示启动成功。(需要打开监听端口 9200或关闭防火墙 )

es 查看bulk线程池 elasticsearch线程数配置,es 查看bulk线程池 elasticsearch线程数配置_IP_03,第3张



https://www.xamrdz.com/database/6sz1963408.html

相关文章: