Elasticsearch安装教程
Elasticsearch是一个开源的,基于Apache Lucene库构建的全文搜索引擎,有着广泛的使用场景,学习这一技术是很有必要的。在学习之前我们首先需要安装Elasticsearch,这里就简单记录一下在linux环境下的安装步骤以及遇到的问题的解决方法。
安装步骤
- 安装并设置好java环境,需要安装jdk1.8或者jdk11,使用
java -version
进行检查 - 从elasticsearch官网去下载对应版本的安装包
- 将下载好的文件放到相应的目录并解压
tar -xzf elasticsearch-7.2.0-linux-x86_64.tar.gz
- 添加启动elasticsearch的用户和用户组
### 创建用户组elk
groupadd elk
### 创建新用户elk并且把elk用户放到elk用户组
useradd -m -g elk elk
### 为elk用户设置密码
passwd elk
- 将解压出来的文件夹的所有者改为新创建的
elk
用户
sudo chown -R elk:elk elasticsearch-7.2.0
- 修改文件
/etc/security/limits.conf
在末尾添加如下内容
elk soft nofile 65536
elk hard nofile 131072
elk soft nproc 4096
elk hard nproc 4096
- 修改文件
/etc/sysctl.conf
在末尾添加如下内容
vm.max_map_count=655360
- 切换到新建的
elk
用户,进入解压出来的安装目录里面的bin
目录,执行脚本启动elasticsearch。
### 切换用户
su elk
### 执行启动脚本
./elasticsearch
### 以守护进程的方式
./bin/elasticsearch -d -p pid
- 执行命令
curl http://localhost:9200
验证是否安装成功,如果有如下响应则说明安装成功。
{
"name" : "node-1",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "ecIk6VqORx-Vjg7DVaI7fA",
"version" : {
"number" : "7.2.0",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "508c38a",
"build_date" : "2019-06-20T15:54:18.811730Z",
"build_snapshot" : false,
"lucene_version" : "8.0.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
以上就是elasticsearch的安装步骤,建议多去官方文档找找自己需要的知识,官方文档的地址https://www.elastic.co/guide/en/elasticsearch/reference/index.html 。
直接安装还是比较麻烦的,可以使用docker去安装elasticsearch的环境,直接docker hub拉相应的镜像启动即可,简单方便。
其他问题
启动不成功?
进入安装目录的logs目录,排差 elasticsearch.log日志,找到相关的报错信息。
- 报错情况如下,这种报错是由于系统允许的线程数太少,请检查
修改文件/etc/security/limits.conf
这一步骤。
[2] bootstrap checks failed
[1]: max number of threads [3698] for user [elk] is too low, increase to at least [4096]
- 报错情况如下,这些情况请修改
config
目录的elasticsearch.yml
文件,设置node.name
这一设置项,并且将设置项cluster.initial_master_nodes
设置为node.name
设置项的值。
[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
在虚拟机的linux环境中安装的elasticsearch,在虚拟机可以访问但是使用宿主机浏览器访问不到?
进入安装目录的config
目录,修改其中的elasticsearch.yml
文件,绑定ip,将network.host
设置为0.0.0.0或者其他具体的ip。