0. Metricbeat组成
Metricbeat有2部分组成,一部分是Module,另一部分为Metricset。
- Module
- 收集的对象,如:mysql、redis、操作系统等;
- Metricset
- 收集指标的集合,如:cpu、memory、network等;
1. 准备
- 在Linux环境中搭建好Elasticsearch
- 下载Metricbeat:
https://www.elastic.co/downloads/beats
2. 部署与收集系统指标,输出到Elasticsearch
# 创建一个目录
mkdir /beats
# 解压文件
tar -xvf metricbeat-6.5.4-linux-x86_64.tar.gz
cd metricbeat-6.5.4-linux-x86_64
# 修改配置文件
vim metricbeat.yml
metricbeat.config.modules:
path: ${path.config}/modules.d/*.yml # 默认收集system指标
reload.enabled: false
setup.template.settings:
index.number_of_shards: 1 # es索引分片
index.codec: best_compression
output.elasticsearch: #指定ES的配置
hosts:["192.168.241.130:9200","192.168.241.130:9201"]
processors:
- add_host_metadata: ~
- add_cloud_metadata: ~
# 启动
./metricbeat -e
参数说明
-e: 输出到标准输出(控制台),默认输出到syslog和logs文件下
在ELasticsearch中可以看到,系统的一些指标数据已经写入进去了:
3. 采集Redis指标输出到Elasticsearch
前面要想实现日志数据的读取以及处理都是自己手动配置的,其实,在Metricbeat中,有大量的Module,可以简化我们的配置,直接就可以使用,如下:
./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
可以看到,内置了很多的module,但是都没有启用,如果需要启用需要进行enable操作:
./filebeat modules enable redis #启动
./filebeat modules disable redis #禁用
配置 Redis Module
#启用redis module
./metricbeat modules enable redis
#修改redis module配置
vim modules.d/redis.yml
cd modules.d/
vim redis.yml
# 主要配置redis的日志文件路径
- module: redis
metricsets:
- info
# - keyspace
period: 10s
# Redis hosts 重点
hosts: ["192.168.241.130:6379","192.168.241.130:6380"]
# Network type to be used for redis connection. Default: tcp
#network: tcp
# Max number of concurrent connections. Default: 10
#maxconn: 10
# Redis AUTH password. Empty by default.
#password: foobared
启动测试
#启动
./metricbeat -e
测试发现,数据已经写入到了Elasticsearch中:
Redis指标数据展示图.jpg
更多的Module使用参见官方文档:
https://www.elastic.co/guide/en/beats/metricbeat/current/metricbeat-modules.html
4. 安装仪表盘到Kibana
# 修改metricbeat配置
setup.kibana: # 指定kibana的配置
host: "192.168.241.130:5601"
# 启动,安装仪表盘到Kibana
./metricbeat setup --dashboards
访问Kibana查看数据信息