elasticsearch学习指引

什么是elasticsearch?

elasticsearch是一个分布式的开源搜索和分析引擎。它速度快,搜索功能强大,常用于数据量大,需求复杂的搜索场景。非常适合大型商城的搜索。
更多介绍请看官方介绍文档:
https://www.elastic.co/cn/wha...
https://www.elastic.co/guide/...

怎么安装?

elasticsearch的安装非常简单,只需要下载,解压就行了。
1 下载并解压包

官网下载地址: elastic.co/downloads/elasticsearch

2 cd到解压的elasticsearch目录

3 运行(启动):

./bin/elasticsearch

如果希望关闭终端后elasticsearch仍然运行可以添加 -d 参数:

./bin/elasticsearch -d

elasticsearch学习指引_第1张图片
4 测试是否成功启动
新开一个终端运行:

curl 127.0.0.1:9200

返回一个json数据则说明启动成功了。
elasticsearch学习指引_第2张图片

5 如果启动其他机器也能访问此服务,需要修改elasticsearch.yml文件(在安装目录的config文件夹中),添加如下代码

network.host: 0.0.0.0

然后重新启动就可以了

安装过程可能遇到的问题及处理方法

elasticsearch学习指引_第3张图片

解决:先执行命令 free -m 查看内存是不是还有 最主要的是 看有没有交换空间 swap (这很重要)如果没有交换空间 或者交换空间比较小 要先安装交换空间 或者增大空间

  • 创建swapfile:dd if=/dev/zero of=swapfile bs=1024 count=500000
  • 将swapfile设置为swap空间(第二步:把这个文件变成swap文件)

mkswap swapfile

  • 启用交换空间(第三步:启用这个swap文件)

swapon swapfile (删除交换空间是swapoff swapfile)至此增加交换空间的操作结束了。

可以使用free命令查看swap空间大小是否发生变化;

https://blog.csdn.net/weixin_44105991/article/details/91320644

问题二:直接被Killed
image.png

原因:可能是内存不够了

解决:修改ES中config目录下的jvm.options文件vim jvm.options 将

-Xms1g
-Xmx1g

改为

-Xms512m
-Xmx512m

问题三:can not run elasticsearch as root

elasticsearch学习指引_第4张图片

解决:

原文:https://www.cnblogs.com/gcgc/p/10297563.html

1、创建用户:elsearch

[root@iZbp1bb2egi7w0ueys548pZ bin]# adduser elsearch

  2、创建用户密码,需要输入两次

[root@iZbp1bb2egi7w0ueys548pZ bin]# passwd elsearch

  3、将对应的文件夹权限赋给该用户

[root@iZbp1bb2egi7w0ueys548pZ local]# chown -R elsearch elasticsearch-7.7.0

  4、切换至elsearch用户

[root@iZbp1bb2egi7w0ueys548pZ etc]# su elsearch

  5、进入启动目录启动 /usr/local/elasticsearch-6.0.0/bin  使用后台启动方式:./elasticsearch -d

[elasticsearch@vmt10003 bin]$ ./elasticsearch -d

  6、启动后测试

  输入curl ip:9200,如果返回一个json数据说明启动成功

这里创建了个新用户 elsearch 密码:12345abc321

  启动后访问ip:9200没有显示json

[root@iZbp1bb2egi7w0ueys548qZ ~]# curl 10.132.131.51:9200 curl: (7) Failed connect to 10.132.131.51:9200; Connection refused

  解决:修改elasticsearch.yml文件,添加

network.host: 0.0.0.0

  再次启动就可以了

错误5:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

elasticsearch启动时遇到的错误

问题翻译过来就是:elasticsearch用户拥有的内存权限太小,至少需要262144;

解决:切换到root用户,执行命令:

sysctl -w vm.max_map_count=262144

查看结果:

sysctl -a|grep vm.max_map_count

显示:

vm.max_map_count = 262144

上述方法修改之后,如果重启虚拟机将失效,所以:

解决办法:

在   /etc/sysctl.conf文件最后添加一行

vm.max_map_count=262144

即可永久修改

错误6:

ERROR: [1] bootstrap checks failed

[1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
原文:https://blog.csdn.net/happyzx...
解决:修改elasticsearch.yml,取消注释(保留一个节点)

cluster.initial_master_nodes: ["node-1"]

你可能感兴趣的:(elasticsearch)