博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IT兄弟连 JavaWeb教程 ElasticSearch在Linux下的安装和启动、常见问题解决
阅读量:6912 次
发布时间:2019-06-27

本文共 2101 字,大约阅读时间需要 7 分钟。

hot3.png

环境要求

·      Linux(Centos 7)

·      ElasticSerach 6.6.1

ES下载

·      下载地址:https://www.elastic.co/cn/downloads/elasticsearch

 b3bcd6d8aa304c7bb6266bcf4dbc4351.jpg

ES安装

·        进入Linux系统,切换到 /opt 目录下:

852364e9edb342709c6036a8489b9230.jpg

·         在opt目录下,创建elasticsearch文件夹,并进入文件夹内:

4975733693a64125b82a0629093514e6.jpg

·         获取elasticearch安装包:

97f9e34eb49e476387b570ff71b9a2f5.jpg

o    方法1:可以使用在线下载命令,下载安装包:

下载命令:   wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.1.tar.gz

方法2:可以将之前已经下载好的安装包上传到当前目录下:

使用WinSCP工具,将下载到本地的安装包,上传到linux目录下

·         解压elasticsearch安装包

 tar -zvxf    elasticsearch-6.6.1.tar.gz

c9cf5592015149aca2743c558f2c8bd1.jpg

4d3dc49f97804f9e9848530fba459782.jpg

 

·         进入elasticsearch-6.6.1/config文件夹内,修改配置文件:

 

cd   elasticsearch-6.6.1/config/

7862d65d78ea4e58b46a3916951b7bad.jpg

7acae370479b4263944053cf439d7c1b.jpg

   

定位到#network.host: 192.168.0.1位置,在下面增加一行:     network.host: 0.0.0.0

90f18bf9fd40434b8366a4e34b4fb775.jpg

保存并退出(先按esc键,输入:wq!,按回车键即可)

启动

·         启动elasticsearch为后台进程服务:

切换到bin目录下,执行如下命令:

7c4039b526b34f7a82f1084bc350e04e.jpg

启动命令:./elasticsearch -d

f8f35cfaf354415fb0307e20af23a34c.jpg

问题1:could not find java; set JAVA_HOME or ensure java is in PATH

解决方案:需要系统搭建Java环境

搭建完毕之后,再次执行命令:./elasticsearch -d

4f284df6532c46a2be2b8e98fb152d5a.jpg

·         判断是否启动成功,可执行如下命令,查看是否启用9200端口即可

ss -tanl

451aaf335ed84f90aceeda0c370276b3.jpg

发现没有启用9200,则代表es启动失败,需要查看具体原因:

接下来,则需要查看启动日志,切换到日志logs目录下

执行如下命令即可: more elasticsearch.log

4433858fb90247308f298944deab6456.jpg

通过日志分析所得,启动es服务的时候,是不允许使用超级管理员root账户 那么接下来,我们需要创建一个普通用户likang

使用普通用户(likang)启动es服务即可,如下命令: 第一步:liunx创建新用户  adduser likang   

然后给创建的用户加密码 passwd likang    输入两次密码.

c5e9b224360f49478002be291c48d5bc.jpg

第二步:给新建的XXX赋权限,chown -R likang /opt/elasticsearch/

29440601898e4020a50ac2634bff6fa9.jpg

第三步:切换到likang普通用户下,执行启动命令

3f9b2ca546cf4edbaaa0d5c81e53e853.jpg

·         再次验证es是否启动成功,发现还是失败,再次查看日志,分析如图:

37110d6891314adcb5c093240a0c0d66.jpg

问题:max file descriptors [4096] for elasticsearch process is too low,

increase to at least [65536] 原因:每个进程最大同时打开文件数太小 查看当前系统同时打开进程数的默认值:     ulimit -Hn     ulimit -Sn

285a2688e0824f8fb92bb76f52599671.jpg

解决方案:切换到root账户,修改/etc/security/limits.conf文件,

增加配置,用户退出后重新登录生效 su root 输入密码 vi /etc/security/limits.conf 在文件最后,增加如下配置: likang    hard     nofile     65536 likang    soft     nofile     65536 *         soft     nproc      4096 *         hard     nproc      4096

b91f8c929c8848029efb5a95a6f559e7.jpg

·         再次启动验证,发现还有问题,如下:

5c2ced281e524f488061a679781d80aa.jpg

问题:max virtual memory areas vm.max_map_count [65530] is too low,

increase to at least [262144] 原因:elasticsearch用户拥有的内存权限太小,至少需要262144 解决:切换到root用户,在/etc/sysctl.conf文件最后添加一行     vm.max_map_count=655360     添加完毕之后,执行命令:         sysctl -p

b9efe03ec54d4ebd8c015a4d0de982cc.jpg

·         再次切换到likang普通用户,重新启动es服务。

2bb3c6e968794f7aa448a99d3e6a726a.jpg

远程访问

·         开启9200端口号访问

/sbin/iptables -I INPUT -p   tcp --dport 9200 -j ACCEPT 

69386dc644174ed2afee6014cb0f7371.jpg

·         可在浏览器中输入如下地址:http://192.168.73.131:9200/

6ad6ba3ad84742ccb544b30c17beb0d3.jpg

·         如果显示如上信息,则代表Linux下ES已经搭建完毕(单机)

停止

·         若是es的前台运行,则用ctrl + c 来停止。

·         若是es的后台运行,则用kill -9 进程号 来停止。(可通过jps命令,查看es进程号)

转载于:https://my.oschina.net/u/4125915/blog/3045392

你可能感兴趣的文章
powershell 获取过期的文件
查看>>
删除mysql, 清理残留安装软件
查看>>
我的友情链接
查看>>
MAVEN指南-4、pom.xml 文件详解
查看>>
我的友情链接
查看>>
Vue导入外部js文件或css文件
查看>>
迷茫的学,无措的期待
查看>>
linux常见系统故障排除
查看>>
后台启动 zookeeper 所有信息 输出到指定目录
查看>>
nuxt.js踩坑记录
查看>>
spark和hive集成
查看>>
Mysql一些维护命令
查看>>
瑞萨单片(R5F100LE)操作无线模块CC1100
查看>>
最好的emacs24配置及配色的修改
查看>>
GIS(四)——为js版搜狗地图添加边界+Marker和Brand的最终美化版
查看>>
AWS - VPC site-to-site ×××
查看>>
Spring Cloud Alibaba使用Sentinel限流_四
查看>>
Redisbook学习笔记(1)sds
查看>>
12.6-全栈Java笔记:Java网络编程(四)
查看>>
Django加载模板文件
查看>>