继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

ElasticSearch初探之配置和启动(一)

幕布斯6054654
关注TA
已关注
手记 1296
粉丝 219
获赞 1011

ElasticSearch(以下简称es) 是一款基于lucene的分布式全文搜索引擎服务器,它提供实时搜索,稳定,快速可靠等优势。下面基于centos7环境下安装部署es。

  • 查看linux环境下是否安装jdk(es启动必须java8以上环境),如果出现如下表示未安装jdk请先安装

[root@Eden666 ~]# java -version-bash: java: command not found
  • 若wget 下载下来解压不了出现以下错误,是因为我们下载jdk时有Accept License Agreement选项需要勾选,解决办法先下载下来再通过sftp上传解压,我这边解压放在/opt/soft文件夹下。

[root@Eden666 ~]# wget http://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz[root@Eden666 ~]# tar -zxvf jdk-8u191-linux-x64.tar.gz gzip: stdin: not in gzip formattar: Child returned status 1tar: Error is not recoverable: exiting now
  • 配置jdk环境:在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL这行下加入jdk环境配置,

[root@Eden666 ~]# vi /etc/profileexport JAVA_HOME=/opt/soft/jdk1.8.0_191export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@Eden666 ~]# java -version-bash: java: command not found
[root@Eden666 ~]# source /etc/profile  //刷新配置[root@Eden666 ~]# java -versionjava version "1.8.0_191"Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
[root@Eden666 soft]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.0.tar.gz[root@Eden666 soft]# mv elasticsearch-6.5.0.tar.gz  elasticsearch-6.5.0[root@Eden666 soft]# lselasticsearch-6.5.0  jdk1.8.0_191[root@Eden666 soft]# tar -zxvf elasticsearch-6.5.0
  • 启动es,若出现以下不能分配内存情况,则需修改es的config,重新启动

[root@Eden666 elasticsearch-6.5.0]# ./bin/elasticsearchJava HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c5330000, 986513408, 0) failed; error='Cannot allocate memory' (errno=12)## There is insufficient memory for the Java Runtime Environment to continue.# Native memory allocation (mmap) failed to map 986513408 bytes for committing reserved memory.# An error report file with more information is saved as:# logs/hs_err_pid1307.log[root@Eden666 elasticsearch-6.5.0]# vi config/jvm.options -Xms1g //我这边JVM堆最大和初始化内存改成 512m-Xmx1g
  • 启动之后若出现如下情况,是因为开启es服务器不能使用root用户,需要新建用户,并且赋予用户执行权限

[root@Eden666 elasticsearch-6.5.0]# ./bin/elasticsearch[2018-11-15T14:58:45,626][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [unknown] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:140) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:127) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.5.0.jar:6.5.0]
        at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.5.0.jar:6.5.0]
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:86) ~[elasticsearch-6.5.0.jar:6.5.0]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
        at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:103) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.5.0.jar:6.5.0]
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-6.5.0.jar:6.5.0]
        ... 6 more

[root@Eden666 elasticsearch-6.5.0]# useradd esuser[root@Eden666 elasticsearch-6.5.0]# passwd esuserChanging password for user esuser.
New password: BAD PASSWORD: The password is shorter than 8 characters
Retype new password: passwd: all authentication tokens updated successfully.
[root@Eden666 elasticsearch-6.5.0]# chown -R  esuser:esuser /opt/soft/[root@Eden666 elasticsearch-6.5.0]# su esuser[esuser@Eden666 elasticsearch-6.5.0]$ ./bin/elasticsearch
  • 查看启动日志看是否报错,若没有报错,curl get请求返回正常说明启动成功

[root@Eden666 ~]# curl localhost:9200{  "name" : "5MLXu98",  "cluster_name" : "elasticsearch",  "cluster_uuid" : "I4nrxsMLR-KNRcZZnhHpIQ",  "version" : {    "number" : "6.5.0",    "build_flavor" : "default",    "build_type" : "tar",    "build_hash" : "816e6f6",    "build_date" : "2018-11-09T18:58:36.352602Z",    "build_snapshot" : false,    "lucene_version" : "7.5.0",    "minimum_wire_compatibility_version" : "5.6.0",    "minimum_index_compatibility_version" : "5.0.0"
  },  "tagline" : "You Know, for Search"}



作者:Eden666
链接:https://www.jianshu.com/p/b17490465458


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP