简介

为了方便了解ESXi主机及虚拟机运行状况,通过zabbix进行监控,并通过Grafana将zabbix监控到的数据进行可视化展现。

一、zabbix安装

1.安装Zabbix rpm包仓库

# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

2.安装zabbix-server-mysql和zabbix-web-mysql

# yum install -y zabbix-server-mysql zabbix-web-mysql

3.安装并且启动mysql5.6及初始化数据库信息

# rpm -ivh http://repo.mysql.com/yum/mysql-5.6-community/el/6/x86_64/mysql-community-release-el6-5.noarch.rpm # yum install -y mysql-community-server # systemctl start mysqld # /sbin/chkconfig mysqld on #开机启动 # mysql_secure_installation #初始化数据库信息

4.创建zabbix数据库,创建zabbix账号

# mysql -uroot -p ... mysql> create database zabbix character set utf8 collate utf8_bin; Query OK, 1 row affected (0.00 sec) mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.01 sec)

5.导入默认的zabbix数据库信息

# zcat /usr/share/doc/zabbix-server-mysql-3.0.12/create.sql.gz | mysql zabbix -uzabbix -pzabbix

6.修改zabbix_server.conf的配置文件

# grep ^DB /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix

7.修改配置文件/etc/httpd/conf.d/zabbix.conf,时区改成 Asia/Shanghai

... php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Shanghai ...

8.启动apache/zabbix-server服务并设置为开机启动

# systemctl start httpd # systemctl enable httpd # netstat -an |grep 80 (本实验修改了默认80端口 --> /etc/httpd/conf/httpd.conf) # systemctl start zabbix-server # systemctl enable zabbix-server

9.访问网站,例如:http://IP:端口/zabbix,如下图所示:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(1)

10.选择下一步,Check of pre-requisites,如图所示:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(2)

11.选择下一步,配置zabbix server detail,如下图所示:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(3)

12.选择下一步,配置zabbix server detail,如下图所示:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(4)

13.安装完成的界面如下图所示:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(5)

注:如上配置可在配置文件 /etc/zabbix/web/zabbix.conf.php 中再次修改。

14.Zabbix·server的默认账号Admin 密码zabbix,如图所示:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(6)

15.修改默认密码、语言、主题等

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(7)

二、配置zabbix监控vCenter

官方参考文档:https://www.zabbix.com/documentation/3.4/zh/manual/vm_monitoring

1.调整虚拟机监控配置

# vi /etc/zabbix/zabbix_server.conf StartvmwareCollectors=6 VMwareCacheSize=50M VMwareFrequency=10 VMwarePerfFrequency=60 VMwareTimeout=300 # systemctl restart zabbix-server

注释:

StartVMwareCollectors:vmware 收集器实例的数量。

此值取决于要监控的 VMware 服务的数量。在大多数情况下,这应该是:

servicenum < StartVMwareCollectors < (servicenum * 2)

其中 servicenum 是 VMware 服务的数量。例如:如果您有 1 个 VMware 服务要将 StartVMwareCollectors 设置为 2,那么如果您有 3 个 VMware 服务,请将其设置为 5。请注意,在大多数情况下,此值不应小于 2,不应大于 VMware 数量的 2 倍服务。

VMwareCacheSize:VMwareFrequency=10。

用于存储VMware数据的共享内存大小。

VMwareFrequency:从单个VMware服务收集数据之间的延迟(秒)。

VMwarePerfFrequency:从单个VMware服务检索性能计数器统计信息之间的延迟(秒)。

VMwareTimeout:响应超时时间

2.添加主机

配置/模板中含有官方提供模板,或者zabbix官网下载针对vCenter监控的模板。

官方模板:http://www.zabbix.org/wiki/Zabbix_Templates/Official_Templates

主机页面

主机名称

群组:“VMware vCenter”或者“Virtual machines”

agent代理程序接口:vCenter地址、默认端口10050

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(8)

模板

链接指示器:输入vm,系统自动匹配含有vm的模板

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(9)

选中并添加

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(10)

添加宏

{$URL} - VMware 服务 (vCenter or ESX hypervisor) SDK URL (https://servername/sdk).

{$USERNAME} - VMware 服务用户名

{$PASSWORD} - VMware 服务{$ USERNAME}用户密码

建议:安全起见,在vCenter上添加一个只读用户。

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(11)

3.监测最新数据

能够监测到最新数据,说明配置生效

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(12)

配置-主机中可看到自动发现的主机

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(13)

4.添加图形

在模板中配置添加图形,可通用到此模板下所有已链接到的主机。例如如下:在Hypervisor模板添加图形,用于查看ESXi内存使用量。

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(14)

如下根据需求修改图形参数:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(15)

添加监控项:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(16)

至此,此模板中可监控ESXi主机内存使用量的图形添加完成,在监控-图形中选择某一主机查看图形。

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(17)

三、Grafana安装与配置

1.下载安装

官网下载地址 https://grafana.com/grafana/download

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(18)

2.启动服务

# service grafana-server start

打开浏览器,输入IP 端口,3000为默认端口

默认用户名和密码为admin/admin,第一次登陆系统会要求修改密码,修改密码后登陆,界面显示如下:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(19)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(20)

3.添加数据源

默认情况下,Data Sources中不存在zabbix插件,需要安装zabbix插件。

官方插件地址:https://grafana.com/plugins

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(21)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(22)

查看安装方法

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(23)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(24)

安装插件

# grafana-cli plugins install alexanderzobnin-zabbix-app # service grafana-server start 重启grafana服务

查看插件并Enable

在Home界面可以看到已经安装的APP如下:

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(25)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(26)

Add Data Source

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(27)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(28)

配置DataSource之zabbix

URL:为zabbix的api地址 - zabbix官方说明

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(29)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(30)

4.添加Dashboard仪表盘

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(31)

5.配置Dashboard

Name、描述、标签、所属文件夹(需要先创建文件夹)

Timezone默认即可,可配置跟随本地浏览器时间及国际标准时间

自动刷新,配置Dashboard可自动刷新的时间,在Dashboard可以选择此处配置的时间

延迟时间配置,根据需求配置

是否隐藏时间选择器等功能

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(32)

6.添加Panel

Dashboard界面右上角,Add Panel

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(33)

添加Query

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(34)

Queries

选择Data Source:zabbix

Query Mode:Metrics

如下例如监控某服务器CPU Usage

Group:可选择zabbix中监控到的主机(Hypervisor)

Host:为Hypervisor子项(服务器在vCenter中的名字:192.168.10.10)

Application:该服务器被监控到的数据,在zabbix中归类为应用集(CPU、Datastore、Memory、Network等)

Item:该应用集所有监控数据(CPU cores、CPU Usage、CPU frequency等)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(35)

Visualization

可选择多种数据展现方式:常用Graph、Singlestat、Gauge

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(36)

Graph常用参数配置:

图形展现为条形、点、折线,以及更改填充透明度、线粗细、梯形等

Hover tooltip:鼠标指在图形,展现所有数据or单个数据,以及如何排序(递增或递减)

数轴配置:

分为左Y轴、右Y轴以及X轴

Unit:基本包含所有国际标准单位

Scale:比例,一般linear线性就可以

Legend图例配置:

图例以表的方式呈现、以及数据包含最小、最大、平均值等

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(37)

Singlestat常用参数配置:

Stat:配置数据展现为最小、最大、平均、当前值等

前缀、后缀以及字体大小

Unit:修改该数据单位

Decimals:修改数值,小数点位数

可配置背景颜色,以及设置阈值,到达某阈值自动更改颜色

Spark lines:可将折线图同时展现在该面板

Gauge:同时展现该数据仪表盘

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(38)

General

配置该面板名称、是否透明等

7.导入官网Dashboard

官网Dashboard https://grafana.com/dashboards

例如如下,Dashboard模板,获取ID号

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(39)

import导入

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(40)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(41)

自动发现此Dashboard模板,导入即可

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(42)

8.添加变量

DashBoard Setting

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(43)

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(44)

添加变量

变量名

类型为Query

Data Source,zabbix

Query的值为*,可列出所有主机,可使用“主机名.*”的形式,列出该主机子集

可使用正则表达式筛选数据等

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(45)

根据需要,选择需要查看的虚拟机

zabbix网络设备监控界面(Grafana可视化监控虚拟环境)(46)

以上为简单配置zabbix grafana监控虚拟化环境。

,