-
ElK日志收集系统
2020-10-28 16:29:51ElK日志收集系统 什么叫ELK Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制, restful 风格接口,多数据源,自动搜索负载等。 Logstash 是一个完全开源...ElK日志收集系统
什么叫ELK
Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制, restful 风格接口,多数据源,自动搜索负载等。
Logstash 是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索)。
kibana 也是一个开源和免费的工具,他 Kibana 可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。工作原理
File:C:/Users/fan/AppData/Local/YNote/data/qqE64F7CF5CBE1C35803FB7DE819C59BA9/0a87484a39ee410e85c11e6f29095b70/elk.png
在需要收集日志的所有服务上部署 logstash ,作为 logstash agent ( logstash shipper )用于监控并过滤收集日志,将过滤后的内容发送到 logstash indexer , logstash indexer 将日志收集在一起交给全文搜索服务 ElasticSearch ,可以用 ElasticSearch 进行自定义搜索通过 Kibana 来结合自定义搜索进行页面展示。elk的主要功能是什么
简单说就是elk 对日志收集汇总以及检索 的一套程序组合。
日志分很多种,包括系统日志,程序日志,安全日志,访问日志等,通常分布在不同的服务器上,这时候我们需要把日志汇总到一起进行分析。logstash的功能。
日志汇总后,我们需要对日志进行分析统计等。例如nginx日志,今天的访问量多少啊,500错误多少,请求返回的平均时长 是多少等等。传统的我们会用grep awk wc cut等来实现。现在我们用Elasticsearch来实现
分析完日志以后,我们需要做个汇总,比如给别人发邮件,为了形象地展示数据,我们需要excel来画个图。kibana的功能。部署文档见附件
目前cbas 主要采集hadoop一些组件的程序日志,例如flume,kafka,storm等。用flume程序替换掉logstash。我们可以叫这个系统EFK。
访问地址
http://172.21.54.20:5601/
elasticsearch集群增加节点
1、按照附件中的文档部署jdk和es,其中es的elasticsearch.yml配置文件中cluster.name和172.21.54.20的保持一致,即cluster.name: es_hxmonitor
vim jvm.options
elasticsearch.yml2、打开elasticsearch.yml配置文件中的discovery.zen.ping.unicast.hosts配置项,配置成discovery.zen.ping.unicast.hosts: [“wcjf_cbas_elk_215_20”, “wcjf_cbas_elk_54_95”]
/home/elk/elasticsearch-5.0.1/bin/elasticsearch-plugin install file:///home/elk/x-pack-5.0.1.zip
3、启动95上的es
/home/elk/elasticsearch-5.0.1/bin/elasticsearch -d4、访问http://172.21.54.95:9200/_nodes?pretty,查看并确认95节点是否已经添加到集群中
{
“_nodes” : {
“total” : 2,
“successful” : 2,
“failed” : 0
},
“cluster_name” : “es_hxmonitor”,
“nodes” : {
“kwWYsewGQ8yRKbCxSMYo2w” : {
“name” : “wcjf_cbas_elk_215_20”,
“transport_address” : “172.21.54.20:9300”,
“host” : “172.21.54.20”,
“ip” : “172.21.54.20”,
“version” : “5.0.1”,
“build_hash” : “080bb47”,
“total_indexing_buffer” : 3415913267,
“roles” : [
“master”,
“data”,
“ingest”
],管理插件:
一、bigdeskcd /home/elk/bigdesk/_site && python -m SimpleHTTPServer
bigdesk工具:http://172.21.54.91:8000 (在页面的es地址栏输入相应的ip和端口)
二、head
登陆cbas项目windows跳板机,打开chrome浏览器,右上角点击head插件即可
-
elk 日志收集系统
2020-12-27 08:14:04elk日志收集系统同步时间安装java-1.8修改打开文件最大数部署es部署kibana部署filebeat 同步时间 [root@localhost ~]# yum -y install ntpdate [root@localhost ~]# ntpdate ntp1.aliyun.com 安装java-1.8 [root@...同步时间
[root@localhost ~]# yum -y install ntpdate [root@localhost ~]# ntpdate ntp1.aliyun.com
安装java-1.8
[root@localhost ~]# yum install java-1.8.0-openjdk -y
修改打开文件最大数
[root@localhost ~]# cat /etc/sysctl.conf vm.max_map_count = 655360 [root@localhost ~]# sysctl -p
部署es
[root@localhost ~]# rpm -ivh elasticsearch-6.4.1.rpm [root@localhost ~]# grep '^[a-Z]' /etc/elasticsearch/elasticsearch.yml
cluster.name: elk #集群名称 node.name: elk-01 #节点名称 node.master: true #当前节点为集群master node.data: true #当前为数据节点 path.data: /var/lib/elasticsearch #数据存放位置 path.logs: /var/log/elasticsearch #日志存放位置 network.host: 192.168.220.172 #监听的IP地址 http.port: 9200 #监听的端口 discovery.zen.ping.unicast.hosts: ["elk-01"] #集群节点的主机名或IP地址
[root@localhost ~]# systemctl start elasticsearch.service [root@localhost ~]# systemctl enable elasticsearch.service [root@localhost ~]# curl '192.168.220.172:9200/_cluster/health?pretty'
部署kibana
[root@localhost ~]# rpm -ivh kibana-6.4.1-x86_64.rpm [root@localhost ~]# vim /etc/kibana/kibana.yml
server.port: 5601 #kibana监听的端口 server.host: "192.168.220.172" #kibana监听的IP地址 elasticsearch.url: "http://192.168.220.172:9200" #kibana连接ES集群master节点地址
[root@localhost ~]# systemctl enable kibana [root@localhost ~]# systemctl start kibana.service [root@localhost ~]# firefox 192.168.220.172:5601
部署filebeat
[root@localhost ~]# rpm -ivh filebeat-6.4.1-x86_64.rpm [root@localhost ~]# vim /etc/filebeat/filebeat.yml
filebeat.inputs: - type: log enabled: true paths: - /var/log/messages filebeat.config.modules: path: ${path.config}/modules.d/*.yml reload.enabled: false setup.template.settings: index.number_of_shards: 3 setup.kibana: output.elasticsearch: hosts: ["192.168.220.172:9200"]
[root@localhost ~]# systemctl start filebeat [root@localhost ~]# systemctl enable filebeat
配置ka展示日志
-
elk日志收集系统 linux_结合kafka部署ELK日志收集系统实践
2021-01-12 11:10:46原标题:结合kafka部署ELK日志收集系统实践 上图展示了部署架构,其中elasticsearch 可以使用内部机制构成集群;kafka结合zookeeper构成集群;各生产服务器部署logstash的shipper,完成最末端的日志收集。本文介绍非...原标题:结合kafka部署ELK日志收集系统实践
上图展示了部署架构,其中elasticsearch 可以使用内部机制构成集群;kafka结合zookeeper构成集群;各生产服务器部署logstash的shipper,完成最末端的日志收集。本文介绍非集群方式的部署,集群方式的部署也只需要简单修改配置文件即可。
软件版本:
elasticsearch-2.3.2.zip
kafka_2.11-0.9.0.0.tgz
kibana-4.3.1-linux-x64.tar.gz
logstash-2.3.1.tar.gz
jdk-7u60-linux-x64.tar.gz
jdk安装和设置:
logstash,elasticsearch和kafka都需要java虚机的运行环境。
1
jdk安装
2
java环境设置
Elasticsearch安装和配置:
1
elasticsearch安装:
2
elasticsearch配置,需要修改的配置如下,其他使用默认值即可
3
启动elasticsearch
4
验证elasticsearch是否启动成功
分别查看9200端口是否启用,以及使用es接口查看集群状态。
Kafka安装和配置
1
kafka安装
2
zookeeper配置和启动
3
kafka配置和启动
logstash
1
Logstash安装
2
Logstash shipper和indexer配置
3
Shipper和indexer启动
4
验证通道全部都通了
作者简介:张文燕,应用软件开发工程师,5年经验,熟悉linux应用程序开发等,擅长C/C++、Python等编码和故障诊断,对Openstack、Packstack、日志系统和版本管理等有研究。返回搜狐,查看更多
责任编辑:
-
ELK 日志收集系统
2020-02-27 22:47:16ELK是Elasticsearch、Logstash、Kibana三大开源框架... Logstash是ELK的中央数据流引擎,用于从不同目标(文件/数据存储/MQ)收集的不同格式数据,经过过滤后支持输出到不同目的地(文件/MQ/redis/elasticsearch/ka...ELK是Elasticsearch、Logstash、Kibana三大开源框架首字母大写简称。
- Elasticsearch是一个基于Lucene、分布式、通过Restful方式进行交互的近实时搜索平台框架。
- Logstash是ELK的中央数据流引擎,用于从不同目标(文件/数据存储/MQ)收集的不同格式数据,经过过滤后支持输出到不同目的地(文件/MQ/redis/elasticsearch/kafka等)。
- Kibana可以将elasticsearch的数据通过友好的页面展示出来,提供实时分析的功能。
Logstash替换为Filebeat
Logstash缺点
- 基于ruby配置 学习需要时间
- 依赖jdk
- 较大资源消耗大
Filebeat 优点
- 基于yaml配置
- 二进制文件
- 资源占用少
- Filebeat 是Logstash 的下一代
对应三个的下载链接
https://www.elastic.co/cn/downloads/beats/filebeat
https://www.elastic.co/cn/downloads/elasticsearch
https://www.elastic.co/cn/downloads/kibana
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.6.0-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.0-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.6.0-linux-x86_64.tar.gz
tar -zxvf 解压 (下载很慢,自己网盘有)
# 访问localhost:9200 ./bin/elasticsearch
启动kibana
# 访问localhost:5601 ./bin/kibana
修改filebeat 配置
进入filebeat 修改配置文件filebrat.yml (那个服务器需要上传日志,就开启一个filebeat)
vim filebeat.yml
# true 代表启用当前配置 enable: true
# 监听多个日志文件目录,目录新加日志会自动上传,可这样加多个目录 paths: - /data/logserver/logs/*.log - /data/ad-log-test/logs/*.log
这里配置需要和logback.xml里格式一致
<encoder> <pattern>[%d{yyyy-MM-dd HH:mm:ss:SSS}] %thread %level %logger{36} %L - %msg%n</pattern> </encoder>
# 这里的意思是 以[ 开头的为一条数据,,,如果下面不是这个开头的。会合并成一条数据发送 multiline.pattern: ^\[ # 匹配开启 multiline.negate: true multiline.match: after
# 从文件末尾读取日志 tail_files: true
# ES模板名称 setup.template.name: imooc-ad-sponsor # 模板模式 setup.template.pattern: imooc-ad-sponsor-* # Kibana 索引的位置 setup.template.index: imooc-ad-sponsor-* # 描述字段 YMAL 文件路径(发送到ES的字段定义) setup.template.fields: fields.yml setup.template.settings: # 索引分区个数定义,与ES优化相关 index.number_of_shards:3
# ES主机地址 hosts: ["localhost:9200"] # ES 数据索引定义,数据发送到那个索引中去 index: "imooc-ad-sponsor-%{+yyyy.MM.dd}"
启动filebeat
./filebeat -e -c filebeat.yml
ES 对日志 预处理 (添加标签)
1、定义processor标签
设置日期格式,报错名为timestamp
{ "description" : "imooc-ad-log", "processors":[ { "grok": { "field": "message", "patterns": ["\\[%{TIMESTAMP_ISO8601:log_time}\\] %{NOTSPACE:thread} %{NOTSPACE:log_level} %{NOTSPACE:java_class} %{NOTSPACE:code_line} - %{GREEDYDATA:content}"] } }, { "date": { "field": "log_time", "formats": ["yyyy-MM-dd HH:mm:ss:SSS"], "timezone": "Asia/Shanghai", "target_field": "@timestamp" } } ] }
2、把processor标签 发送给ES (localhost:9200/_ingest/pipeline/imooc-ad-log) imooc-ad-log这个是名称
3、修改Filebeat配置 重启Filebeat
vim filebrat.yml
# ES主机地址 hosts: ["localhost:9200"] # ES 数据索引定义,数据发送到那个索引中去 index: "imooc-ad-sponsor-%{+yyyy.MM.dd}" pipeline: "imooc-ad-log"
重启
./filebeat -e -c filebeat.yml
-
ELK日志收集系统
2019-07-29 08:33:34豆芽博客,实用主义 ELK是一种日志查看解决方案,自己去网上找总是找不到称心如意的博客能够让我启动一下入门,我耗费一天时间,跑了一下搭建流程,与君共勉。 -
elk日志收集系统 linux_ELK 日志分析系统
2021-01-01 12:13:49学习主题:ELK&Zipjin学习目标:对应视频: http://www.itbaizhan.cn/course/id/85.html对应文档:无对应作业1. 安装Logstash(1) Logstash的作用是什么?主要是用来日志的搜集,分析.过滤日志的工具.支持大量的数据... -
Centos7部署ELK日志收集系统
2019-11-14 11:31:03Centos7部署ELK日志收集系统 一、ELK概述: ELK是一组开源软件的简称,其包括Elasticsearch、Logstash 和 Kibana。ELK最近几年发展迅速,已经成为目前最流行的集中式日志解决方案。 Elasticsearch: 能对大容量的数据... -
ELK日志收集系统(一)
2020-03-12 11:30:54ELK日志收集系统一:软件包下载地址二:环境准备三:kibana安装与配置四:安装nginx五:filebeat安装配置5.1 配置filebeat收集nginx日志5.2 kibana设置 一:软件包下载地址 本文所需要所有软件包下载地址: 链接:... -
ELK日志收集系统(二)
2020-03-23 17:09:46ELK日志收集系统(二)十一:filebeat模块十二:filebeat画图 十一:filebeat模块 [root@node01 ~]# rpm -qc filebeat /etc/filebeat/filebeat.yml /etc/filebeat/modules.d/apache2.yml.disabled .................... -
ELK日志收集系统部署
2021-01-08 01:58:43当日志文件过于庞大时,传统的查看日志方法已经不行,即使做了日志分割,通过ELK日志分析系统来应对这种情况的。ELK:Elasticsearch+Logstash+Kibana 可以提高安全性 集中存放日志 缺陷: 对日志的分析困难 -
ELK日志收集系统搭建
2019-08-13 01:18:34NULL 博文链接:https://donald-draper.iteye.com/blog/2302224 -
Linux搭建ELK日志收集系统:FIlebeat+Redis+Logstash+Elasticse
2019-10-11 17:12:43Linux搭建ELK日志收集系统:FIlebeat+Redis+Logstash+Elasticse 转载至[链接](https://blog.51cto.com/13859393/2156844) Centos7部署ELK日志收集系统 一、ELK概述: E... -
ELK日志收集系统搭建(基于7.1.1)
2019-06-14 18:00:52ELK日志收集系统搭建(基于7.1.1) 下载ElasticSearch、Kibana、Logstash的安装包,官方下载页面https://www.elastic.co/cn/downloads/,当前使用版本7.1 安装java运行环境 创建用户 默认不支持root用户运行elk,... -
elk日志收集系统 linux_集中日志系统ELK
2021-01-01 20:08:09作用以前都是登陆到每个机器去看日志,特别是一个服务有多个机器集群部署,还要下载多个机器的日志(运维下载日志,然后给开发排查问题),现在elk是集中式日志系统,所有的项目和项目集群都在一个日志系统里,而且... -
ELK日志收集系统(三):docker-compose部署ELK单机与集群
2020-04-26 13:54:34ELK日志收集系统(三):docker-compose部署ELK单机与集群一:安装docker-compose二:docker-compose小型web案例三:单机环境ELK系统搭建四:多主机ELK部署4.1 开启docker swarm4.2 启动集群 一:安装docker-compose... -
ELK日志收集系统介绍及过期系统日志清理
2020-03-12 15:57:39简介 使用ELK做系统服务日志的收集,随着使用的时间和用户量的增长,ES的存储压力会越来越大,而...ELK日志系统的介绍 服务索引名命名规则 日志收集方式说明与示例 自动清理索引脚本 定时自动清理任务 原文:... -
ELK日志收集系统的部署
2018-09-14 16:52:07ELK日志收集 ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。 Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供... -
elk日志收集系统实战
2019-12-21 14:22:061、ELK Stack介绍-需求背景.mp4 2、ELK Stack介绍-ELK Stack介绍.mp4 3、ELK Stack架构.mp4 4、Elasticsearch-Elasticsearch基础概念与环境准备.mp4 5、Elasticsearch-Elasticsearch集群部署.mp4 6、Elasticsearch-...
-
日期类
-
微信小程序之颜值测试项目(测颜值)【项目实战】
-
ProBuilder快速原型开发技术
-
echarts——配置总结及个别案例演示
-
ConcurrentHashMap底层原理
-
VB6.0中代码动态加载控件.txt
-
android studio初次使用
-
CMVS-PMVS-master
-
【数据分析-随到随学】量化交易策略模型
-
C语言经典算法大全.pdf
-
【数据分析-随到随学】机器学习模型及应用
-
Io和 File
-
第1章 Java入门基础及环境搭建【java编程进阶】
-
VScode配置Arduino开发环境(保姆级教程,包括图形化编程,DEBU信息消除,字体乱码的解决办法)
-
TLP-Task13学习笔记
-
POJ 2121 Inglish-Number Translator(暴力)
-
微信公众号2021之网页授权一学就会java版
-
分布式微服务例子:SpringBoot2.X+SpringCloud+SpringDataJPA+Consul+Feign+Swagger
-
Appium自动化测试套餐
-
2020-10-18-kali搭建DVWA.md