Elasticsearch 7.0python
Elasticsearch 7.0 使用时遇到的坑
您好,接下来我会为你们整理一下,本人在使用Elasticsearch 7.0 时遇到一些坑,但愿对您有帮助。vim
Linux下安装 Elasticsearch遇到的问题
基本安装和配置我就不说了,网上百度一大推。接下来我描述一下问题安全
- 启动报错问题
当你在启动Elasticsearch 时遇到跟上图同样的报错信息时,先别慌。这不是什么大问题,而是Elasticsearch 在从5.0版本开始后由于安全缘由,就不在容许 支持root 帐户去启动,因此你须要手动建立一个帐户,而后再去启动 就OK 了。
解决办法:
接下来,您只须要按照循序复制 粘贴 执行就好了
adduser 用户名(例:esroot)
passwd 用户名(就是你刚刚设置的用户名,我上面设置是esroot,因此这个地方
就是esroot)
app
执行完passwd 后,系统会让你设置密码,你设置密码就好了。ide
而后,改一下es目录所属用户:
chown esroot(这个就是你刚刚输入的用户名) 你的Elasticsearch安装路径 -R
spa
再而后,
vim /etc/security/limits.conf,再这个文件末尾加上
esroot soft nofile 65536
esroot hard nofile 65536
esroot soft nproc 4096
esroot hard nproc 4096
编辑完后,保存 退出
3d
继续,去编辑另外一个文件,将里面的 * 改成你刚刚设置的用户名(esroot)
vim /etc/security/limits.d/20-nproc.conf
code
#Default limit for number of user’s processes to prevent
#accidental fork bombs.
#See rhbz #432903 for reasoning.
esroot soft nproc 4096
root soft nproc unlimited
编辑完成,保存 退出
blog
再编辑最好一个文件,
vim /etc/sysctl.conf,在末尾加上:
vm.max_map_count = 655360
编辑完成,保存 退出
图片
而后执行,sysctl -p
当输出:
kernel.printk = 5
…
…
…
vm.max_map_count = 655360
表明一切配置完成,没有错误
接下来,只须要 su esroot 切换一下用户,而后再去启动Elasticsearch 就行。
Kibana 操做Elasticsearch 增、删、改、查问题
- 自定义mapping 问题
做者,在使用 Elasticsearch 7.0时发现,在自定义 mapping 时,Elasticsearch 7.0 默认是不支持 设置类型的,接下来请看代码。
PUT m1 { "mappings": { "doc":{ "properties":{ "address" : { "type" : "keyword", "index" : false } } } } }
上图是我的在自定义mappings 文件时,经常使用的写法,可是在Elasticsearch 7.0 执行是会报错的。
后来,做者在各类百度 各类 去看文档后才知道 Elasticsearch 7.0 默认是不支持设置数据类型的。正确的写法以下图
可是,若是各位非要去自定义 这个类型的话,Elasticsearch 7.0是能够支持设置,可是具体的设置方式,做者也没在官网文档上找到,可能做者毕竟笨把。还有一点须要注意就是,Elasticsearch 7.0 也再也不支持 “enabled”:true 的设置了。
- GET 查询
正常来讲,咱们查询时会常常这样去查询。
虽然这样也能拿到数据,可是会看到右边 进行了报警了,它在警告咱们在查询的时候 不要把类型也写进去,因此正常的查询方式以下图:
- 默认返回 1W的问题
其实这个问题,真的让做者困惑了好久。在网上找了不少的方法,毕竟去配置settings 或者 去修改 Elasticsearch 的配置文件,可依旧都没有成功。
后来,终于找到一种方法就是
在查询里添加这个就能够了,做者在网上看到说 添加这个会让数据不许确,不过做者在使用时,好像没出现这个,具体什么缘由,做者也不太懂。
以上就是做者在使用Elasticsearch 7.0 时,遇到的所有问题,后期在遇到的话,也会分享出来。但愿此次文档对您在使用Elasticsearch 7.0 能有很大的帮助。