image.png Elasticsearch介绍
Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。 作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。
环境
安装Elasticsearch 7.12.1
官网下载地址:www.elastic.co/cn/download…
选择LINUX X86_64:
下载后上传到服务器上,然后解压:
1 | shell复制代码tar -zxvf elasticsearch-7.12.1-linux-x86_64.tar.gz |
创建Linux用户
如果已有除root外的其他用户,则跳过此步骤。
由于Elasticsearch默认不支持通过root用户直接启动,所以需要创建用户,例如我的用户elastic。
然后对用户授权:
1 | shell复制代码chown -R elastic /usr/local/software/elasticsearch-7.12.1-linux-x86_64 |
Linux下用户的基本操作:
1 | shell复制代码// 创建用户testuser |
配置远程访问
编辑conf/elasticsearch.yml
1、修改 network.host 为 0.0.0.0
1 | yml复制代码network.host: 0.0.0.0 |
2、修改cluster.initial_master_nodes为当前node,默认为注释,放开注释就行了
1 | yml复制代码cluster.initial_master_nodes: ["node-1", "node-2"] |
启动Elasticsearch
切换到非root用户,例如我自己创建的elastic用户
1 | shell复制代码su elastic |
进入elasticsearch-7.12.1/bin目录,执行
1 | shell复制代码./elasticsearch |
如果看到started,则表示启动成功
访问 http://localhost:9200/ (Elasticsearch的默认端口号是9200)
1 | shell复制代码curl http://localhost:9200/ |
返回信息中包含了elasticsearch的版本号和lucene的版本号。
注册服务,设置开机自启动
注册服务
1 | shell复制代码vim /usr/lib/systemd/system/elasticsearch.service |
填入以下信息
1 | plain复制代码[Unit] |
刷新elasticsearch.service配置信息
1 | shell复制代码systemctl daemon-reload |
设置开机启动
1 | shell复制代码systemctl enable elasticsearch.service |
当返回类似Created symlink from /etc/systemd/system/multi-user.target.wants/elasticsearch.service to /usr/lib/systemd/system/elasticsearch.service.的消息时,代表注册成功!
使用systemctl管理elasticsearch.service的相关命令
1 | shell复制代码# 启动服务 |
遇到错误及解决方法
root用户无法启动ElasticSearch
使用root用户启动报错:
1 | java复制代码[2021-05-19T15:01:54,427][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [izwz962mggaels00gkk8ftz] uncaught exception in thread [main] |
切换其他用户后启动成功:
1 | shell复制代码[root@xxx bin]# su elastic |
参考:《ElasticSearch下用root用户无法启动问题解决》
服务器可用内存没有达到es虚拟机所需内存的默认值
使用非root账号,确保文件夹权限无误后,无法正常启动,命令行提示killed,如下:
1 | shell复制代码[elastic@xxx bin]$ ./elasticsearch |
阅读Elasticsearch官网文档后,在配置目录(/usr/local/software/elasticsearch-7.12.1/config/jvm.options.d)下添加自定义的.options文件(例如:我自己创建了jvm-heap-size.options),然后在.options文件中写入以下内容:
1 | options复制代码-Xms256m |
然后我们重新启动ElasticSearch,会发现已经能够正常启动了。
其他启动报错问题请看《Elasticsearch7.X配置远程访问》
参考文章
《Linux安装Elasticsearch并注册服务 开机自启》
本文转载自: 掘金