Linux下安装ElasticSearch 5 和配置外部访问

时间:2024-01-04 11:13:38

https://www.cnblogs.com/hts-technology/p/8477291.html

(一)ElasticSearch需要jdk1.8以上版本的支持,所以需要先安装jdk。linux下如何安装可以查看另一篇博客 linux下如何安装jdk
(二)在es官网下载tar版本
Linux下安装ElasticSearch 5 和配置外部访问
(三)下载后传到linux系统home/es(目录可自选)下,使用tar -zxvf 压缩包名 解压缩
(四)解压后进入bin目录,执行sh elasticsearch,发现出现错误,说不能以root用户执行。所以创建新的用户

usradd  elastic

//目录权限赋于
chown -R elastic:elastic /home/es/elasticsearch-5.5.2/ //然后切换到该用户
su elastic //再执行,当然也可以加 -d 参数再后台运行,通过ps -ef | grep elasticsearch 查看后台运行
sh elasticsearch

还有可能遇到错误:Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)

由于elasticsearch5.0默认分配jvm空间大小为2g,修改jvm空间分配

# vim elasticsearch-5.5.2/config/jvm.options

    -Xms2g
-Xmx2g #修改为 -Xms512m
-Xmx512m

(五)运行curl http://localhost:9200 查看,如果出现拒绝之类的问题,一般是防火墙的问题,可以修改防火墙规则或者关闭防火墙
Linux下安装ElasticSearch 5 和配置外部访问

(六)配置外部访问
1)进行安装目录的config目录下,修改elasticsearch.yml文件,修改点如下(要去掉#号注释)

network.host:0.0.0.0
http.port:9200

2)重新启动elasticsearch,可能会出现错误,提示虚拟内存太小,最大文件描述进程太小,进行以下的修改
①max file descriptors.......
修改/etc/security/limits.conf,添加或者修改如下(切换root用户)

*  hard  nofile  65536
* soft nofile 65536

②max virtual memory.......
修改/etc/sysctl.conf 添加vm.max_map_count=2621441
Linux下安装ElasticSearch 5 和配置外部访问

保存后执行sudo sysctl -p /etc/sysctl.conf 使之生效

3)再次重新启动elasticsearch,当然还有可能出现下面错误(很少出现)Java Hotspot(TM) 64-Bit Server Warning ........
则按照下图修改
Linux下安装ElasticSearch 5 和配置外部访问

4)即可以通过外部 http://服务器ip:9200访问
Linux下安装ElasticSearch 5 和配置外部访问