CentOS7上ElasticSearch安装填坑记


下载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

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

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

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

vim config/jvm.options
-Xms2g  →  -Xms512m
-Xmx2g  →  -Xmx512m

错误2: 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

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

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


最后实际简单测试一下

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

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

后记

关于作者更多的elastic search实践在此

原文地址:http://blog.51cto.com/13428080/2074515

时间: 2024-11-24 16:28:54

CentOS7上ElasticSearch安装填坑记的相关文章

webpack安装填坑('webpack' 不是内部或外部命令,也不是可运行的程序或批处理文件)

差不多每次安装软件都是一个波折的过程,这次webpack的安装也不例外,安装成功之后立马来记录解决错误的方法,以备不时之需 前提条件 webpack是依赖于node安装的,所以在安装前要确保自己是否安装了node.js,在命令行运行node -v如果情况如下就是安装了node.js,如果没有安装请参考node.js的安装步骤 注意:记得在安装的node目录下创建两个文件夹然后,配置npm路径 配置全局路径:npm config set prefix "d:\nodejs\node_global&

CentOS7上LNMP安装包一步搭建LNMP环境

系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian Linux系统 需要5GB以上硬盘剩余空间 需要128MB以上内存(如果为128MB的小内存VPS,Xen的需要有SWAP,OpenVZ的至少要有128MB以上的vSWAP或突发内存),注意小内存请勿使用64位系统! 安装MySQL 5.6或5.7及MariaDB 10必须1G以上内存!. VPS或服务器必须已经联网,且必须设置的是网络源不能是光盘源,同时VPS/服务器 DNS要正常! Linux下区

My sql 8.0.13 安装填坑

会报错的写法: GRANT ALL PRIVILEGES ON *.*  'root'@'%' identified by '123123' WITH GRANT OPTION; 以下是正确的写法: grant all privileges on  *.* to 'root'@’%’ ; 原文地址:https://www.cnblogs.com/yuanhang/p/10160849.html

在 CentOS7 上安裝 VMware vSphere CLI (vcli)

最近项目需要在Centos7上安装VCLI. 根据官方说明,适用预变异的perl模块,运行的时候报错. 根据下面这个文章, 使用cpan,但是在安装过程中报错,说明下面文章应该有缺陷. http://ephrain.pixnet.net/blog/post/62612357-%5Bvmware%5D-%E5%9C%A8-centos7-%E4%B8%8A%E5%AE%89%E8%A3%9D-vmware-vsphere-cli-(vcli)-%E6%93%8D 经过N多天尝试,终于成功 环境:

阿里云主机实战应用之centos7上的防火墙设置

最近公司又上了一台服务器,以前都是用centos 6系统,这次选择使用了centos 7系统的安装镜像,因为现在程序版本在centos 7上一般php默认就是5.4以上的,mysql也变成了mariadb,但使用都一样而已,apache安装的httpd程序也是2.4的版本,所以就算yum安装基本服务也是比较新一些的版本吧. 公司拨款后就在阿里云后台买了台主机,直接yum装的lamp,添加虚拟主机的配置文件这里就不说了,网上一堆的配置文档,只记录下,在centos7上遇到的坑. lamp环境都搭好

阿里云ECS搭建Kubernetes集群踩坑记

阿里云ECS搭建Kubernetes集群踩坑记 [TOC] 1. 现有环境.资源 资源 数量 规格 EIP 1 5M带宽 ECS 3 2 vCPU 16 GB内存 100G硬盘 ECS 3 2 vCPU 16 GB内存 150G硬盘 SLB 2 私网slb.s1.small 2. 规划 坑: 上网问题,因为只有一个EIP,所有其它节点只能通过代理上网; 负载均衡问题,因为阿里不支持LVS,负载均衡TCP方式后端又不支持访问负载均衡,HTTP和HTTPS方式,只支持后端协议为HTTP; 为了避免上

.NET Core爬坑记 1.0 项目文件

前言: 之所以要写这个系列是因为在移植项目到ASP.NET Core平台的过程中,遇到了一些“新变化”,这些变化有编译方面的.有API方面的,今天要讲的是编译方面的一些问题.我把它们整理后分享出来,以便各位博友不要再遇到这些坑. 在Dotnet Core RC2版本中,project.json 管理着整个项目,包括编译文件.依赖包管理.版本信息.平台依赖与发布等功能. 关于项目中引用: 比如我们一般看到Project.json中一般会有如下内容: "dependencies": { &

UiAutomator2.0升级填坑记

UiAutomator2.0升级填坑记 SkySeraph May. 28th 2017 Email:[email protected] 更多精彩请直接访问SkySeraph个人站点:www.skyseraph.com 啰嗦 Google Android Developers 在2015年3月就发布了UiAutomator 2.0版本(下文简称U2),而公司的核心产品中用到还是UiAutomator老版本(下文简称U1),业界用U2的也不是很多,虽然有诸多问题和不便(如高版本OS中不支持Remo

一次在CentOS7上安装部署Zabbix3.0版本及快速进行基本配置的实例

Zabbix3.0的安装.部署.配置,必须基于LAMP环境或是是LNMP环境. 关于LAMP环境的简单快速搭建,见博客:http://afterdawn.blog.51cto.com/7503144/1923139 注意:以下步骤都是在LAMP配置之后进行的. 本文不会再对zabbix-server和zabbix-agent理论知识再进行介绍,建议看完http://afterdawn.blog.51cto.com/7503144/1922502再进行zabbix实战. Zabbix3.0对软硬件