ELK之使用metricbeat收集系统数据及其他程序并生成可视化图表
将 Metricbeat 部署到您所有的 Linux、Windows 和 Mac 主机,并将它连接到 Elasticsearch 就大功告成啦:您可以获取系统级的 CPU 使用率、内存、文件系统、磁盘 IO 和网络 IO 统计数据,以及获得如同系统上 top 命令类似的各个进程的统计数据
1,安装metricbeat
官网下载rpm包安装
rpm -ivh /nas/nas/softs/elk/6.5.4/metricbeat-6.5.4-x86_64.rpm
默认开启了system模块使用命令查看模块
metricbeat modules list Enabled:
system Disabled:
aerospike
apache
ceph
couchbase
docker
dropwizard
elasticsearch
envoyproxy
etcd
golang
graphite
haproxy
http
jolokia
kafka
kibana
kubernetes
kvm
logstash
memcached
mongodb
munin
mysql
nginx
php_fpm
postgresql
prometheus
rabbitmq
redis
traefik
uwsgi
vsphere
windows
zookeeper
PS:Enabled模块为启用模块 Disabled模块为未启用模块
启用新模块命令,例如启用nginx模块
metricbeat modules enable nginx
修改配置文件监控系统CPU,内存等信息
#包含其他模块的配置文件
metricbeat.config.modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: false
setup.template.settings:
index.number_of_shards: 1
index.codec: best_compression
#开启dashboards
setup.dashboards.enabled: true
#输出至kibana
setup.kibana:
host: "172.16.90.24:5601"
#输出至elssticsearch
output.elasticsearch:
hosts: ["172.16.90.24:9200"]
processors:
- add_host_metadata: ~
- add_cloud_metadata: ~
启动metricbeat
systemctl start metricbeat
打开kibana页面查看自动生成了一些图表

查看hostview



如果多个主机需要监控系统性能查看


2,设置监控nginx性能
开启nginx模块
metricbeat modules enable nginx
修改metricbeat配置文件/etc/metricbeat/modules.d/nginx.yml
- module: nginx
metricsets: ["stubstatus"]
hosts: ["http://172.16.100.132"]
#username: "user"
#password: "secret"
server_status_path: "status"
PS:监控nginx前提需要开启nginx状态模块并在nginx配置下添加以下配置
server{
listen 80;
server_name 172.16.100.132;
location /status
{
stub_status;
access_log off;
}
}
配置成功在web页面可以查看到以下信息

重启metricbeat查看


3,设置监控MySQL
开启MySQL模块
metricbeat modules enable mysql
修改配置文件
/etc/metricbeat/modules.d/mysql.yml
- module: mysql
metricsets:
- status
# - galera_status
period: 10s # Host DSN should be defined as "user:pass@tcp(127.0.0.1:3306)/"
# The username and password can either be set in the DSN or using the username
# and password config options. Those specified in the DSN take precedence.
hosts: ["tcp(172.16.90.180:3306)/"] # Username of hosts. Empty by default.
username: root # Password of hosts. Empty by default.
password: secret
kibana页面查看

4,设置监控redis
开启redis模块
metricbeat modules enable redis
修改配置文件
/etc/metricbeat/modules.d/redis.yml
- module: redis
hosts: ["172.16.90.181:6379"]
metricsets: ["info","keyspace"]
enables: true
period: 10s
password: password
PS:如果redis没有设置认证则密码不配置
kibana查看

5,设置监控rabbitmq
开启rabbitmq模块
metricbeat modules enable rabbitmq
修改配置文件
/etc/metricbeat/modules.d/rabbitmq.yml
- module: rabbitmq
metricsets: ["node", "queue", "connection"]
enabled: true
period: 10s
hosts: ["172.16.90.46:15672"]
username: admin
password: password
kibana页面查看

6,设置监控kafka
开启kafka监控模块
metricbeat modules enable kafka
修改配置文件
/etc/metricbeat/modules.d/kafka.yml

kibana页面查看

其他程序监控可参考官方文档 https://www.elastic.co/guide/en/beats/metricbeat/current/metricbeat-modules.html
ELK之使用metricbeat收集系统数据及其他程序并生成可视化图表的更多相关文章
- ELK之使用filebeat收集系统数据及其他程序并生成可视化图表
当您要面对成百上千.甚至成千上万的服务器.虚拟机和容器生成的日志时,请告别 SSH 吧.Filebeat 将为您提供一种轻量型方法,用于转发和汇总日志与文件,让简单的事情不再繁杂. 1,安装fileb ...
- ELK+kafka构建日志收集系统
ELK+kafka构建日志收集系统 原文 http://lx.wxqrcode.com/index.php/post/101.html 背景: 最近线上上了ELK,但是只用了一台Redis在 ...
- nGrinder对监控机器收集自定义数据及源码分析
转载:https://blog.csdn.net/neven7/article/details/50782451 0.背景 性能测试工具nGrinder支持在无需修改源码的情况下,对目标服务器收集自定 ...
- [Xcode 实际操作]七、文件与数据-(1)获取程序沙箱结构中常用的几个目录
目录:[Swift]Xcode实际操作 本文将演示如何获取程序沙箱结构中,常见的几个目录. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ...
- 使用VS2017 编写Linux系统上的Opencv程序
背景 之前写图像算法的程序都是在window10下使用VS编写,VS这个IDE结合“ImageWatch.vsix“插件,用于调试opencv相关的图像算法程序十分方便.后因项目需要,需将相关程序移植 ...
- 日志收集系统elk
目录 elk简介 官方帮助 rsyslog rsyslog日志采集介绍与使用 综合实验 案例一: 单机ELK部署 案例二. JAVA环境配置,部署 filebeat+Elasticsearch apa ...
- 日志收集系统ELK搭建
一.ELK简介 在传统项目中,如果在生产环境中,有多台不同的服务器集群,如果生产环境需要通过日志定位项目的Bug的话,需要在每台节点上使用传统的命令方式查询,这样效率非常低下.因此我们需要集中化的管理 ...
- ELK 日志收集系统
传统系统日志收集的问题 在传统项目中,如果在生产环境中,有多台不同的服务器集群,如果生产环境需要通过日志定位项目的Bug的话,需要在每台节点上使用传统的命令方式查询,这样效率非常底下. 通常,日志被分 ...
- 快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana)
快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana) 概要说明 需求场景,系统环境是CentOS,多个应用部署在多台服务器上,平时查看应用日志及排查问题十 ...
随机推荐
- wifipineapple外接SD卡
通过SSH或者web访问URL, http://172.16.42.1:1471 输入帐号:root 密码:pineapplesareyummy(默认账号密码) ssh连接:ssh root@172 ...
- 解决IE6-IE8 Js代码不执行问题
一种可能的原因:form标签不完整. 使用在线工具,测试html代码标签的完整性.
- 基于Centos搭建 Firekylin 个人网站
系统要求: CentOS 7.2 64 位操作系统 安装 Node.js 使用 yum 命令安装 Node.js curl --silent --location https://rpm.nodeso ...
- JAVA常用代码
一. 判断是否包含某个注解. 1). 声明接口 @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) @Documented ...
- 菜鸟教程之工具使用(八)——EGit禁止自动转换回车换行符
众所周知,Windows和Linux系统的回车换行是不一样的.想要进一步了解它们的可以阅读下面的介绍,不感兴趣的可以直接跳过. 产生背景 关于“回车”(carriage return)和“换行”(li ...
- RelativeLayout 布局参数
今天调布局的时候 想把界面做成横屏竖屏都可以的 突然发现之前理解的android:布局参数都是有问题的 今天贴出来 下次自己也记得 以下大部为用在RelativeLayout中的一些参数: andro ...
- Java多线程系列——线程池原理之 ThreadPoolExecutor
ThreadPoolExecutor 简介 ThreadPoolExecutor 是线程池类. 通俗的讲,它是一个存放一定数量线程的线程集合.线程池允许多个线程同时运行,同时运行的线程数量就是这个线程 ...
- Socket阻塞模式和非阻塞模式的区别
简单点说: 阻塞就是干不完不准回来, 非组赛就是你先干,我现看看有其他事没有,完了告诉我一声 我们拿最常用的send和recv两个函数来说吧... 比如你调用send函数发送一定的Byte,在系 ...
- Java知多少(82)标签、按钮和按钮事件简介
标签和按钮也许是图形界面中最常见的两种组件,按钮又总是与激发动作事件有关. 标签 标签(JLabel)是最简单的Swing组件.标签对象的作用是对位于其后的界面组件作说明.可以设置标签的属性,即前景色 ...
- Active Directory Authentication in ASP.NET MVC 5 with Forms Authentication and Group-Based Authorization
I know that blog post title is sure a mouth-full, but it describes the whole problem I was trying to ...