Linux安装Elasticsearch
时间:2019-10-20
本文章向大家介绍Linux安装Elasticsearch,主要包括Linux安装Elasticsearch使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
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 &
总结
以上全是本人踩坑实践得到的,亲测可用。
原文地址:https://www.cnblogs.com/yoishion/p/11708037.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法