Centos7.5搭建ELK-6.5.0日志分析平台
Centos7.5搭建ELK-6.5.0日志分析平台
1. 简介
工作工程中,不论是开发还是运维,都会遇到各种各样的日志,主要包括系统日志、应用程序日志和安全日志,对于开发人员来说,查看日志,可以实时查看程序的运行错误,以及性能分析,通常,一个大中型的应用程序会被部署到多台服务器,那日志文件也会分散到不同的机器上,这样查看日志难道要一台一台去查看?显然是太麻烦了,开源的日志分析系统 ELK 完美的解决了这个问题。
ELK 并不是一个独立的系统,她是由 ElasticSearch、Logstash、Kibana 三个开源的工具组成。
ElasticSearch
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
Logstash
Logstash 是一个开源的日志分析、收集工具,并将日志存储以供以后使用。
Kibana
Kibana 是一个为 Logstash 和 ElasticSearch 提供的日志分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。
2. 安装
下载elk的三个组建,es,logstash,kibana
https://artifacts.elastic.co/downloads/logstash/logstash-6.5.0.tar.gz
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.0.tar.gz
https://artifacts.elastic.co/downloads/kibana/kibana-6.5.0-linux-x86_64.tar.gz
设置参数
设置内核参数
vim /etc/sysctl.conf # 添加下面一行
vm.max_map_count = 262144
systcl -p ## 加载配置
修改系统最大文件打开数
vim /etc/security/limits.conf ##添加如下两行,保存后重新登陆用户及生效
* soft nofile 65536
* hard nofile 65536
关闭防火墙
service firewalld stop
解压并移动
## 新建目录
mkdir /usr/local/elk
## 解压
tar -vxzf elasticsearch-6.5.0.tar.gz
tar -vxzf kibana-6.5.0-linux-x86_64.tar.gz
tar -vxzf logstash-6.5.0.tar.gz
## 移动
mv elasticsearch-6.5.0 /usr/local/elk/
mv kibana-6.5.0-linux-x86_64 /usr/local/elk/
mv logstash-6.5.0 /usr/local/elk/
安装elasticsearch数据存储器,用于数据存储
vim /usr/local/elk/elasticsearch-6.5.0/config/elasticsearch.yml
# ---------------------------------- Cluster -----------------------------------
cluster.name: ES-cluster ##设置集群名称,集群内的节点都要设置相同,可自定义
# ------------------------------------ Node ------------------------------------
node.name: node-1 ## 节点名称,自定义,各个节点不可相同
# ----------------------------------- Paths ------------------------------------
path.data: /usr/local/elk/elasticsearch-6.5.0/data
path.logs: /usr/local/elk/elasticsearch-6.5.0/logs
# ---------------------------------- Network -----------------------------------
network.host: 192.168.9.90 ## 本机IP
http.port: 9200 ## 端口,默认9200
# --------------------------------- Discovery ----------------------------------
discovery.zen.ping.unicast.hosts: ["192.168.9.89","192.168.9.90"] ## 此集群内所有节点的IP地址,这里没有使用自动发现,而是指定地址发现,因为规模较小
discovery.zen.minimum_master_nodes: 1
添加用户,不能使用root用户启动
groupadd -g 1008 elasticsearch
useradd -g 1008 -u 1008 elasticsearch
chown -R elasticsearch:elasticsearch /usr/local/elk/elasticsearch-6.5.0/
启动elasticsearch
su elasticsearch
./elasticsearch
## 验证是否启动成功
ps -ef | grep elasticsearch
安装kibana
vim /usr/local/elk/kibana-6.5.0-linux-x86_64/config/kibana.yml
server.port: 5601 ## kibana默认端口
server.host: "192.168.9.90" ## 服务的host,直接填本机IP即可。
elasticsearch.url: "http://192.168.9.89:9200" ## elasticsearch的连接地址,集群时,连接其中一台节点即可。
启动kibana
cd bin
./kibana
安装logstash
vim /usr/local/elk/logstash-6.5.0/config/logstash.yml
##修改host为0.0.0.0,这样别的电脑就可以连接整个logstash,不然只能本机连接。
http.host: "0.0.0.0"
配置logstash配置文件,保存在elk/conf/all.conf
input { ## input为输入口
redis {
data_type => "list" ## 队列输入,默认输入类型为list
db => 10 ## 指定redis库
key => "redis-pipeline" ## redis是key-value式的内存数据库,指定key即是指定队列的标识key的大概意思
host => "192.168.9.79" ## 下面是连接信息,如果有密码则需要添加password这一项
port => "6379"
threads => 5 ## 线程数
}
} filter { ## 过滤器filter
grok { ## grok插件,可以通过正则匹配,将日志的message进行格式化转换。
match => ["message","%{YEAR:YEAR}-%{MONTHNUM:MONTH}-%{MONTHDAY:DAY} %{HOUR:HOUR}:%{MINUTE:MIN}:%{SECOND:SEC},(?<MSEC>([0-9]*)) %{LOGLEVEL:loglevel} \[(?<Classname>(.*))\] - (?<Content>(.*))"]
}
} output { ## 输出elasticsearch
elasticsearch {
hosts => ["192.168.9.89:9200","192.168.9.90:9200"] ## 输出的elasticsearch的数据节点IP
index => "logstash-test" ## 索引值
#user => "elastic" ## elasticsearch 的用户密码,需要安装x-pack才会有,这里先不用
#password => "changeme"
}
}
启动logstash
cd /usr/local/elk/logstash-6.5.0/bin
./logstash -f /usr/local/elk/conf/all.conf
到现在,elk的三个组建就全部启动了。
Centos7.5搭建ELK-6.5.0日志分析平台的更多相关文章
- centos7搭建ELK Cluster集群日志分析平台
应用场景:ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平台 ...
- centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试
续之前安装好的ELK集群 各主机:es-1 ~ es-3 :192.168.1.21/22/23 logstash: 192.168.1.24 kibana: 192.168.1.25 测试机:cli ...
- centos7搭建ELK Cluster集群日志分析平台(三):Kibana
续 centos7搭建ELK Cluster集群日志分析平台(一) 续 centos7搭建ELK Cluster集群日志分析平台(二) 已经安装好elasticsearch 5.4集群和logst ...
- centos7搭建ELK Cluster集群日志分析平台(二):Logstash
续 centos7搭建ELK Cluster集群日志分析平台(一) 已经安装完Elasticsearch 5.4 集群. 安装Logstash步骤 . 安装Java 8 官方说明:需要安装Java ...
- centos7搭建ELK Cluster集群日志分析平台(一):Elasticsearch
应用场景: ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平 ...
- Centos7下ELK+Redis日志分析平台的集群环境部署记录
之前的文档介绍了ELK架构的基础知识,日志集中分析系统的实施方案:- ELK+Redis- ELK+Filebeat - ELK+Filebeat+Redis- ELK+Filebeat+Kafka+ ...
- ELK+redis搭建nginx日志分析平台
ELK+redis搭建nginx日志分析平台发表于 2015-08-19 | 分类于 Linux/Unix | ELK简介ELKStack即Elasticsearch + Logstas ...
- linux下利用elk+redis 搭建日志分析平台教程
linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...
- ELK日志分析平台系统windows环境搭建和基本使用
ELK(ElasticSearch, Logstash, Kibana),三者组合在一起就可以搭建实时的日志分析平台啦! Logstash主要用来收集.过滤日志信息并将其存储,所以主要用来提供信息. ...
随机推荐
- TCP/IP以及Socket对象基本
1 OSI七层模型概念介绍 物理层:数据以比特的方式进行传递,典型的设备是集线器.该层主要规定了设备的电压或者端口等等一些列物理层面上的规定 数据链路层:该层数据以帧的方式进行传递,主要是两个 ...
- C++类中的常数据成员和静态数据成员的区别
刚开始学习C++的类和对象的部分,对类中的常数据成员和静态数据成员的概念和用法经常混淆,所以今天整理一下,顺便说一下,今天是我的生日,祝我生日快乐,呵呵. 常数据成员 常数据成员是指在类中定义的不能修 ...
- p2023&bzoj1798 维护序列
传送门(洛谷) 传送门(bzoj) 题目 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成. 有长为N的数列,不妨设为a1,a2,…,aN .有如下三种操作形式: (1)把数列中的一段数全 ...
- 6.6 chmod的使用
从公司拷贝了白天整理的笔记,拿回家整理,结果发现有锁,无法对其解压.解决方案如上: ll 命令,查看其权限. sudo chmod 777 Picture.tar-1修改权限. 然后,可以正常打开Pc ...
- “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第五篇(用户管理之“用户权限分配”)
一.在做权限分配之前,首先先了解“ZTree”这个插件,我的这个系统没有用Jquery-EasyUI的Tree.用的是”ZTree“朋友们可以试试,也很强大.点击下载ZTree插件. 1. ...
- 2018上海大都会邀请赛J(数位DP)
#include<bits/stdc++.h>using namespace std;int num[20];//按位储存数字int mod;long long dp[20][110][1 ...
- vue里的tab标签
<template> <div class="Test2"> <div class="tabs_wrap" v-model=&qu ...
- java整理(二)
1.this关键字.this表示属性,表示方法和当前对象. this.属性调用属性. 方法分为两类,构造方法和普通方法,他们的调用形式是不同的.调用本类的方法this.方法()(这是调用普通方法)如果 ...
- java poi操作创建xslx或xsl文件,存本地和进行网络传输两种方式集成
package com.java.zxf.util; import java.io.IOException; import java.io.OutputStream; import java.net. ...
- Python网络爬虫(四)
关于Robots协议 Robots协议也称为爬虫协议,是网络爬虫排除标准(Robots Exclusion Protocol),用来告诉爬虫和搜索引擎哪些页面可以抓取,哪些不可以抓取.因为我们如果无限 ...