elastic search安装与本地测试

elastic search是一个全文搜索引擎

教程:

综合:http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html 强烈推荐

centos7上安装与配置:https://www.biaodianfu.com/centos-7-install-elasticsearch.html 不全

正确安装步骤:

root身份登陆服务器

安装java8并配置环境变量

执行一个命令,修改内核参数,让java能够锁定内存:https://www.cnblogs.com/rabbitpei/p/6738671.html

创建一个普通用户es

以es身份重新登陆服务器

修改~/.bashrc文件,加入如下两行:

source ~/.bashrc让配置生效

下载elastic search,解压,进入文件夹,执行./bin/elasticsearch,看到如下就说明启动起来了,可以在本机测试一下:

我的安装历程(用的putty来远程登陆控制服务器):

root身份登陆服务器

安装java8并配置环境变量

下载elastic search,解压,进入文件夹。

执行./bin/elasticsearch,报错,检查后发现,java不能锁定内存:https://www.cnblogs.com/rabbitpei/p/6738671.html

解决办法:执行命令,让java可以锁定内存。

执行./bin/elasticsearch,报错,检查后发现,奇奇怪怪的错误,看教程后发现,新版的elastic search不支持root启动。

解决办法:创建一个普通用户es

su es,输入密码,继续./bin/elasticsearch,却发现因为此时在/root文件夹中,没有权限,于是sudo,又被提示not in the sudoers:https://jingyan.baidu.com/article/2a1383284bb3e8074a134f2d.html

解决办法:加入sudoers

继续sudo执行./bin/elasticsearch,奇奇怪怪的错误。

解决办法:于是,以es身份重新登录服务器,进到了es用户的文件夹,这下总算没有权限问题了。

下载elastic search,解压,进入文件夹。

执行./bin/elasticsearch,报错,这次报错倒是很简短,被kill。检查后发现,因为我的服务器只有1G内存,而我没有设置elastic search使用的内存大小,所以elastic search采用默认值1G,故启动elastic search时,elastic search进程试图向操作系统申请1G的内存空间,直接导致内存不足,触发了linux的OOM killer,OOM killer遂将刚启动的elastic search杀死。

关于elastic search的内存申请以及OOM killer:

什么是oom killer:https://www.vpsee.com/2013/10/how-to-configure-the-linux-oom-killer/

如何防止elastic search被oom killer杀死:https://stackoverflow.com/questions/25355726/prevent-elasticsearch-from-being-killed-by-oom-killer(注意,里面的ES_HEAP_SIZE的写法,在elastic search5.0中已经被ES_JAVA_OPTS代替!)

是不是给elastic search分的内存越大越好呢?不是!:https://www.v2ex.com/t/411036+++https://www.cnblogs.com/jiu0821/p/5650027.html (注意,里面的ES_HEAP_SIZE的写法,在elastic search5.0中已经被ES_JAVA_OPTS代替!)

解决办法:在环境变量/启动命令/elastic search配置文件里设置elastic search所占内存大小:修改~/.bashrc文件,加入如下两行:

第一行是JAVA_HOME环境变量,一定要配。

第二行就是elastic search所要申请的内存空间,200m的意思就是申请200MB的空间。如果想设的更大,例如4G,那么就这么写:export ES_JAVA_OPTS='-Xms4g -Xmx4g'。注意,不接受小数,例如这么写是错的:export ES_JAVA_OPTS='-Xms0.5g  -Xmx0.5g'(不应该写成0.5g而应该写成512m)。

修改完~/.bashrc后,保存退出,source ~/.bashrc让其生效。

再回到elastic search解压出的文件夹,执行./bin/elasticsearch

终于启动成功

然后新建一个putty session,以root身份登陆,在本机测试一下(为什么要在本机测试呢?因为elastic search默认只接受本机的请求,因为elastic search没有安全验证机制,所以如果要暴露端口到局域网乃至公网的话,是非常危险的,我们暂时就现在本机测试好了~,相关参考:http://bbs.360.cn/thread-14813424-1-1.html+++https://elasticsearch.cn/article/129

使用curl命令发送一个http请求到9200端口。

注意,有时,正在运行着elastic search的putty会因为超时而断开,此时如果重新登陆,需要查看一下占用9200端口/9300端口的进程,然后杀死那个进程,然后才能重新启动elastic search,否则端口被占用。

测试,成功!

sth.interesting:https://www.cnblogs.com/zlslch/p/6619089.html

elastic search安装与本地测试的更多相关文章

  1. SQL数据同步到ELK(二)- Elastic Search 安装

    开篇废话 没错,前面扯了一堆SQL SERVER,其实我连Elastic Search根本没动手玩过(是不是与时代有点脱节了?),那今天我就准备尝试安装一个ELK的简单集群出来(这个集群是使用我的小米 ...

  2. Elastic Search 安装和配置

    目标 部署一个单节点的ElasticSearch集群 依赖 java环境 $java -version java version "1.8.0_161" Java(TM) SE R ...

  3. ELASTIC SEARCH 安装

    elastic search 2017年3月18日 安装&使用 环境 表 1 环境信息 Centos cat /etc/issue CentOS release 6.8 (Final) cat ...

  4. Elastic Search安装-windows

    转载自:https://blog.csdn.net/linkkb/article/details/82805145 其中稍作修改 ElasticSearch介绍 ES是一个基于Lucene的分布式全文 ...

  5. elastic search远程测试

    elastic search远程测试 推荐:elastic官方教程:https://www.elastic.co/guide/en/elasticsearch/reference/6.2/index. ...

  6. aws ec2 安装Elastic search 7.2.0 kibana 并配置 hanlp 分词插件

    文章大纲 Elastic search & kibana & 分词器 安装 版本控制 下载地址 Elastic search安装 kibana 安装 分词器配置 Elastic sea ...

  7. elastic search&logstash&kibana 学习历程(一)es基础环境的搭建

    elastic search 6.1.x 常用框架: 1.Lucene Apache下面的一个开源项目,高性能的.可扩展的工具库,提供搜索的基本架构: 如果开发人员需用使用的话,需用自己进行开发,成本 ...

  8. Elastic Search快速上手(1):简介及安装配置

    前言 最近开始尝试学习Elastic Search,因此决定做一些简单的整理,以供后续参考,快速上手使用ES. 简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多 ...

  9. docker安装elastic search和kibana

    安装目标 使用docker安装elastic search和kibana,版本均为7.17.1 安装es 1. docker pull 去dockerhub看具体版本,这里用7.17.1 docker ...

随机推荐

  1. uva 11400 - Lighting System Design(动态规划 最长上升子序列问题变型)

    本题难处好像是在于 能够把一些灯泡换成电压更高的灯泡以节省电源的钱 .所以也才有了对最优方案的探求 好的处理方法是依照电压从小到大排序.仅仅能让前面的换成后面的.也就满足了把一些灯泡换成电压更高的灯泡 ...

  2. 品茗论道说广播(Broadcast内部机制讲解)(上)

    1 概述 我们在编写Android程序时,常常会用到广播(Broadcast)机制.从易用性的角度来说,使用广播是非常简单的.不过,这个不是本文关心的重点,我们希望探索得再深入一点儿.我想,许多人也不 ...

  3. jQuery 语法(一)

    通过 jQuery,您可以选取(查询,query) HTML 元素,并对它们执行“操作”(actions). jQuery 语法实例 $(this).hide() 演示 jQuery hide() 函 ...

  4. redis-cli 常用命令

    1.连接操作相关的命令 quit:关闭连接(connection) auth:简单密码认证 2.对value操作的命令 exists(key):确认一个key是否存在 del(key):删除一个key ...

  5. PHP——上传文件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 线程同步工具CountDownLatch

    CountDownLatch的一个非常典型的应用场景是:有一个任务想要往下执行,但必须要等到其他的任务执行完毕后才可以继续往下执行.假如我们这个想要继续往下执行的任务调用一个CountDownLatc ...

  7. redis-3.0.6安装

    此redis用来缓存跨屏账户绑定信息,安装步骤如下: ssh root@redis.td.com ,注意是root用户 tar -xzvf /nfs/install/softs/redis-3.0.4 ...

  8. xml传输过程中中文乱码

    ------------------------------------------request:----------------------------------------------- pu ...

  9. FireFox插件FirePHP调试PHP

    如果你和我一样,你会在开发网页项目时候完全无法离开FireBug.这个小巧的"臭虫"是一个神奇而有用的HTML/CSS/JavaScript/Ajax调试器.但是你也许不知道这个还 ...

  10. 经典Mathematica函数大全

    转自:http://blog.renren.com/share/238323208/8426343822  Mathmatic 函数表  一.运算符及特殊符号 Line1; 执行Line,不显示结果  ...