前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >详解centos7上elastic search安装及填坑记

详解centos7上elastic search安装及填坑记

作者头像
砸漏
发布2020-10-19 12:38:07
4960
发布2020-10-19 12:38:07
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

本文介绍了centos7上elastic search安装及填坑记,分享给大家,具体如下:

下载elastic search 5.3.0

代码语言:javascript
复制
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.tar.gz
mv elasticsearch-5.3.0.tar.gz /opt
cd /opt
tar -xzvf elasticsearch-5.3.0.tar.gz
cd elasticsearch-5.3.0/

启动ES

代码语言:javascript
复制
cd /bin
./elasticsearch

按照道理应该就可以了,然而接下来各种坑一一出现,分别阐述

错误1:error=’Cannot allocate memory’ (errno=12)

error=’Cannot allocate memory’

solutions:

由于elasticsearch5.0默认分配jvm空间大小为2g,需要改小一点

代码语言:javascript
复制
vim config/jvm.options 
-Xms2g → -Xms512m
-Xmx2g → -Xmx512m

错误2: can not run elasticsearch as root

can not run elasticsearch as root

solutions:

在 Linux 环境中,elasticsearch 不允许以 root 权限来运行!所以需要创建一个非root用户,以非root用户来起es

代码语言:javascript
复制
groupadd elk # 创建用户组elk
useradd elk -g elk -p 111111 # 创建新用户elk,-g elk 设置其用户组为 elk,-p 111 设置其密码6个1
chown -R elk:elk /opt # 更改 /opt 文件夹及内部文件的所属用户及组为 elk:elk
su elk # 切换到非root用户elk下来

错误3:(1) max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] (2) max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 此错误出现在修改config/elasticsearch.yml中的network.host为network.host: 0.0.0.0以便让外网任何IP都能来访问时。

solutions:

切换到root用户,然后

代码语言:javascript
复制
vim /etc/security/limits.conf
* soft nofile 300000
* hard nofile 300000
* soft nproc 102400
* soft memlock unlimited
* hard memlock unlimited

/etc/security/limits.conf

错误4:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

vm.max_map_count is too low

solutions:

先要切换到root用户;

然后可以执行以下命令,设置 vm.max_map_count ,但是重启后又会恢复为原值。

代码语言:javascript
复制
sysctl -w vm.max_map_count=262144

持久性的做法是在 /etc/sysctl.conf 文件中修改 vm.max_map_count 参数:

代码语言:javascript
复制
echo "vm.max_map_count=262144" > /etc/sysctl.conf
sysctl -p

最后终于在外网访问成功:

外网访问成功!

安装可视化插件 elasticsearch-head

代码语言:javascript
复制
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install  # 此处我试图用cnpm install有问题,用npm可以
npm run start 

然后在外网访问http://你的安装机IP:9100

访问elasticsearch-head可视化界面成功

最后实际简单测试一下

新建 Index,可以直接向 Elastic 服务器发出 PUT 请求。下面的例子是新建一个名叫weather的 Index。

用rest接口向es添加index

然而刷新elasticsearch-head可视化界面可以看到索引已经成功插入

索引已经插入

以上就是本文的全部内容,希望对大家的学习有所帮助。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档