注意事项:

1.ELK版本要求5.X以上,本人使用版本:elasticsearch-6.0.0、kibana-6.0.0-linux-x86_64、logstash-6.0.0.tar

2.Elasticsearch5.x版本必须基于jdk1.8,安装环境必须使用jdk1.8

3.本人使用linux操作系统的centos6.5版本作为测试环境,其他环境命令有差异,请注意

4.本教程适合完全离线安装

5.ELK及jdk安装包下载路径:https://pan.baidu.com/s/1KAPtSt4b2kbv0u2WbQElQw 密码:087c

一、在服务器系统上准备好安装包

可通过xshell上传安装包到服务器:

二、安装jdk1.8

2.1 创建安装目录:

sudo mkdir /usr/lib/jvm

2.2 解压jdk压缩包

tar jdk-8u151-linux-x64.tar.gz -C /usr/local/jvm/

2.3 配置环境变量

进入配置文件:vim ~/.bashrc,在文档最后追加一下内容

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_151
export JRE_HOME=/usr/lib/jvm/jdk1.8.0_151/jre
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

然后按esc键,输入:wq,保存退出, 由于安装路径不同,路径需要作相应更改。

2.4 将环境变量刷新到缓存

刷新到缓存source ~/.bashrc,然后执行java -version查看是否配置成功。

三、安装Logstash

3.1 新建elk文件夹

3.2解压logstash到elk文件夹中

sudo tar xvzf installPackage/logstash-6.0.0.tar.gz -C elk/

3.3创建Logstash测试启动配置文件

在logstash文件夹的config文件夹下面创建test.conf文件,并输入一下内容: #输入

#输入
input{}
#过滤
filter{}
#输出
output{}

3.4切换到root用户启动Logstash

./bin/logstash -f config/test.conf

可能会报错:

我们发现在root用户的bashrc文件中没有我们配置好的jdk,重新在root用户下配置一下jdk环境变量,并重新启动Logstash:

上图表示启动成功。

四、安装elasticsearch

4.1 解压elasticsearch到elk文件夹中

tar xvzf installPackage/logstash-6.0.0.tar.gz -C elk/

4.2. 修改ES配置文件:

vim config/elasticsearch.yml

(elasticsearch.yml中的配置冒号前没有空格,冒号后一个空格,不然有可能报错)

4.3 启动elasticsearch

启动elasticsearch必须使用非root且没有sudo权限的用户启动,所以这里要新建一个普通用户并切换用户启动

专门为es创建个账号,然后再将这个文件夹切换到新建的这个用户下,然后用这个用户启动。 
创建用户组和用户命令如下

groupadd elasticsearch
useradd elasticsearch -g elasticsearch -p elasticsearch

账号创建完了,更改elasticsearch文件夹及内部文件的所属用户及组为elsearch:elsearch 
输入命令:

chown -R elasticsearch: /usr/local/elk/elasticsearch-6.0.0/

切换到elasticsearch文件夹下面:

使用elasticsearch用户启动  ./bin/elasticsearch

4.4 启动遇到的问题

主要下面四个错误:

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

切换到root用户,编辑limits.conf 添加类似如下内容

vi /etc/security/limits.conf

添加如下内容:

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

[2]: max number of threads [1024] for user [elasticsearch] is too low, increase to at least [4096]

切换到root用户,编辑90-nproc.conf 修改类似如下内容

*          soft    nproc     4096

[3]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

[4]: ERROR: bootstrap checks failed
system call filters failed to install; check the
logs and fix your configuration or disable system call filters at your own risk

问题原因:因为Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。

解决方法:在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

修改完错误之后切换到elasticsearch用户重新启动:

发现启动成功。

4.5 启动成功验证

执行:curl 192.168.209.131:9200,结果如下图则启动成功

或者在浏览器方访问192.168.209.131:9200

五、安装kibana

5.1 解压kibana到elk文件夹中

直接切换为root用户操作:

tar xvzf installPackage/kibana-6.0.0-linux-x86_64.tar.gz -C elk/

5.2 修改kibana配置文件

vim config/kibana.yml

修改配置:

server.host: "localhost"
elasticsearch.url: "http://localhost:9200"

其中,localhost以实际ip地址为准

5.3 启动kibana

./bin/kibana

5.4 启动验证

浏览器访问192.168.209.131:5601

表示启动成功。

到此ELK安装完成!

ELK学习记录二 :elasticsearch、logstash及kibana的安装与配置的更多相关文章

  1. ELK日志系统:Elasticsearch+Logstash+Kibana+Filebeat搭建教程

    ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程 系统架构 安装配置JDK环境 JDK安装(不能安装JRE) JDK下载地址:http://www.orac ...

  2. (转)How to Use Elasticsearch, Logstash, and Kibana to Manage MySQL Logs

    A comprehensive log management and analysis strategy is vital, enabling organizations to understand ...

  3. Material Calendar View 学习记录(二)

    Material Calendar View 学习记录(二) github link: material-calendarview; 在学习记录一中简单翻译了该开源项目的README.md文档.接下来 ...

  4. Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客

    ==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...

  5. JavaScript学习记录二

    title: JavaScript学习记录二 toc: true date: 2018-09-13 10:14:53 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...

  6. 2.VUE前端框架学习记录二

    VUE前端框架学习记录二:Vue核心基础2(完结)文字信息没办法描述清楚,主要看编码实战里面,有附带有一个完整可用的Html页面,有需要的同学到脑图里面自取.脑图地址http://naotu.baid ...

  7. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  8. ELK日志分析系统之Kibana7.x最新版安装与配置

    3.Kibana的简介 Kibana 让您能够自由地选择如何呈现自己的数据.Kibana 核心产品搭载了一批经典功能:柱状图.线状图.饼图.旭日图等等. 3.1.软件包下载地址:https://www ...

  9. Elasticsearch 7.x 最详细安装及配置

    Elasticsearch 7.x 最详细安装及配置 一.Elasticsearch 7.x 小马哥说过,学习技术栈得看版本,那么 Elasticsearch 7.x 有什么好的特性呢? ES 7.0 ...

随机推荐

  1. 对return函数的认识

    例1: def funOut(): def funIn(): print('宾果!你成功访问到我啦!') return funIn() #注意这里return的是funIn()即是一个函数 funOu ...

  2. LabelFrame

    LabelFrame组件是Frame组件的变体. 默认情况下,LabelFrame会在其子组件的周围绘制一个边框以及一个标题. 何时使用LabelFrame组件?当你想要奖一些相关的组件分为一组的时候 ...

  3. Java - Spring MVC 实现跨域资源 CORS 请求

    拦截器设置响应头 这种方式原理就是利用拦截器在方法执行前,我们增加请求的响应头,用来支持跨域请求.这种方案是可行的,大部分都是采用这种方案.我当时也是打算采用这种方案,直到我发现原来 Spring 框 ...

  4. 在Windows环境中使用Nginx, Consul, Consul Template搭建负载均衡和服务发现服务

    搭建负载均衡和服务发现服务的目的 随着网站业务的不断提升,单个服务器的性能越来越难满足客户的业务需求,所以很多情况下,需要使用多服务器实例和负载均衡器来满足业务需要. Nginx 什么是Nginx N ...

  5. LeakCanary检测内存泄漏.md

    一使用步骤 添加依赖 // 内存泄漏检测 debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.4' releaseCompile ...

  6. [LeetCode] Next Closest Time 下一个最近时间点

    Given a time represented in the format "HH:MM", form the next closest time by reusing the ...

  7. [HNOI2009]有趣的数列

    题目描述 我们称一个长度为2n的数列是有趣的,当且仅当该数列满足以下三个条件: (1)它是从1到2n共2n个整数的一个排列{ai}: (2)所有的奇数项满足a1<a3<...<a2n ...

  8. 洛谷P3233 [HNOI2014]世界树

    虚树= = #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring&g ...

  9. empty()和size()的优劣

    通常下面代码: if(c.size() == 0) if(c.empty()) 我们会觉得它们是是等价的. 为何empty()比较好? 主要是他们之间的效率有一定差距: empty对任意的容器都是常数 ...

  10. hdu 3397 线段树双标记

    Sequence operation Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...