注意事项:

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. [论文阅读] Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks(MTCNN)

    相关论文:Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks 概论 用于人脸检测和对 ...

  2. Git篇(基础)

    安装过程省略... 至于安装目录的有关功能,略过... 一.关于初次使用的关键配置命令: 1.配置基本信息,该信息将保存在该用户目录下的.gitconfig文件内 配置用户信息$ git config ...

  3. Django REST framework+Vue 打造生鲜超市(九)

    十.购物车.订单管理和支付功能 10.1.添加商品到购物车 (1)trade/serializer.py # trade/serializer.py __author__ = 'derek' from ...

  4. [原创软件]Maya语言切换工具

    软件主要功能: 切换Maya语言 软件界面截图: 开发环境及语言: c# .NET Framework 4.0 Visual Studio 2015 更新日志: v1.0(2016.7.20) 发布初 ...

  5. Python系列-python函数(functools)

    有一些函数内置到了functools这个模块里 partial(func, *args, **keywords) from functools import partial def add(x,y): ...

  6. python 网路爬虫(二) 爬取淘宝里的手机报价并以价格排序

    今天要写的是之前写过的一个程序,然后把它整理下,巩固下知识点,并对之前的代码进行一些改进. 今天要爬取的是淘宝里的关于手机的报价的信息,并按照自己想要价格来筛选. 要是有什么问题希望大佬能指出我的错误 ...

  7. 规约模式(Specification Pattern)

    一.引言 最近在看一个项目的源码时(DDD),对里面的一些设计思想和设计思路有了一些疑问.当看到(Repository层)中使用了 spec.SatisfiedBy() 时,感觉有点懵.于是在项目中搜 ...

  8. [BZOJ 4361]isn

    Description 题库链接 给出一个长度为 \(n\) 的序列 \(A\) .如果序列 \(A\) 不是非降的,你必须从中删去一个数,这一操作,直到 \(A\) 非降为止.求有多少种不同的操作方 ...

  9. [NOIp 2016]天天爱跑步

    Description 小C同学认为跑步非常有趣,于是决定制作一款叫做<天天爱跑步>的游戏.<天天爱跑步>是一个养成类游戏,需要玩家每天按时上线,完成打卡任务. 这个游戏的地图 ...

  10. [HNOI2011]任务调度

    题目描述 有 N 个任务和两台机器 A 与 B.每个任务都需要既在机器 A 上执行,又在机器 B 上执行, 第 i 个任务需要在机器 A 上执行时间 Ai,且需要在机器 B 上执行时间 Bi.最终的目 ...