共计 1644 个字符,预计需要花费 5 分钟才能阅读完成。
导读 | ElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 |
直接进入 elasticsearch 的官网,下载最新的安装包:https://www.elastic.co/downloads/elasticsearch,此教程使用的是 5.1.1 版本。
将下载的安装包上传到 centos,或者直接在 centos 使用 wget 命令下载。
unzip elasticsearch-5.1.1.zip
要安装 elasticsearch 官方建议使用 jdk1.8 的版本,所以先安装并部署好 jdk,关于 jdk 的部署参考网上其他资料。
cd bin
./elasticsearch
可能会出现错误,下面列出常见的错误:
(1)elasticsearch 不能以 root 权限来运行,会出现这种错误:Exception in thread “main” java.lang.RuntimeException: don’t run elasticsearch as root。
因为安全问题 elasticsearch 不让用 root 用户直接运行,所以要创建新用户解决办法:
第一步:liunx 创建新用户 adduser XXX 然后给创建的用户加密码 passwd XXX 输入两次密码。第二步:切换刚才创建的用户 su XXX 然后执行 elasticsearch 会显示 Permission denied 权限不足。第三步:给新建的 XXX 赋权限,chmod 777 * 这个不行,因为这个用户本身就没有权限,肯定自己不能给自己付权限。所以要用 root 用户登录付权限。第四步:root 给 XXX 赋权限,chown -R XXX / 你的 elasticsearch 安装目录。
(2)提示:Max number of threads for elasticsearch too low
解决办法:
修改 /etc/security/limits.conf
vim /etc/security/limits.conf
添加一行:xxx - nproc 2048
其中 "xxx" 为启动 elasticsearch 的用户
(3)提示:max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
解决办法:
修改 /etc/sysctl.conf
vim /etc/sysctl.conf
添加一行:vm.max_map_count=262144,添加完了执行:sysctl -p,看结果是不是 vm.max_map_count = 262144
成功运行的结果是会出现 started 即可。可能出现 localhost:9200 或者 127.0.0.1:9200 都能访问的情况,但是根据 IP:9200 就是访问不了,此时修改:elasticsearch.yaml 文件。
bin/elasticsearch-plugin install license
ERROR: Unknown plugin license
原因:ElasticSearch5.0.0 以后插件命令已经改变,解决方案:使用最新命令安装所有插件。
bin/elasticsearch-plugin install x-pack
在浏览器输入:http://192.168.1.100:9200/,如果出现:
说明部署成功,其中 cluster_name:my-demo,是我修改了默认的 cluster_name。
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)