一、Metricbeat安装
# 下载
curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.10.1-x86_64.rpm
# 解压
rpm -vi metricbeat-7.10.1-x86_64.rpm
二、Metricbeat配置
1.设置采集的数据(默认是system)
Metricbeat可以采集众多数据,可用命令行查看
# 查看modules
# metricbeat modules list
# 启用modules
# metricbeat modules enable 模块名
# 禁用modules
# metricbeat modules disable 模块名
# 启用system
metricbeat modules enable system
不同模块的定义文件在/etc/metricbeat/modules.d/目录下
2.配置metricbeat.yml(输出到elasticsearch)
vim /etc/metricbeat/metricbeat.yml
前面的配置应该不用动,后面的hosts需要修改
metricbeat.config.modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: false
setup.template.settings:
index.number_of_shards: 1
index.codec: best_compression
# #_source.enabled: false
output.elasticsearch:
hosts: ["http://localhost:9200"]
logging.level: debug
# 下面内容可以不设置,但是不设置的话可能在加载Dashboard时会报错
# 加载默认模板
setup.dashboards.enabled: true
# 设置如果存在模板,则不覆盖原有模板
setup.template.overwrite: false
# 设置kibana服务地址
setup.kibana:
host: "localhost:5601"
3.运行
systemctl start metricbeat
在head界面就出现了metricbeat的新的索引
之后可以在Kibana的仪表盘查看
4.仪表盘加载
我第一次的时候配置文件没有加载仪表盘,但是后来已经补上了,如果Dashboard点开没有内容的话,可以运行以下语句加载。
metricbeat setup --dashboards
加载完之后重启Kibana,点击左侧Dashboard,就发现已经有Metricbeat的示例模板加载了,由于我们导入的是system,在上方搜索“system”,选中可以查看我们的系统情况
选中自己想查看的模板,就可以展示系统数据
三、Metricbeat+logstash+es
Metricbeat传输到logstash的过程与Filebeat类似,由于此时我们已经掌握了Filebeat+logstash的传输方式,因此涉及到多beat时,要重新考虑logstash以及beat的相关文件配置,详见下一个博客
ELK入门(八)——Logstash多beat配置(以Filebeat、Metricbeat为例)
问题小结
1.fail to get the Kibana version: HTTP GET request to http://localhost:5601/api/status fails
如果前面的配置文件没配好,可能在加载Dashboard时会出现这种报错,解决方案见ELK入门——解决:Metricbeat加载Dashboard报错error connecting to Kibana: fail to get the Kibana version
2.数据全为0或不显示
可能是时间段设置的问题,一般启动后需要等待几分钟才会有数据展示,并且时间段建议设置为last 15 minutes-now,等数据稳定传输一段时间后再调大时间间隔
参考博客