metricbeat之多系统多机器部署

我们都知道elk是十分的强大,但beats组件的加入,不但降低了elk扩展功能的部署门槛,也大大提高了部署效率。今天我们就来介绍beats组件中的metricbeat。

那么metricbeat是什么东西呢?我想在电脑面前正在百度或谷歌面前的你是有所了解。没错metricbeat是一个轻量型指标采集器。他用于收集从系统和服务的指标,他能以一种轻量型的方式,输送各种系统和服务的统计数据,从CPU到内存到磁盘IO,从Redis到nginx,不一而足。(这里不过多的描述metricbeat的全面功能,附上官网的连接,大家可以更加深入的了解,了解他能够为你解决什么样的需求:https://www.elastic.co/cn/beats/metricbeat

下面正式进行部署环节,首先我当前的环境已经提前部署了logstah、elsticsearch、kibana。

192.168.30.113:部署kibana与elsticsearch(版本均为6.8.1)

192.168.30.116:部署logstash与elsticsearch(版本均为6.8.1)

=========================下载软件过程========================

部署方式有以下几种(本次系统环境为CENTOS7 64位、微软环境为serer2008 64位):

1、 yum源安装方式(不推荐,下载软件的速度太慢):

在/etc/yum.repo.d/目录下创建一个elk.repo的源文件,将以下内容粘贴进去并保存退出(当前版本为7.x,可以人为的修改成6.x版本,只需要将其中的7换成6即可)。

[elastic-7.x]

name=Elastic repository for 7.x packages

baseurl=https://artifacts.elastic.co/packages/7.x/yum

gpgcheck=1

gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch

enabled=1

autorefresh=1

type=rpm-md

2、 通过RPM包安装(推荐,通过电脑本地下载速度快,方便后期升级):

下载地址:https://www.elastic.co/cn/downloads/past-releases/metricbeat-6-8-1,(这里我们下载rpm 64与windows 64)

 

3、 通过tar包进行安装(不推荐,):下载地址同样如2所示;

=======================部署软件过程========================

首先将下载好的软件,传至对应的服务器(这里我们挑选两台linux、两台windows)

 

 

 

 上传软件过程不在这里过多描述。

两台windows:192.168.30.107、192.168.30.115

两台centos:192.168.30.113、192.168.30.116

window部署过程(另一台windows部署过程同下):

l  将metricbeat软件解压至c:program files;

l  修改配置文件

 

 

 

 

 

 

 

 

 

 

 

 l  在管理员powershell中注册metricbeat系统服务

 

 

 

 

如果遇到禁止执行脚本,继续在powershell中输入get-executionpolicy查看输出策略是不是Restricted,如果是,执行set-executionpolicy remotesigned即可。如下:

 

 

 

 当脚本执行权限打开时,即可执行./install-service-metricbeat.ps1注册系统服务。如下

 

 

 

 l  启动服务

start-service metricbeat

查看服务运行状态

在powershell中执行netstat -an查看网络连接状态;这个时候说明我们的程序运行时成功的,在计算机管理-服务中也发现了metricbeat。

 

 

 

 

 

 

查看kibana连接状态(在仪表盘中输入system,表示查看系统性能仪表盘,也可以查看其他服务的仪表盘,但当前环境仅对系统服务进行检测)

 

 

 

在图中我们可以看到当前被监测主机的总数、内存使用情况等。

下面我们在另一台windows机器上配置,过程省略(过程同上)结果如下:

 

linux部署过程:

安装软件:[root@log ~]# rpm -ivh metricbeat-6.8.1-x86_64.rpm

修改配置文件:[root@log ~]# vim /etc/metricbeat/metricbeat.yml 并保存退出。配置如下:

 

 

 

 

启动服务:

因为metricbeat默认是开启系统监测模块的,所以我们直接启动服务即可。同时我们也可以查看metricbeat支持的监测模块;

 

[root@log ~]# ls /etc/metricbeat/modules.d/      \\也可以通过该命令查看

[root@log ~]# service metricbeat start                \\启动服务

[root@log ~]# systemctl enable metricbeat    \\添加开机启动项

[root@log ~]# netstat -anpt | grep 5601             \\查看端口监听情况

 

 

 l  查看kibana:如图所示,log.server就是我们刚刚添加的linux机器

 

 

 l  下面我们在另一台服务器上面部署metricbeat,过程同上(省略)。

 

 

 

===================至此多系统多机器metricbeat部署完成=============

说明:

1、 配置文件:

a)      setup.dashboards.enabled: true   \\加载默认的仪表盘样式

b)      host: "192.168.30.113:5601          \\设置kibana地址

c)      hosts: ["192.168.30.116:9200"]     \\设置elasticsearch地址

2、 关于多机器部署,担心索引冲突:

在metricbeat中,当他收集性能指标的时候,会默认创建一个以“metricbeat-版本-日期”的索引。

 

 

 多机器部署,会将所有的机器的性能指标收集过来,通过一个索引进行管理,那么通过什么区别这些机器呢?为了更好的区分这些机器,在索引中添加多个可用字段来区分,如下所示:

 

 

 也就很好的解释了为什么下图中的机器名称是由何而来;(建议在创建系统初期,就将系统名称进行自定义,否则会出现下图所示的“localhost”,不容易区分,也会造成冲突)

 3、 elk未来:

随着等级保护2.0的实施,其中要求对审计日志进行集中收集与分析、对各网络设备、安全设备、服务器等运行状态进行集中、实时监控。相信elk在未来会被越来越多单位使用。

 

posted @ 2020-03-05 13:07  你说666  阅读(1951)  评论(0编辑  收藏  举报