Centos 7安装和配置 ElasticSearch入门小白

实验环境:

操作系统:Centos 7.5

服务器ip:192.168.1.198

运行用户:root

网络环境:Internet

在企业生产环境有很多服务器的时候、很多业务模块的日志的时候运维人员需要每时每刻查看日志,这样的工作量是非常庞大的,这样就没有时间做其它的工作, Elasticsearch是个开源分布式搜索引擎,它的特点有:开源、灵活性、分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等,配置简单,一般都是结合Logstash、kibana使用,现在做运维的都知道有一个ELK,就是Elasticsearch、Logstash、kibana的简写,使用比较广泛、功能强大,简化运维操作步骤,还可以实现有错误日志或者故障自动报警,如果服务器有故障,可以通过告警方式发送个管理员,支持企业微信、企业钉钉、短信等告警方式,大家可以尝试去部署,目前还支持docker部署。

Elasticsearch是用来存储各类日志格式的组件;Logstash是用来收集、处理、分析日志等,并将其存储供以后使用;kibana是一个web可视化界面的日志查询组件,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志展示出来。这3个组件都是开源的,而且是在Linux平台上面运行的,所以还是需要有点Linux基础才能部署,现在大型的企业一般都是在Linux部署ELK系统,如果没有Linux基础的可以去了解下Linux基础知识或者参考《Linux就该这么学》网站上面的资料比较全面,直接在百度里面输入这本书的名称就能找到官网,此书名的作者是刘遄,此书比较适合企业应用,本文主要介绍在Linux操作系统下面如何安装及部署ElasticSearch组件。

Elasticsearch非常容易上手,Elasticsearch也是一个基于Apache的开源搜索引擎来提供了许多合理的默认缺省值,并对初学者隐藏了复杂的搜索引擎理论。它开箱即用(安装即可使用),只需懂点Linux基础及很少的学习既可在生产环境中使用,Elasticsearch也使用Java开发,并使用Lucene作为其核心架构来实现所有索引和搜索的功能性的组件,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单,比较适合于初学者。

一、运行环境

JDK:1.8.0_171(JAVA_SE)

Elasticsearch-6.3.1 (JDK只能用1.8版本)

Logstash-6.3.1

kibana-6.3.1

二、安装Java、Elasticsearch

1、安装JDK

下载JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html;本环境下载的是64位tar.gz包,将安装包拷贝至安装服务器/usr/local目录

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

[root@localhost local]# tar -xzvf jdk-8u171-linux-x64.tar.gz

[root@localhost local]# mv jdk1.8.0_171 java

2、配置JDK环境变量

方法一:

[root@localhost local]# vim /etc/profile

将下面的内容添加至文件末尾(假如服务器需要多个JDK版本,为了ELK不影响其它系统,也可以将环境变量的内容稍后添加到ELK的启动脚本中)

JAVA_HOME=/usr/local/java

JRE_HOME=/usr/local/java/jre

CLASSPATH=.:$JAVA_HOME/lib:/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$PATH:$JAVA_HOME/bin

[root@localhost local]# source /etc/profile

[root@localhost local]# chmod +x /etc/rc.local

[root@localhost local]# vim /etc/rc.local

source /etc/profile      //添加此行

方法二:

直接吧java.sh放到/etc/profile.d/,重启系统

[root@localhost local]# vim /etc/profile.d/java.sh

export JAVA_HOME=/usr/local/java

export JRE_HOME=${JAVA_HOME}/jre

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH

[root@centos7 ~]# java -version  //查看java版本,测试JDK是否配置成功

java version "1.8.0_171"

Java(TM) SE Runtime Environment (build 1.8.0_171-b11)

Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

配置limit相关参数

[root@localhost local]# vim /etc/security/limits.conf

添加以下内容

* soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096

ulimit -u 4096

[root@localhost local]vim /etc/security/limits.d/20-nproc.conf

修改如下内容:

* soft nproc 1024 #修改为 * soft nproc 2048  或soft nproc 4096   (根据CPU定,最低是2048)

#vim /etc/sysctl.conf

//添加下面配置: v

m.max_map_count=655360

//并执行命令:

#sysctl -p

编辑elasticsearch配置文件

#vim usr/local/elasticsearch-5.6.0/config/elasticsearch.yml

cluster.name: nmtx-cluster

node.name: node-1

path.data: /usr/local/elk/data

path.logs: /usr/local/elk/logs

network.host: 192.168.3.104

http.port: 9200

创建运行ELK的用户

[root@localhost local]# groupadd elk

[root@localhost local]# useradd -g elk elk

创建ELK运行目录

[root@localhost local]# mkdir -p /usr/local/elk

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

关闭防火墙:

[root@localhost ~]# iptables -F

以上全部是root用户完成

3、安装ELK

以下由elk用户操作

以elk用户登录服务器

下载ELK安装包:https://www.elastic.co/downloads,并上传到服务器且解压,解压命令:tar -xzvf 包名

配置Elasticsearch

修改如下内容:

保存退出

启动Elasticsearch

查看是否启动成功

用浏览器访问:http://192.168.10.169:9200

Elasticsearch安装完毕

vi /etc/security/limits.conf

//添加如下内容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

问题三:max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

解决:切换到root用户,进入limits.d目录下修改配置文件。

vi /etc/security/limits.d/90-nproc.conf

//修改如下内容:

* soft nproc 1024 #修改为 * soft nproc 2048

问题四:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

解决:切换到root用户修改配置sysctl.conf

vi /etc/sysctl.conf

//添加下面配置:

vm.max_map_count=655360

//并执行命令:

sysctl -p 然后,重新启动elasticsearch,即可启动成功。

4、测试,出现下面说明启动elasticsearch成功。

[root@centos7 local]# curl http://127.0.0.1:9200

{

"name" : "pcncnlr",

"cluster_name" : "elasticsearch",

"cluster_uuid" : "uCqIPKYqT_au90cjmtj1rw",

"version" : {

"number" : "6.3.1",

"build_flavor" : "default",

"build_type" : "tar",

"build_hash" : "eb782d0",

"build_date" : "2018-06-29T21:59:26.107521Z",

"build_snapshot" : false,

"lucene_version" : "7.3.1",

"minimum_wire_compatibility_version" : "5.6.0",

"minimum_index_compatibility_version" : "5.0.0"

},

"tagline" : "You Know, for Search"

}

转载于:https://blog.51cto.com/14163835/2357412

Centos 7安装和配置 ElasticSearch入门小白相关推荐

  1. centos7 安装jdk_Centos 7安装和配置 ElasticSearch入门小白

    实验环境: 操作系统:Centos 7.5 服务器ip:192.168.1.198 运行用户:root 网络环境:Internet 在企业生产环境有很多服务器的时候.很多业务模块的日志的时候运维人员需 ...

  2. 在CentOS上安装和配置OpenNebula入门实例

    导读 我们提到的云计算一般有三种类型:软件即服务(Software as a service, SaaS),平台即服务(Platform as a Service, PaaS)和基础架构即服务(Inf ...

  3. CentOS FTP安装及配置

    CentOS  FTP安装及配置 LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftp ...

  4. CentOS下安装及配置MySQL

    大家好,我是中国码农摘星人. 欢迎分享/收藏/赞/在看! 欢迎提出使用本篇文章安装 MySQL 时遇到的问题,本篇文章会持续更新- MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公 ...

  5. CentOS下安装及配置Tomcat

    大家好,我是中国码农摘星人. 欢迎分享/收藏/赞/在看! Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用, ...

  6. Mahout学习之Mahout简介、安装、配置、入门程序测试

    一.Mahout简介 查了Mahout的中文意思--驭象的人,再看看Mahout的logo,好吧,想和小黄象happy地玩耍,得顺便陪陪这位驭象人耍耍了... 附logo: (就是他,骑在象头上的那个 ...

  7. CentOS 7安装及配置(入门级)

    CentOS 7安装及配置(入门级) 一.创建虚拟机 点击关闭-->完成,出现如下页面,点击开启虚拟机: 按上键,选择第一个,回车: 进入主界面,这里我没有选择中文,需要的自行选择,开发使用英文 ...

  8. debian nvidia 安装_【折腾】openSUSE安装与配置——从入门到放弃

    [写在前面] 小编之前电脑上用的是ubuntu20.04.1 LTS和Windows10双系统,最近ubuntu不知道出了什么问题,一打开软件就显示未知错误,强迫症的我决定彻底放弃ubuntu转投op ...

  9. 在CentOS上安装和配置Guacamole

    一.环境说明 操作系统:CentOS 6.4 x86_64 主机IP:192.168.38.20 登录账户:root 二.安装编译和运行环境 1. 关闭防火墙 在Shell中运行以下命令: chkco ...

  10. CentOS SSH安装与配置

    为什么80%的码农都做不了架构师?>>>    SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH ...

最新文章

  1. 【error】error: field * has incomplete type
  2. 关于java环境配置问题
  3. 开源CDN加速管理工具 OpenCDN
  4. 适合程序员的四大字体
  5. 【转载】ShowWindow函数
  6. vep文件如何转换mp4_如何将DVD的vob视频格式转换成mp4格式
  7. php+mysql记事本_一个简单记事本php操作mysql辅助类创建
  8. GIS人眼中的“云GIS”
  9. python terminal_在PyCharm的 Terminal(终端)切换Python版本的方法
  10. Oracle数据泵对已经存在的表加载索引
  11. 基于IPS7LnkNet.Advanced的S7Watch 西门子PLC调试工具
  12. axure中继器求和_Axure学习笔记:中继器之价格统计
  13. PC端网页布局——世纪佳缘(四)注册登录
  14. 贝叶斯网络大白话教程
  15. HTML5个人简历模板制作
  16. xp系统怎么创建服务器新用户,xp系统ftp服务器创建用户
  17. EasyGBS通过GB2818下载流程结合抓包数据详细记录
  18. Word标准简单格式
  19. 纯css绘制齿轮加载动画
  20. selenium中ByChained方法

热门文章

  1. mysqld已删除但仍占用空间的_活见鬼,明明删除了数据,空间却没减少
  2. vm14远程连接服务器,VisualVM 远程连接服务器
  3. PHP获取git提交信意_代码提交规范检查与修复 php_codesniffer + composer-git-hooks
  4. python3.6.5 安装第三方库
  5. python文件传输模块_Python socket模块ftp传输文件过程解析
  6. flutter 判断是不是调试模式_Flutter之撸一个漂亮的登录界面的总结
  7. java怎么递归_什么是递归?用Java写一个简单的递归程序
  8. java版本号分段比较_java比较版本号大小
  9. 算法----其他排序
  10. 部分关键字--this/extends/super/static/final/abstract/访问权限总结