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

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

下载elastic search 5.3.0

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

cd /bin
./elasticsearch

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

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

error='Cannot allocate memory'

solutions:

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

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

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用户,然后

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 ,但是重启后又会恢复为原值。

sysctl -w vm.max_map_count=262144

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

echo "vm.max_map_count=262144" > /etc/sysctl.conf
sysctl -p

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

外网访问成功!

安装可视化插件 elasticsearch-head

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可视化界面可以看到索引已经成功插入

索引已经插入

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

您可能感兴趣的文章:

  • 详解centos7虚拟机安装elasticsearch5.0.x-安装篇
(0)

相关推荐

  • 详解centos7虚拟机安装elasticsearch5.0.x-安装篇

    centos7虚拟机安装elasticsearch5.0.x-安装篇 请预先安装jdk详细步骤请参考:http://www.jb51.net/softjc/193398.html 创建新用户(非root用户) elasticsearch只能用非root启动,这里我创建了一个叫seven的用户 [root@localhost ~]# useradd seven [root@localhost ~]# passwd seven 下载elasticsearch [root@localhost ~]#

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

    本文介绍了centos7上elastic search安装及填坑记,分享给大家,具体如下: 下载elastic search 5.3.0 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

  • 详解Centos7源码编译安装 php7.2之生产篇

    介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是否存在兼容性,如果程序是基于php5开发的,那么就需要考虑php7是否适合你当前的生产环境,今天我就实操并安装用于生产中. 先安装php依赖包,否则在编译安装php7的过程当中会出现各种报错,安装完成后即可进入下一个环节. 安装扩展包并更新系统内核: $ yum install epel-release -y $ yum updat

  • 详解Centos7 源码编译安装 Nginx1.13

    关于nginx的相关介绍我就不说了,既然你选择nginx作为你的web服务器,想必你多少也对nginx server有不同认知和理解,接下来我就直接安装. 1.先决条件: 我使用的是centos7.3 64位核心版系统,安装配置nginx前必须安装nginx依赖包,请查看:Centos 7编译安装php7.1之生产篇,并安装前文开头所提供的依赖包.此依赖组件包适用于Nginx任意版本. 新建web用户和组 $ /usr/sbin/groupadd www $ /usr/sbin/useradd

  • 国产化设备鲲鹏CentOS7上源码安装Python3.7的过程详解

    目录 获取源代码 准备工作(安装依赖) 生成Makefile 构建&&安装 添加环境变量 其他小问题 找不到libpython3.7m.so.1.0 升级pip上的小坑 影响pyinstaller打包后python程序移植性的因素 具体编译过成与正常的Python源代码在x86平台上的过程无异,此篇随笔仅当用作复制黏贴的备忘录.不得不说在一个老旧系统上安装一个老旧的Python版本,从头编译一个Python还是一个较为稳健的选择. 获取源代码 Python官网处下载所需源码版本[https

  • 详解Pycharm第三方库的安装及使用方法

    1.Pycharm第三方库的安装 方法一:pip install 包名:pip uninstall 包名. 方法二:pip install 下载路径\包名.whl (需要先下载第三包:地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/,找到所需的包并下载保存),如下例安装gensim包所示: 方法三:若在pycharm编辑中,则在菜单setting/project/project interpreter中添加第三包.或者将第三方包放置于pycharm的s

  • 详解Linux上svn命令行批量操作

    详解Linux上svn命令行批量操作 虽然说git很好,大多数时候我也是使用git,但是有时候因为一些原因,不得不使用svn,而在linux上使用svn是没有像windows上的tortoisesvn的软件的(网上有说有类似的,但是折腾了很久仍然没有成功),所以直接来命令行吧. 我们直接安装svn就好,然后文件修改之后使用命令 svn status 查看文件的跟踪信息,这里会使用一些代号,对应的大概是 " " 无修改 "A" 新增 "C" 冲突

  • 详解Linux中查看jdk安装目录、Linux卸载jdk、rpm命令、rm命令参数

    一.查看jdk安装目录 [root@node001 ~]# whereis java java: /usr/bin/java /usr/local/java #java执行路径 [root@node001 ~]# which java /usr/bin/java #查看JDK安装路径 [root@node001 ~]# echo $JAVA_HOME /usr/local/java/jdk1.7.0_80 [root@node001 ~]# echo $PATH /usr/local/sbin:

  • 详解ubuntu 20.04 LTS安装记录

    本篇记录U盘启动盘制作及系统安装,系统配置另开文章. 所需材料: 4GB或以上U盘 Ubuntu 20.04 ISO文件(从ubuntu官网下载) 一.U盘启动盘制作 使用旧版ubuntu制作ubuntu 20.04启动盘 以下参考ubuntu官方教程 需要ubuntu 14.04或以上版本,我用的是ubuntu 16.04 在启动栏输入Startup Disk Creator,打开系统自带的启动盘制作工具 会自动检测Downloads文件夹内的iso文件和插入电脑的U盘 将U盘内文件备份好,点

  • 详解Maven私服Nexus的安装与使用

    本文介绍了详解Maven私服Nexus的安装与使用,分享给大家,具体如下: 1.安装 1.1 安装docker并加速 yum update && yum install docker sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://y7u9p3i0.mirror.aliyuncs.com"

  • 详解element上传组件before-remove钩子问题解决

    应公司业务要求已上传文件删除前提醒确认代码如下 if(file && file.status === "success"){ return this.$confirm('此操作将永久删除该文件, 是否继续?', '系统提示',{ confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning', center: true }).then(() => { this.$message({ type: 's

随机推荐