Elasticsearch-7.5.0 应用搭建实战

Docker部署Elasticsearch的“那些事儿"

1.基础先决条件

阿里云或者虚拟机VM主机一个,并且自行装有Docker容器: BWUuHU.png

ps[⚠️注意事项]: 对于Docker安装请参考:Linux环境基于CentOS7 搭建部署Docker容器

2.最大文件打开数

[2.1]参数优化:ulimit -a |grep open

[root@centos-meteor ~]# ulimit -a |grep open
open files   (-n) 65535
[root@centos-meteor ~]# 

[2.2] 修改配置文件: /etc/security/limits.conf

#在最下边添加如下两行
* soft nofile 65536
* hard nofile 65536
* soft nproc 2048
* hard nproc 4096

[2.3] 确认是否修改: ulimit -a |grep open

[root@centos-meteor ~]# ulimit -a |grep open
open files   (-n) 65535
[root@centos-meteor ~]# 

3.调整系统进程数

修改方法:vim /etc/security/limits.d/20-nproc.conf

#调整成以下配置
*          soft    nproc     4096
root       soft    nproc     unlimited

4.调整虚拟内存和最大并发连接数

虚拟内存(Virtual memory)->vm.max_map_count Elasticsearch默认使用 hybrid mmapfs / niofs 目录来存储索引。默认操作系统对mmap计数的限制太低,可能引发内存不足的异常

[1]临时解决方法:

sysctl –w vm.max_map_count=262144
sysctl –w vm.max_map_count=262144

如果不优化会出现启动Elasticsearch的时候会出现如下提示:

max virtual memory areas vm.max_map_count [65535] is too low, increase to at least [262144]

[2]永久生效方案:更新系统文件/etc/sysctl.conf的vm.max_map_count字段 执行命令:vim /etc/sysctl.conf

[root@turbo-master ~]# vim /etc/sysctl.conf
[root@turbo-master ~]#
#Settings Elasticsearch Virtual Memory—>655360
vm.max_map_count=655360
fs.file-max=655360
vm.overcommit_memory=1

加载到系统:sysctl -p --load /etc/sysctl.conf

[root@centos-meteor elasticsearch]# sysctl -p --load /etc/sysctl.conf
vm.swappiness = 0
net.ipv4.neigh.default.gc_stale_time = 120
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_synack_retries = 2
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
kernel.sysrq = 1
vm.max_map_count = 655360
fs.file-max = 655360
vm.overcommit_memory = 1
[root@centos-meteor elasticsearch]#

5.关闭elasticsearch自检测

在elasticsearch.yml中添加配置项:

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

ps[⚠️注意事项]: 主要是避免以下问题: [1]最大文件打开数: max file descriptors [1024] for elasticsearch process is too low, increase to at least [65536] [2]调整虚拟内存和最大并发连接数: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] [3]关闭elasticsearch自检测: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk [4]调整系统进程数: max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

实战部署ElasticSearch服务

Docker 部署应用服务的基本步骤:Search[查询镜像]->Pull[拉取镜像]->Run[部署镜像]

1.查询Elasticsearch 镜像:

<
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值