ES的配置常见错误信息

ES的配置错误信息
1.1.org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
也就是说ES不能使用root用户运行,因为root叫做超级管理员,权限太大,在运行期间可能会去篡改ES的配置信息
解决方案:
需要创建一个新的用户来运行ES
useradd esuser
passwd 123456
虽然已经把esuser这个用户创建完毕了,但是data目录是root用户进行创建,包括es压缩包都是root用户进行上传的
所以必须要给esuser进行授权
chown -R esuser /home/apps/es…

	**1.2.java.lang.UnsupportedOperationException: seccomp unavailable: CONFIG_SECCOMP not compiled into kernel, CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER are needed**
		在centos7.x版本中会默认自带CONFIG_SECCOMP_FILTER过滤器,但是centos6.x没有这个过滤器
		因为ES在启动中默认就是会去加载CONFIG_SECCOMP_FILTER过滤器,但是centos6.x中没有这个过滤器,所以报错,让ES启动的时候不加载这个过滤器即可(当然也可以换系统)
		需要在es的配置文件中添加一行:
			bootstrap.system_call_filter: false
			
	**1.3.max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]**
		因为Linux的自我保护机制(Linux本身自己运行也需要消耗硬盘和内存,不可能把所有的内存和硬盘都给客户的软件使用,所以会限制用户所上传上来的一些软件)
		最大给了ES是4096,但是ES不能满足,需要最少增加到65536
		解决方案:
			vim /etc/security/limits.conf(推荐直接复制粘贴,如果写不好容易造成服务器崩溃)
			* soft nproc 655350
			* soft nofile 655350
			* hard nproc 655350
			* hard nofile 655350
			* 
	**1.4.max number of threads [1024] for user [esuser] is too low, increase to at least [4096]**
		也就是说ES所需要运行的最大线程数是4096,但是Linux默认只给es用户分配了1024,对于es用户来说不够用
		解决方案:
			vim /etc/security/limits.d/90-nproc.conf
			*          soft    nproc     1024---->4096
			root       soft    nproc     unlimited
			
	**1.5.max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]**
		linux给ES的虚拟内存太小了,不足以ES正常运转(因为ES的所有的数据都在内存中)
		解决方案:
			vim /etc/sysctl.conf
			跳转到文件的末尾
			vm.max_map_count=262144
	以上的bug解决完毕之后,再次运行还是不行,需要让这些配置立即生效
	sysctl -p
	**1.6.Exception in thread "main" java.nio.file.AccessDeniedException: /home/apps/elasticsearch-6.4.0/config/jvm.options**
		因为曾经使用root用户启动过,当ES一旦启动,无论是否成功,都会把这些数据信息或者日志信息存放在data/logs目录中,因为root用户权限实在太大了,esuser用户并没有权限去访问它,这个时候当esuser需要去读取data目录中数据的时候没有权限,所以直接报错
		解决方案:
			所以在这并不能授权,需要删除data目录中所有文件夹/文件
			然后再次切换esuser来进行启动即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值