这篇文章比较初级,介绍的是centos7下elasticsearch的安装。

主要阅读对象是初级运维、初级大数据工程师、java工程师、想了解es的.net工程师以及所有感兴趣的朋友。

文章的目的是为了能够帮助像我一样初学linux,并对es感兴趣,但无从下手的同学。使得同学们能够快速简单的安装es。

很多同学在想学一门技术的时候,往往会在开发环境的搭建上卡上一段时间,更甚者选择最终放弃,这是非常值得深思的。

颜色比较浅的文字是辅助我们操作的,欢迎转载!

操作系统:

Centos7

=========================================

查看系统版本:

[root@localhost ~]# cat /etc/redhat-release

我的是:CentOS Linux release 7.2.1511 (Core)

查看64位还是32位

[root@localhost ~]# getconf LONG_BIT

我的是:64

=========================================

Jdk要求

至少1.8以上

=========================================

检测jdk版本:

[root@localhost /]# java –version

我的是: java version "1.8.0_121"

=========================================

下载elasticsearch

网址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz

可在windows系统里面下载好后,利用WinSCP工具拷贝到linux

我是在根目录下创建了一个”/soft”目录,将压缩文件放在了”/soft”目录下

[root@localhost /]# mkdir /soft

解压

[root@localhost soft]# tar -zxvf elasticsearch-5.2.2.tar.gz

解压后我们将其移动到”/usr/local/elasticsearch/”目录下

[root@localhost soft]# mv elasticsearch-5.2.2 /usr/local/elasticsearch

如图:

创建elasticsearch账户

因为Elasticsearch5.0之后,不能使用root账户启动,我们先创建一个elasticsearch组和账户

创建组:

[root@localhost soft]# groupadd elasticsearch

创建用户:

[root@localhost soft]# useradd elasticsearch -g elasticsearch -p elasticsearch

给用户分配目录(”/usr/local/elasticsearch”)权限:

[root@localhost soft]# chown -R elasticsearch:elasticsearch /usr/local/elasticsearch

再次查看”/usr/local/elasticsearch”目录下的权限:

[root@localhost soft]# ll /usr/local

如上图,elasticsearch的所属组和用户都发生了变化

启动elasticsearch

1、定位到目录” /usr/local/elasticsearch/”:

[root@localhost soft]# cd /usr/local/elasticsearch/

2、切换用户:

[root@localhost elasticsearch]# su elasticsearch

3、启动elasticsearch:

[elasticsearch@localhost elasticsearch]$ bin/elasticsearch

如上图,最后一行标识:started,表示启动成功

=========================================

我们可以把

[elasticsearch@localhost elasticsearch]$ bin/elasticsearch

换成

[elasticsearch@localhost elasticsearch]$ bin/elasticsearch –d

-d表示后台启动,就像windows里的最小化

我不建议新手一开始就在后台启动,因为启动时有可能会报错,如果不查看日志文件,你不会知道启动失败

=========================================

4、验证结果:

新开终端,root用户或elasticsearch用户都可以

[elasticsearch@localhost elasticsearch]$ curl http://localhost:9200

如下图,表示启动成功

IP访问设置

虽然我们在本机可以访问了,但是还不能通过IP访问,这个时候就需要开启IP访问

1、  新开终端

说明:如果是后台启动就不需要新开终端了

2、  定位到elasticsearch的配置目录

[root@localhost ~]# cd /usr/local/elasticsearch/config/

3、  编辑配置文件

[root@localhost config]# vi elasticsearch.yml

出现上图文件内容

=========================================

我操,这么多abcd字符,要是文件内容太多,这还不得看瞎我的钛合金狗眼,别怕,直接按”/”键,它表示在文件中查找指定内容,就像我们在windows里面Ctrl+F一样,然后输入你要查找的内容。

=========================================

找到

#network.host: 192.168.0.1

将前面的注释符号”#”去掉,并修改成elasticsearch服务器的IP

network.host: 192.168.1.60

保存并退出,至于怎么修改怎么保存百度下吧

4、  重启elasticsearch

A、找到elasticsearch进程

[root@localhost config]# ps aux | grep elasticsearch

B、杀死elasticsearch进程

[root@localhost config]# kill -9 4581

C、重启elasticsearch进程

参考启动elasticsearch进程

纳尼?报错:“ERROR: bootstrap checks failed”

尼玛,这啥情况?

不急,下面介绍解决方法

ERROR: bootstrap checks failed解决方法

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

原因:操作系统的vm.max_map_count参数设置太小导致的

解决办法一:

A、切换root用户

[elasticsearch@localhost elasticsearch]$ su root

B、设置vm.max_map_count

[root@localhost elasticsearch]# sysctl -w vm.max_map_count=655360

C、查看是否修改成功

[root@localhost elasticsearch]# sysctl -a | grep vm.max_map_count

如果能正常输出655360则说明修改成功

这种方法如果系统重启后,设置失效,需重新设置。不建议。

解决办法二:

直接修改/etc/sysctl.conf文件,使其永久生效

[root@localhost ~]# vi /etc/sysctl.conf

在文件末尾添加这一行:

vm.max_map_count=655360

保存并退出,如下图:

然后需要重启系统或者刷新swap分区

刷新swap分区:

[root@localhost ~]# swapoff -a && swapon -a

这种方法设置后,永久生效,建议采用这种方法。

2、  错误:max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

原因:在Linux的系统中对于进程会有一些限制

解决办法:

A、切换root用户

[elasticsearch@localhost elasticsearch]$ su root

B、编辑limits.conf

[root@localhost elasticsearch]# vi /etc/security/limits.conf

在文件末尾加入以下代码:

elasticsearch soft nofile 65536

elasticsearch hard nofile 131072

elasticsearch soft nproc 2048

elasticsearch hard nproc 4096

保存并退出

=========================================

elasticsearch表示当前我们为es设置的用户

=========================================

再次启动elasticsearch

再次启动elasticsearch,这个时候就提示成功了,如下图:

我们不妨新开终端,检测新的地址:

[root@localhost ~]# curl http://192.168.1.60:9200

这个时候输出如下图,表示OK

或者我们在另外机器的浏览器地址栏直接输入网址:http://192.168.1.60:9200也行,但前提是开启了9200端口

=========================================

开启端口:

[root@localhost ~]# firewall-cmd --zone=public --add-port=9200/tcp --permanent

重启防火墙:

[root@localhost ~]# firewall-cmd --reload

=========================================

写篇文章不容易,花了我2个小时的时间,大家给个赞吧。

centos7安装elasticsearch5.2.2的更多相关文章

  1. CentOS7安装Elasticsearch5.5.3

    一.准备 安装Java环境,elasticsearch推荐安装java1.8.0_131或更高的版本,安装教程CentOS7安装JDK1.8 二.安装 CentOS下可以选择.tar.gz或rpm方式 ...

  2. centos7安装elasticsearch-head

    elasticsearch-head安装前准备 1.操作系统64位CentOS Linux release 7.2.1511 (Core)2.git是必需的elasticsearch-head是一款开 ...

  3. centos7.2 安装 Elasticsearch5.2

    打算上全文检索,就找到了找个产品,开始研究下…… 1.官网地址: https://www.elastic.co/guide/en/elasticsearch/reference/5.2/install ...

  4. 在Centos7中安装elasticsearch5.5

    在Centos7中安装elasticsearch5.5 第一步:必须要有jre支持 elasticsearch是用Java实现的,跑elasticsearch必须要有jre支持,所以必须先安装jre ...

  5. Centos7安装moloch步骤

      Centos7安装moloch步骤 Moloch 是一个由AOL开源的,能够大规模的捕获IPv4数据包(PCAP).索引和数据库系统,由以下三个部分组成: capture :绑定interface ...

  6. HP服务器 hp 360g5 centos7安装问题

    HP服务器  hp 360g5 centos7安装问题 一 :启动盘无法识别硬盘 1.进入安装光盘,用上下键选择安装centos--Install Centos7(注意不可按Enter键),如图: 2 ...

  7. CentOS7 安装Mono及Jexus

    CentOS7安装Mono及Juxes 1 安装Mono 1.1 安装yum-utils 因为安装要用到yum-config-manager,默认是没有安装的,所以要先安装yum-utils包.命令如 ...

  8. CentOS7安装mysql提示“No package mysql-server available.”

    针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...

  9. CentOS7安装Oracle 11gR2 安装

    概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...

随机推荐

  1. CustomValidator控件用法

    虽然大部分时间一直从事asp.net的开发,对于一些常用的asp.net服务器端验证控件及它们的组合使用比较熟悉,如:CompareValidator ——比较验证控件RangeValidator — ...

  2. Mysql命令行改动字段类型

    在做微信公众平台 知识百科(账号:zhishiwiki) 时,由于字段先前设计的不合理.导致内容装不下,因此须要改动其字段类型为 text 这里使用到了 alter 命令 alter table 表名 ...

  3. 【python】Python 资源大全中文版

    申明:感谢原作者的整理与分享,本篇文章分享自:https://www.jianshu.com/p/9c6ae64a1bd7 GitHub 上有一个 Awesome - XXX 系列的资源整理,资源非常 ...

  4. mybatis-generator自动生成dao,mapping,model

    mybatis-generator下载地址:https://github.com/mybatis/generator/releases/tag/mybatis-generator-1.3.2 下载好后 ...

  5. 机器学习算法实现解析——word2vec源代码解析

    在阅读本文之前,建议首先阅读"简单易学的机器学习算法--word2vec的算法原理"(眼下还没公布).掌握例如以下的几个概念: 什么是统计语言模型 神经概率语言模型的网络结构 CB ...

  6. 菜鸟学Java(十五)——Java反射机制(二)

    上一篇博文<菜鸟学编程(九)——Java反射机制(一)>里面,向大家介绍了什么是Java的反射机制,以及Java的反射机制有什么用.上一篇比较偏重理论,理论的东西给人讲出来总感觉虚无缥缈, ...

  7. 每日英语:How Often Do Gamblers Really Win?

    The casino billboards lining America's roadways tantalize with the lure of riches. 'Easy Street. It' ...

  8. 使用windowAnimations定义Activity及Dialog的进入退出效果

    看了android的源代码和资源文件,终于明白如何去修改设置Dialog和Activity的进入和退出效果了.设置Dialog首先通过getWindow()方法获取它的窗口,然后通过getAttrib ...

  9. 说说Python程序的执行过程

    1. Python是一门解释型语言? 我初学Python时,听到的关于Python的第一句话就是,Python是一门解释性语言,我就这样一直相信下去,直到发现了*.pyc文件的存在.如果是解释型语言, ...

  10. Netty高性能之Reactor线程模型

    Netty是一个高性能.异步事件驱动的NIO框架,它提供了对TCP.UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用 ...