本文介绍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安装Elasticsearch的更多相关文章

  1. Linux安装ElasticSearch启动报错的解决方法

    Linux安装ElasticSearch后,ElasticSearch是不能用root用户启动的,以root用户启动会报错Refer to the log for complete error det ...

  2. Linux 安装elasticsearch、node.js、elasticsearch-head

    前提:下载es的安装包 官网可以下载 es官网 安装elasticsearch 1 新建两个文件夹 一个存放安装文件,一个存放解压后的文件 mkdir -p /export/software //存放 ...

  3. linux安装elasticsearch及遇到的各种问题

    1.获取elasticsearch https://www.elastic.co/downloads/elasticsearch 终端输入赋值的下载链接进行下载 wget https://artifa ...

  4. linux 安装elasticsearch 可能遇到的问题

    1.can not run elasticsearch as root 切换到非root用户 因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户 第一步:liunx创 ...

  5. Linux安装ElasticSearch与MongoDB分布式集群环境下数据同步

    ElasticSearch有一个叫做river的插件式模块,可以将外部数据源中的数据导入elasticsearch并在上面建立索引.River在集群上是单例模式的,它被自动分配到一个节点上,当这个节点 ...

  6. linux 安装 elasticsearch

    安装 Java 8 当你提前在使用 Elasticsearch,你开始寻找更好的 Java 性能和兼容性时,您可以选择安装 Oracle 的专有 Java (Oracle JDK 8). 将 Orac ...

  7. linux 安装elasticsearch

    一.检测是否已经安装的elasticsearch ps aux|grep elasticsearch. 二.下载elasticsearch.tar.gz并上传至服务器usr/local/文件夹下 三. ...

  8. linux安装Elasticsearch详细步骤

    坑都已经踩好了 照着步骤一次成功  不多废话 走起 # ## 安装java运行环境 elasticsearch是用Java实现的 跑elasticsearch必须要有jre支持 所以必须先安装jre ...

  9. linux 安装 elasticsearch 步骤及问题解决方案

    1.下载安装包并上传至服务器 2.解压至当前文件夹 tar -xzvf xxx.tar.gz 3.配置JDK 如果服务器上已经配置了JDK,则在解压后的elasticsearch 文件夹的bin 目录 ...

随机推荐

  1. cf1131f 构造+并查集

    #include<bits/stdc++.h> using namespace std; #define maxn 150005 int f[maxn],n; vector<int& ...

  2. ajax请求成功 但是被error拦截

    前端与后台的数据格式不符合 例如后台发过来的一段数据格式是json 然而我们却用默认的fromData去解析,便会被error拦截 在ajax 添加 dataType:'json',

  3. python中利用上下文管理器来实现mysql数据库的封装

    from pymysql import connect class DB(object): def __init__(self, password, database): # 1.连接数据库 self ...

  4. iptables-snat-dnat-设置

    nat internet iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o eth1 -j SNAT --to-source ...

  5. pandas之系列操作(一)

    1.读Excel: # coding=utf-8 import pandas as pd import pymysql sql_select =" xxxxx " con = py ...

  6. JQuery调用WCF服务

    一:创建一个wcf服务项目 [ServiceContract] public interface IService1 { [OperationContract] [WebInvoke(RequestF ...

  7. 解决OS睡眠功能中,移动鼠标就会唤醒

    设备管理器,在相应项目上右键属性.

  8. 利用sqlmap注入测试

    安装:yum install -y gitcd /usr/local && git clone https://github.com/sqlmapproject/sqlmap.gitc ...

  9. Elasticsearch和HDFS 容错机制 备忘

    1.Elasticsearch 横向扩容以及容错机制http://www.bubuko.com/infodetail-2499254.html 2.HDFS容错机制详解https://www.cnbl ...

  10. jQuery选择器总结 jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法

    新年第一编文章 jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法   $("#myELement")    选择id值等于myElement的元素,id值 ...