zoukankan      html  css  js  c++  java
  • Linux安装Elasticsearch

    本文介绍Linux环境如何安装Elasticsearch.

    本文环境是在腾讯云服务器CentOS7.2搭建的,JDK1.8,elasticsearch-5.4.2。

    1 安装JDK

    网上教程很多,也可以参考本人教程之前写的Linux安装JDK

    2 安装Elasticsearch

    2.1 创建elasticsearch目录

    cd /usr/local/
    
    mkdir tool
    
    cd tool
    
    mkdir elasticsearch
    
    cd elasticsearch
    

    2.1 下载Elasticsearch

    2.1.1 在刚刚创建好的文件夹内下载Elasticsearch(以下简称es)

    curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.2.tar.gz
    

    2.1.2 解压es包

    tar -xvf elasticsearch-5.4.2.tar.gz
    

    2.1.3 进入es/bin包

    cd elasticsearch-5.4.2/bin
    

    2.1.4 启动es

    ./elasticsearch
    

    2.2 解决问题

    2.2.1 问题一

    直接启动,遇到如图问题,如下:

    这个问题是由于内存分配不够造成的,修改适合本机的内存,修改文件config/jvm.options

    vi ../config/jvm.options
    

    修改如下位置

    由于我的服务器内存较小,修改为512m,具体可以根据情况修改,如下:

    修改后在次启动:

    ./elasticsearch
    

    2.2.2 问题二

    出现如下错误:

    org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
    

    如图

    这个问题很明显,不允许使用root用户启动,那么我们新建一个es用户,并赋予权限:

    添加es用户

    useradd es
    

    添加es用户密码

    passwd es
    

    将文件夹elasticsearch-5.4.2赋予es权限

    chown -R es:es /usr/local/tool/elasticsearch/elasticsearch-5.4.2
    

    切换为es用户

    su es
    

    再次启动es

    ./elasticsearch
    

    这次启动成功了,我们在使用一个窗口登录root用户,输入命令:

    curl -X GET http://localhost:9200
    

    如图所示,可以成功访问

    2.2.3 问题三

    在浏览器访问http://118.24.242.170:9200/拒绝访问(118.24.242.170为服务器ip)

    使用root用户,打开elasticsearch.yml文件,如下:

    vi /usr/local/tool/elasticsearch/elasticsearch-5.4.2/config/elasticsearch.yml
    

    文件内增加如下代码

    network.host: 0.0.0.0
    

    使用es用户启动,发现又出现了错误如下,得到错误信息如图

    使用root用户打开如下文件:

    vim /etc/sysctl.conf
    

    添加如下配置:

    vm.max_map_count = 655360
    

    使配置生效

    /sbin/sysctl -p
    

    然后使用es用户启动Elasticsearch,这次可以成功启动了,如果需要后台启动的话,在启动命令后加&,如下所示:

    ./elasticsearch &
    

    总结

    以上全是本人踩坑实践得到的,亲测可用。

  • 相关阅读:
    Linux(centos7)安装maven3.5
    mysql安装错误之->ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    CentOS7 安装tomcat为系统服务器 Systemctl管理Tomcat,并设置开机启动
    linux(centos)设置tomcat开机启动
    linux(centos7)安装tomcat
    修改Tomcat8w.exe可执行路径:Path to executable
    CentOS 7更改yum源与更新系统
    最全的PHP开发Android应用程序
    Cookies的各方面知识(基础/高级)深度了解
    使用Hash直接登录Windows(HASH传递)
  • 原文地址:https://www.cnblogs.com/dalaoyang/p/9805074.html
Copyright © 2011-2022 走看看