Linux下安装Elasticsearch
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。接下来将记录一下如何在Linux服务器上安装Elasticsearch。
检测是否安装了Elasticsearch
ps aux|grep elasticsearch
安装JDK
安装JDK具体操作,请点击链接
下载Elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.0.tar.gz
或者从官网中下载相应的压缩包,使用ftp上传至服务器进行压缩安装:\
下载地址:https://www.elastic.co/downloads/elasticsearch\
这里选择6.0版本的Elasticsearch,选择对应的安装包进行下载
解压安装Elasticsearch
解压到当前目录
tar -zxvf elasticsearch-6.0.0.tar.gz
安装,将Elasticsearch移动到/usr/local/elasticsearch
目录之中
mv elasticsearch-6.0.0 /usr/local/elasticsearch
修改配置文件
- 进入
/usr/local/elasticsearch/config
目录,使用vi编辑器
vi elasticsearch.yml
取消如下注释,并修改为当前主机地址:
network.host: 192.168.0.156
discovery.zen.ping.unicast.hosts: ["192.168.0.156"]
- 使用vi编辑器,修改
/etc/sysctl.conf
文件,添加如下代码(若无将会出现下面常见问题2):
vm.max_map_count=262144
退出保存后执行如下命令:
sysctl -p
- 使用vi编辑器,修改
/etc/security/limits.conf
文件,在文件末尾添加如下代码(若无将会出现下面常见问题3):
# python为登录服务器的用户名
python soft nofile 65536
python hard nofile 65536
python soft nproc 4096
python hard nproc 4096
值得注意的是,python为登录的用户名。修改退出保存之后,切记需要退出重新登录,配置才能生效!!!
启动Elasticsearch
进入/usr/local/elasticsearch
目录之中,输入以下命令,开始Elasticsearch服务:
./bin/elasticsearch
测试一下:
curl -XGET 'http://192.168.0.156:9200/'
出现以下代码,就表示安装完成了:
{
"name" : "mG5nSkg",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "YCYNyF9eQj-laRZGRliyNQ",
"version" : {
"number" : "6.0.0",
"build_hash" : "8f0685b",
"build_date" : "2017-11-10T18:41:22.859Z",
"build_snapshot" : false,
"lucene_version" : "7.0.1",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
常见问题
-
can not run elasticsearch as root
Elasticsearch版本> = 5.0.0时,是不可用超级管理员运行Elasticsearch的,退出管理员账号即可
-
max virutal memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决方案,请看上面修改配置文件第2项
-
max number of threads [3750] for user [xxx] is too low, increase to at least [4096]
这个问题折磨了博主很久,在网上找到的答案都是修改
/etc/security/limits.d/90-nproc.conf
文件,可是我发现我系统中根本不存在此文件!!!后又请教高人朋友,说是可以修改/etc/security/limits.conf
文件,修改发现之后也根本不管用,原来修改该文件之后需要退出重新登录一下才管用。具体修改配置,请看修改配置文件第3项