全文搜索引擎Elasticsearch的安装过程

Elasticsearch是目前为止比较屌炸天的一款大数据日志收集工具,而且在很多知名大公司比如360、蚂蚁金服、京东、腾讯等都急需这方面的研究人才,在https://elasticsearch.cn/explore/category-12 官方网站就有N多Elasticsearch招聘贴。


要安装Elasticsearch,需要在机器里先有java1.8+的环境,我这2个机器都是阿里云centos 7.4 64位纯净系统,配置是2核2G。


首先#yum -y update一波,更新一下最新的yum,在更新的时候呢,也不要干坐着,登陆http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html  ,下载最新的java安装包,我为了省事直接就选择的tar包,如图:

全文搜索引擎Elasticsearch的安装过程


下载完并且上传之后,执行一下#rpm -qa | grep java,看一下有没有以前老的java,比如:

1
2
3
4
5
6
7
[[email protected] usr]# rpm -qa | grep java
java-1.7.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64
python-javapackages-3.4.1-5.el7.noarch
tzdata-java-2014b-1.el7.noarch
javapackages-tools-3.4.1-5.el7.noarch
java-1.7.0-openjdk-1.7.0


如果有的话就#rpm -e --nodeps 加上查询出的java名逐一删除掉java,比如:

1
2
[[email protected] usr]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.51-2.4.5.5.el7.x86_64
[[email protected] usr]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0


删除完毕之后,要#java -version检查一下是否已经不会出现版本了。


现在更新也更新完了,以前老的java也干掉了,那么就把jdk-8u151-linux-x64.tar.gz 拆包解压缩到/usr/local里,如图:

全文搜索引擎Elasticsearch的安装过程


然后就#vim /etc/profile,在全文的末尾加上这样的内容:

1
2
3
4
5
6
#java 1.8 config
JAVA_HOME=/usr/local/jdk1.8.0_151    #这里就是jdk1.8的那个路径,根据解压缩的位置而定
JRE_HOME=$JAVA_HOME/jre
CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASSPATH PATH


保存退出之后,#source /etc/profile,然后#java -version看一下版本:

全文搜索引擎Elasticsearch的安装过程


java 1.8安装完毕,下面就是安装Elasticsearch,直接下载压缩包吧,比较简单暴力。

1
2
3
4
# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zip
# unzip elasticsearch-5.5.1.zip
# cd elasticsearch-5.5.1/bin
#./elasticsearch

 

启动之后,发现爆了一个错误,"Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x000000008a660000, 1973026816, 0) failed; error='Cannot allocate memory' (errno=12)",如图:

全文搜索引擎Elasticsearch的安装过程


vim打开elasticsearch会看到下面这句话

1
#   ES_JAVA_OPTS="-Xms8g -Xmx8g" ./bin/elasticsearch

这个错误代表8G内存才可以启动elasticsearch,于是就升级到8G,这玩意的确是有钱人玩的东西。


升级之后,再次启动,出现了"can not run elasticsearch as root"这个错误:

全文搜索引擎Elasticsearch的安装过程


既然不让root,那就建立一个新的用户吧:

1
2
3
4
5
roupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
chown -R elsearch:elsearch  /安装路径/elasticsearch-5.5.1
cd /安装路径/elasticsearch-5.5.1/bin
su elsearch ./elasticsearch


这样就看到正确启动的样子:全文搜索引擎Elasticsearch的安装过程


如果要后台启动的话,命令就是#su elsearch ./elasticsearch -d如果你非要用root用户去启动的话,也不是不可以,命令是#./安装路径/bin/elasticsearch -Des.insecure.allow.root=true 。


如果启动的时候,爆“max virtual memory areas vm.maxmapcount [65530] is too low”这个错误,那么就先运行如下命令:#sudo sysctl -w vm.max_map_count=262144


如果启动的时候,爆“max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]”,那么#vim /etc/security/limits.conf,把文末内容改成这样,改完了之后#sysctl -p即可:

1
2
3
4
5
6
7
# End of file
root soft nofile 65535
root hard nofile 65535
* soft nofile 165536
* hard nofile 165536
* soft nproc 2048
* hard nproc 4096


启动之后,在命令行里输入#curl localhost:9200,就会返回JSON 对象,包含当前节点、集群、版本等信息。

全文搜索引擎Elasticsearch的安装过程


我这个Elasticsearch版本是5.11,中文教程https://elasticsearch.cn/book/elasticsearch_definitive_guide_2.x/  已经有点老了,所以研究之路不仅充满荆棘还充满各种墙和英语...


参考资料:http://www.yiibai.com/elasticsearch/

参考资料:http://www.cnblogs.com/Wolfmanlq/p/5984376.html


最后的最后,如果您觉得本文对您升职加薪有帮助,那么请不吝赞助之手,刷一下下面的二维码,赞助本人继续写更多的博文!

全文搜索引擎Elasticsearch的安装过程

 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/2043924