filebeat

Filebeat 模块与配置

易管家 提交于 2019-12-02 20:38:23
1. 关于Filebeat 当你要面对成百上千、甚至成千上万的服务器、虚拟机和容器生成的日志时,请告别 SSH 吧!Filebeat 将为你提供一种轻量型方法,用于转发和汇总日志与文件,让简单的事情不再繁杂。 关于Filebeat,记住两点: 轻量级日志采集器 输送至 Elasticsearch 或 Logstash,在 Kibana 中实现可视化 2. Filebeat是如何工作的 Filebeat由两个主要组件组成: inputs 和 harvesters (直译:收割机,采集器) 。这些组件一起工作以跟踪文件,并将事件数据发送到你指定的输出。 2.1. harvester是什么 一个harvester负责读取一个单个文件的内容。 harvester逐行读取每个文件(一行一行地读取每个文件),并把这些内容发送到输出。 每个文件启动一个harvester。 harvester负责打开和关闭这个文件,这就意味着在harvester运行时文件描述符保持打开状态。 在harvester正在读取文件内容的时候,文件被删除或者重命名了,那么Filebeat会续读这个文件。这就有一个问题了,就是只要负责这个文件的harvester没用关闭,那么磁盘空间就不会释放。默认情况下,Filebeat保存文件打开直到close_inactive到达。 2.2. input是什么

开始使用Filebeat

匿名 (未验证) 提交于 2019-12-02 20:37:20
认识Beats Beats是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到Logstash或Elasticsearch。 (画外音:通俗地理解,就是 采集数据 ,并 上报 到Logstash或Elasticsearch) Beats对于收集数据非常有用。它们位于你的服务器上,将数据集中在Elasticsearch中,Beats也可以发送到Logstash来进行转换和解析。 为了捕捉(捕获)数据,Elastic提供了各种Beants: Beats可以直接(或者通过Logstash)将数据发送到Elasticsearch,在那里你可以进一步处理和增强数据,然后在Kibana中将其可视化。 Filebeat 第1步:安装Filebeat 第2步:配置Filebeat 配置文件:filebeat.yml 为了配置Filebeat: 1. 定义日志文件路径 对于最基本的Filebeat配置,你可以使用单个路径。例如: filebeat.inputs: - type: log enabled: true paths: - /var/log/*.log 在这个例子中,获取在/var/log/*.log路径下的所有文件作为输入,这就意味着Filebeat将获取/var/log目录下所有以.log结尾的文件。 为了从预定义的子目录级别下抓取所有文件

如何快速部署容器化应用

大憨熊 提交于 2019-12-02 18:57:30
$ git clone github.com/kplcloud/kplcloud && cd kplcloud/ $ kubectl apply -f install/kubernetes/kpaas/ 下图是开普勒云平台所对接的平台及流程。 开普勒云平台通过调用Jenkins、Gitlab(Github)、Kubernetes等API的方式对应用进行操作。 将Consul的KV功能作为配置中心来使用,在开普勒云平台上可以直接调用Consul API进行操作,可以在配置文件决定是否启用Consul KV功能。 Jenkins目前只担任代码编译及将Docker镜像上传仓库的功能。开普勒通过调用JenkinsAPI来创建Job或Build Job,并监听Job状态。 开普勒平台还可调用Github或Gitlab API获取项目的分支及需要上线的tags。并将相关信息传给jenkins,Jenkins拉取代码并执行相关构建过程。 三、使用 平台调用Kubernetes API的资源及Jenkins API或告警都是以模版的方式进行处理,管理员可以根据自己公司所处的环境随意调整相关资源的模版。 除了对生产最基本的需求外,还增加了对测试环境测试人员的需求支持。 应用克隆: 测试人员可能需要做到一个版本多套环境的场景。在平台可以假设一个空间就是一种场景,在一个空间下部署完所有应用之后

zabbix-proxy及ELK

可紊 提交于 2019-12-02 18:34:15
1、添加tomcat监控模版 yum install java-1.8.0-openjdk tomcat-webapps tomcat-admin-webapps tomcat-docs-webapp -y #在被监控节点安装tomcat包 与jmx接口通信需要使用特定的客户端,还需要在其他节点或者主节点安装一个特定的客户端组件zabbix-gateway,这里在主节点直接安装上 yum install zabbix-java-gateway -y 在主节点安装 systemctl start zabbix-java-gateway #启动服务 修改主节点配置文件,加入JavaGateway的地址端口及进程数 修改tomcat配置文件支持jmx CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.manageme nt.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssh=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rm i.server.hostname=192.168.1.197" 添加jmx主机

记一次由 echo '' > 引发的问题

一世执手 提交于 2019-12-02 17:41:10
本篇文章阅读时间大约2分钟 最近公司生产环境服务器经常内存报警,而且多发生在凌晨,见下图。 由于一直报警,因此写了一个内存监控的脚本,见上篇文章。最终发现是由于filebeat导致,怀疑是由于json相关配置导致,然而发现并非如此。那我们书接前文。 查了下网上关于filebeat内存暴增的资料,发现这样一篇文章: filebeat 实践 - 内存占用 - 最大内存占用 . 文章阐述了filebeat内存暴增的原因,内存公式为: $$ bytes_each_log * spool_size * M + a * N $$ bytes_each_log是指单条日志大小,spool_size是配置文件里的配置项,M是单条日志在内存里的溢价系数(> 1),N表示采集文件的个数,a为常数 spool_size的默认值是2048,我们的配置文件里也没设置。具体比照见下表: 因此如果有单条日志过大的情况,内存会突增。所以要设置合适的spool_size值,建议是128或者256. 你以为这样就结束了吗,我们还要深挖原因,为什么会有单条过大的日志。这个服务平时压力并不大,日志量也很小,不应该出现这种情况。我们查找日志发现有很多二进制字符,如下图: 日志文件是stdout.log,这个文件是记录程序执行的所有控制台输出,命令如下: nohup java ${JAVA_OPTS} -cp ${CLASS

开始使用Filebeat

三世轮回 提交于 2019-12-02 10:40:14
认识Beats Beats是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到Logstash或Elasticsearch。 (画外音:通俗地理解,就是 采集数据 ,并 上报 到Logstash或Elasticsearch) Beats对于收集数据非常有用。它们位于你的服务器上,将数据集中在Elasticsearch中,Beats也可以发送到Logstash来进行转换和解析。 为了捕捉(捕获)数据,Elastic提供了各种Beats: Beats可以直接(或者通过Logstash)将数据发送到Elasticsearch,在那里你可以进一步处理和增强数据,然后在Kibana中将其可视化。 Filebeat 第1步:安装Filebeat 第2步:配置Filebeat 配置文件:filebeat.yml 为了配置Filebeat: 1. 定义日志文件路径 对于最基本的Filebeat配置,你可以使用单个路径。例如: filebeat.inputs: - type: log enabled: true paths: - /var/log/*.log 在这个例子中,获取在/var/log/*.log路径下的所有文件作为输入,这就意味着Filebeat将获取/var/log目录下所有以.log结尾的文件。 为了从预定义的子目录级别下抓取所有文件

ELK安装部署

十年热恋 提交于 2019-12-01 22:11:58
1.简介 官网地址 : https://www.elastic.co/cn/ 官网权威指南 : https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html 安装指南: https://www.elastic.co/guide/en/elasticsearch/reference/5.x/rpm.html 本文word文档以及安装包下载链接: 百度网盘>> 链接:https://pan.baidu.com/s/1KUVq-8o1gjrK-5RCxLSMGw 提取码:a14r ELK 是 Elasticsearch 、 Logstash 、 Kibana 的简称,这三者是核心套件,但并非全部。 Elasticsearch 是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放 REST 和 JAVA API 等结构提供高效搜索功能,可扩展的分布式系统。它构建于 Apache Lucene 搜索引擎库之上。 Logstash 是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括 syslog 、消息传递(例如 RabbitMQ )和 JMX ,它能够以多种方式输出数据,包括电子邮件、

Kubernetes+Docker+Istio 容器云实践

人盡茶涼 提交于 2019-12-01 17:21:52
随着社会的进步与技术的发展,人们对资源的高效利用有了更为迫切的需求。近年来,互联网、移动互联网的高速发展与成熟,大应用的微服务化也引起了企业的热情关注,而基于Kubernetes+Docker的容器云方案也随之进入了大众的视野。开普勒云是一个基于Kubernetes+Docker+Istio的微服务治理解决方案。 一、Microservices 1.1 解决大应用微服务化后的问题 现在各大企业都在谈论微服务,在微服务的大趋势之下技术圈里逢人必谈微服务,及微服务化后的各种解决方案。 1.2 当我们在讨论微服务的时候我们在讨论什么? 使用微服务架构有很多充分的理由,但天下没有免费的午餐,微服务虽有诸多优势,同时也增加了复杂性。团队应该积极应对这种复杂性,前提是应用能够受益于微服务。 1.2.1 如何微服务化的问题 微服务要如何拆分 业务API规则 数据一致性保证 后期可扩展性考虑 当然这不是本文主要讨论的问题,我不讲微服务具体要如何拆分,每个企业每个应用的情况都不太一样,适合自己的方案就是最好的拆分方案。我们主要来解决微服务化后所带来的一些问题。 1.2.2 微服务化后带来的问题 环境一致性 如何对资源快速分配 如何快速度部署 怎么做基本监控 服务注册与发现 负载均衡如何做 以上都是大应用微服务化所需要解决的基础问题,如果还按照传统的方式使用虚拟机来实现,资源开支将会非常大

ELK之7版本Elastic Maps功能介绍

百般思念 提交于 2019-12-01 16:18:06
  Elasticsearch 7.0 中还引入了一个新的聚合来处理地理地图图块,允许用户在地图上放大和缩小,而不会改变结果数据的形状,实现更加平滑地缩放 Elastic Maps;使用纳秒精度存储时序数据的时间戳,允许具有高频数据采集需求的用户可以更加精确地存储和排序他们的数据   详情查看发布公告    https://www.elastic.co/cn/blog/elastic-stack-7-0-0-released   一,系统环境查看及软件版本选择   系统环境查看   软件版本选择 elasticsearch-7.4.0-x86_64.rpm filebeat-7.4.0-x86_64.rpm kibana-7.4.0-x86_64.rpm logstash-7.4.0.rpm metricbeat-7.4.0-x86_64.rpm jdk 1.8.0_171   二,安装配置   安装jdk环境不详述   官方网站下载对应软件包   安装elasticsearch rpm -ivh elasticsearch-7.4.0-x86_64.rpm   修改配置文件 /etc/elasticsearch/elasticsearch.yml   配置如下 cluster.name: myes node.name: node-1 path.data: /var/lib

Kubernetes+Docker+Istio 容器云实践

风格不统一 提交于 2019-12-01 16:06:23
随着社会的进步与技术的发展,人们对资源的高效利用有了更为迫切的需求。近年来,互联网、移动互联网的高速发展与成熟,大应用的微服务化也引起了企业的热情关注,而基于Kubernetes+Docker的容器云方案也随之进入了大众的视野。开普勒云是一个基于Kubernetes+Docker+Istio的微服务治理解决方案。 一、Microservices 1.1 解决大应用微服务化后的问题 现在各大企业都在谈论微服务,在微服务的大趋势之下技术圈里逢人必谈微服务,及微服务化后的各种解决方案。 1.2 当我们在讨论微服务的时候我们在讨论什么? 使用微服务架构有很多充分的理由,但天下没有免费的午餐,微服务虽有诸多优势,同时也增加了复杂性。团队应该积极应对这种复杂性,前提是应用能够受益于微服务。 1.2.1 如何微服务化的问题 微服务要如何拆分 业务API规则 数据一致性保证 后期可扩展性考虑 当然这不是本文主要讨论的问题,我不讲微服务具体要如何拆分,每个企业每个应用的情况都不太一样,适合自己的方案就是最好的拆分方案。我们主要来解决微服务化后所带来的一些问题。 1.2.2 微服务化后带来的问题 环境一致性 如何对资源快速分配 如何快速度部署 怎么做基本监控 服务注册与发现 负载均衡如何做 以上都是大应用微服务化所需要解决的基础问题,如果还按照传统的方式使用虚拟机来实现,资源开支将会非常大