安装Elasticsearch

注:本人服务器为CentOS7.3镜像

1、下载JDK

在安装JDK之前需要检查是否已存在其他版本JDK。

采用如下命令可查看当前已存在JDK版本:

java -version

安装新的JDK之前需卸载原有JDK,具体操作可baidu。

这里给一个链接:https://www.cnblogs.com/xinjie10001/p/6287124.html

注:由于我的服务器是pure 镜像,所以不存在JDK,因此没有卸载JDK这一步操作。

JDK下载链接:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

下载之后上传到服务器某一目录,本人放置在/opt目录。

使用tar命令进行解压:

tar zxf jdk-8u161-linux-x64.tar.gz

接下来配置JAVA环境变量,先使用如下命令打开环境变量配置文件:

vim /etc/profile

在打开后的profile中,输入字符i对文档进行编辑,在文件末尾插入如下内容:

export JAVA_HOME=/opt/jdk1.8.0_161
export JAVA_BIN=/opt/jdk1.8.0_161/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH

插入完成后按ESC键再输入:wq:x保存文件并退出。

注:/opt/jdk1.8.0_161为JDK解压后的文件所放置的目录

2、下载Elasticsearch

Linux系统下直接可采用如下命令进行下载:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.3.tar.gz

另外,也可直接在官网下载后上传到服务器某一目录。

下载Elasticsearch后使用如下命令进行解压:

tar zxf elasticsearch-6.2.3.tar.gz

进入elasticsearch-6.2.3的bin目录,使用如下命令执行脚本elasticsearch

./elasticsearch

3、内存不足问题

按上述操作此时会出现如下问题:

此时应该是表示内存不足

解决方法:

进入elasticsearch-6.2.3的config目录,使用如下命令进入jvm.options配置文件:

vim ./jvm.options

将文件中下图所示的-Xms1g和-Xmx1g改为-Xms200m和-Xmx200m

4、root用户不能执行elasticsearch脚本问题

此时返回bin目录重新运行脚本elasticsearch会出现如下问题:

该问题表示不能使用root用户运行该脚本,为此我们可以为elasticsearch新建一个用户ES。

具体操作见下图:

使用如下命令为该用户获取访问/opt目录的权限:

chown ES /opt -R

切换到用户ES,执行bin目录下的elasticsearch脚本,具体操作见下图:

这说明elasticsearch启动成功,但不要激动得太早,我们需要通过9200端口访问elasticsearch服务,具体操作见下图:

如果出现上图所示的JSON信息,说明Elasticsearch启动成功。

5、外网访问云服务器的Elasticsearch

进入config目录将elasticsearch.yml配置文件中的network.host修改为0.0.0.0并去掉其前面的#号,命令为:

vim ./elasticsearch.yml

具体修改操作如下图所示:

返回bin目录重新运行elasticsearch脚本,此时会出现如下问题:

针对问题1:

解决方法:

使用如下命令打开/etc/security/limits.conf:

vim /etc/security/limits.conf

在该配置文件中添加如下内容:

*               soft    nproc           4096
* hard nproc 4096

具体见下图:

注:这里文件的打开需要切换到root用户,因为ES用户不能改变该配置文件。

针对问题2:

解决方法:

使用如下命令打开/etc/sysctl.conf:

vim /etc/sysctl.conf

增加配置vm.max_map_count=262144

具体见下图:

执行命令sysctl -p生效。

重新启动服务器,再运行elasticsearch脚本,此时便没有错误了。

本地访问9200端口:

在云服务器安全组打开9200端口:

外网浏览器访问服务器9200端口:

此外,还可能遇到问题3:

max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

解决方法:

使用如下命令打开/etc/security/limits.conf:

vim /etc/security/limits.conf

在该配置文件中添加如下内容:

*               soft    nofile           65536
* hard nofile 65536
后台运行Elasticsearch命令:

./elasticsearch -d

Reference

[1]. https://www.jianshu.com/p/658961f707d8

[2]. http://kael-aiur.com/elk/ES配置给外部机器通过ip访问.html

[3]. https://www.cnblogs.com/zhi-leaf/p/8484337.html

[4]. https://blog.csdn.net/u010781176/article/details/79489151

Linux云服务器安装Elasticsearch的更多相关文章

  1. Linux云服务器安装tomcat

    安装tomcat需要安装JDK 1.上传 把下载好的tomcat压缩包(apache-tomcat-7.0.tar.gz)和jdk(jdk-7u76-linux-x64.tar.gz)压缩包上传到/u ...

  2. 阿里云服务器Linux系统安装配置ElasticSearch搜索引擎

    近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...

  3. Linux系统中ElasticSearch搜索引擎安装配置Head插件

    近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...

  4. 记录云服务器安装node

    今天买了台云服务器,准备玩玩,对于之前没接触过Linux的我是一头雾水,登陆后进去就是一个黑黑的终端,一点也不友好,所以特地记录一下登陆以及安装node的过程 先记录一下登陆 登陆方式一: 那就是账号 ...

  5. 阿里云服务器安装Docker并部署nginx、jdk、redis、mysql

    阿里云服务器安装Docker并部署nginx.jdk.redis.mysql 一.安装Docker 1.安装Docker的依赖库 yum install -y yum-utils device-map ...

  6. linux云主机怎么安装WDCP

    linux云主机 教你成功安装WDCP的2个方法(第一个不成功就试第2个) 工具/原料   Xshell 云服务器 方法/步骤   1 先用Xshell连接你的服务器 2 输入一下代码    wget ...

  7. Linux云主机安装JDK,配置hadoop的详细方式

    云主机我使用的是青云的,还有好多其他品牌,比如阿里云 unitedstack 等等. 注册完青云后,会有试用券发到账户,可以利用此券试用其服务. 1 首先创建好一个主机,按照提示选择好系统,创建好一个 ...

  8. 记录Linux下安装elasticSearch时遇到的一些错误

    记录Linux下安装elasticSearch时遇到的一些错误 http://blog.sina.com.cn/s/blog_c90ce4e001032f7w.html (2016-11-02 22: ...

  9. Linux云自动化运维第三课

    Linux云自动化运维第三课 一.正则表达式 1.匹配符 * ###匹配0到任意字符 ? ###匹配单个字符 [[:alpha:]] ###匹配单个字母 [[:lower:]] ###匹配单个小写字母 ...

随机推荐

  1. FileReader对象的readAsDataURL方法来读取图像文件

     FileReader对象的readAsDataURL方法可以将读取到的文件编码成Data URL.Data URL是一项特殊的技术,可以将资料(例如图片)内嵌在网页之中,不用放到外部文件.使用Dat ...

  2. 总结linux路由技术

    Linux系统的route命令用于显示和操作IP路由表,要实现两个不同的网段之间的通信,需要一台连接两个网络的路由器,或者同时连接位于两个网络的网关来实现. 在Linux系统中,设置路由通常是为了解决 ...

  3. Ajax教程(转载)

    第 1 页 Ajax 简介Ajax 由 HTML.JavaScript™ 技术.DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序.本文的作者是一 ...

  4. 记录某公司(简称SMKJ) 的一次面试

    昨天去了一家公司面试 Java 开发岗位,这篇文章主要是做一个面试的记录以及总结. 这家公司的规模大概100-200人,环境还可以,在一栋大厦租了两层办公室(31层和32层).一同搭电梯上去的还有一位 ...

  5. alpha-咸鱼冲刺day8-紫仪

    总汇链接 一,合照 emmmmm.自然还是没有的. 二,项目燃尽图 三,项目进展 正在进行页面整合.然后还有注册跟登陆的功能完善-- 四,问题困难 数据流程大概是搞定了.不过语法不是很熟悉,然后还有各 ...

  6. 实验四 Android程序设计 实验报告

    实验四 Android程序设计 实验报告 目录 代码托管地址 Android程序设计-1 Android程序设计-2 Android程序设计-3 Android程序设计-4 Android程序设计-5 ...

  7. 201621123040《Java程序设计》第13周学习总结

    1.本周学习总结 2.为你的系统增加网络功能(购物车.图书馆管理.斗地主等)-分组完成 2.1简述你想为你的系统增加什么网络功能?设计思路是什么? 创建服务器端端口(3333),当用户以客户端身份访问 ...

  8. 201621123057 《Java程序设计》第8周学习总结

    1. 本周学习总结 思维导图归纳总结集合相关内容. 2. 书面作业 1. ArrayList代码分析 1.1 解释ArrayList的contains源代码 ArrayList是允许重复的,但当用它来 ...

  9. itchat 微信的使用

    #coding=utf8 import itchat # 自动回复 # 封装好的装饰器,当接收到的消息是Text,即文字消息 @itchat.msg_register('Text') def text ...

  10. 【iOS】swift-Binary operator '|' cannot be applied to two UIViewAutoresizing operands

    let view = UIView(frame: CGRect(x: 0, y: 0, width: 320, height: 568)) addSubview(view) view.autoresi ...