centos7安装elasticsearch5.2.2
这篇文章比较初级,介绍的是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的更多相关文章
- CentOS7安装Elasticsearch5.5.3
一.准备 安装Java环境,elasticsearch推荐安装java1.8.0_131或更高的版本,安装教程CentOS7安装JDK1.8 二.安装 CentOS下可以选择.tar.gz或rpm方式 ...
- centos7安装elasticsearch-head
elasticsearch-head安装前准备 1.操作系统64位CentOS Linux release 7.2.1511 (Core)2.git是必需的elasticsearch-head是一款开 ...
- centos7.2 安装 Elasticsearch5.2
打算上全文检索,就找到了找个产品,开始研究下…… 1.官网地址: https://www.elastic.co/guide/en/elasticsearch/reference/5.2/install ...
- 在Centos7中安装elasticsearch5.5
在Centos7中安装elasticsearch5.5 第一步:必须要有jre支持 elasticsearch是用Java实现的,跑elasticsearch必须要有jre支持,所以必须先安装jre ...
- Centos7安装moloch步骤
Centos7安装moloch步骤 Moloch 是一个由AOL开源的,能够大规模的捕获IPv4数据包(PCAP).索引和数据库系统,由以下三个部分组成: capture :绑定interface ...
- HP服务器 hp 360g5 centos7安装问题
HP服务器 hp 360g5 centos7安装问题 一 :启动盘无法识别硬盘 1.进入安装光盘,用上下键选择安装centos--Install Centos7(注意不可按Enter键),如图: 2 ...
- CentOS7 安装Mono及Jexus
CentOS7安装Mono及Juxes 1 安装Mono 1.1 安装yum-utils 因为安装要用到yum-config-manager,默认是没有安装的,所以要先安装yum-utils包.命令如 ...
- CentOS7安装mysql提示“No package mysql-server available.”
针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...
- CentOS7安装Oracle 11gR2 安装
概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...
随机推荐
- springboot 多环境配置yml或properties
https://www.cnblogs.com/mr-yang-localhost/p/8971327.html springboot 多环境配置 https://blog.csdn.net/li ...
- grafana + influxdb + telegraf
grafana + influxdb + telegraf , 构建性能监控平台http://www.cnblogs.com/Scissors/p/5977670.html https://docs. ...
- Android基础知识之Manifest中的Intent-filter元素
原文:http://android.eoe.cn/topic/android_sdk :指定活动.服务.或者广播接收者能支持的intent的类型.一个意图过滤器声明了其父组件的能力——一个活动或者服务 ...
- iOS-登录认证/json解析
用户输入用户名和密码,点击登录...我们把用户名和密码(用post方式或者get方式,get方式多用于测试看你需要)传给服务器,服务器进行判断,然后返回一个接口给我们(这里服务器返回的json接口,正 ...
- [svc][op]磁盘(结构)容量计算
磁盘结构和容量计算 fdisk -l显示信息详解 [root@www.linuxidc.com ~]# fdisk -l Disk /dev/sda: bytes heads, sectors/tra ...
- 记一次docker问题定位(perf,iostat等性能分析)
背景 最近参与的项目是基于 OpenStack 提供容器管理能力,丰富公司 IaaS 平台的能力.日常主要工作就是在开源的 novadocker 项目(开源社区已停止开发)基础上进行增强,与公司的其他 ...
- SQL 中 replace 替换字符串中的字符 ''
update CfmRcd set reconsource=replace(reconsource,'''',''), cmffile =replace(cmffile,'''',''), cfmda ...
- vim中权限不足时不用退出而强制保存
命令: :w !sudo tee % 此命令是把当前文件(即%)作为stdin传给sudo tee命令来执行.说起来挺绕口,其实就是:用sudo强制保存. 有时候在自己机器上折腾的时候需要更改一些 ...
- sql乘法函数实现方式
sql中有很多聚合函数,例如 COUNT.SUM.MIN 和 MAX. 但是唯独没有乘法函数,而很多朋友开发中缺需要用到这种函数,今天告诉大家一个不错的解决方案 logx+logy=logx*y 这是 ...
- netty的线程池-----揭示了使用两个线程池的原因
线程模型是Netty的核心设计,设计地很巧妙,之前项目中有一块处理并发的设计和Netty的Eventloop单线程设计类似,效果得到了实证. Netty5的类层次结构和之前的版本变化很大,网上也有很多 ...