Redhat6.5离线配置Zabbix,含自定义Zabbix监控项

本文详细介绍了如何在Redhat6.5上离线配置Zabbix 2.4.8,包括环境准备、Zabbix Server与Agent的安装、MySQL的配置、自定义监控项等内容。通过yum源创建、依赖包安装、数据库初始化和权限设置、Zabbix Web控制台配置以及Zabbix Agent的安装与配置,全面阐述了整个过程。文章还涵盖了常见的问题与解决办法,例如图形中文乱码、数据库连接问题以及Agent的监控状态检查。

Redhat6.5离线配置zabbix

写在前面:

  • 现在安装zabbix都很方便,只要yum一下就好了。但是不排除不能连外网的监控环境,所以出这篇离线配置笔记。包括基础环境的配置,zabbix server和agent配置,以及linux和windows自定义zabbix监控项的基础步骤。
  • 这篇笔记是从word文档拷贝过来的,可能存在格式或内容偏差。可以直接下载word版:

链接:https://pan.baidu.com/s/1RMHlNfG6Ms_0B-j-qmPenQ 密码:bwfo

一、前言

1.1 概要

Zabbix是企业级的开源集中监控和告警软件。可以实现对硬件,操作系统,应用程序等多层面的监控和取值,并通过设置的告警条件和阀值,触发告警动作。本手册包含Zabbix Server软件包的下载,本地YUM创建,软件包安装和Zabbix Web控制台初始配置和登录,以及常见故障排错。

Zabbix Agent监控有两种方式,被动模式和主动模式:

被动模式:Zabbix Server定期向Zabbix Agent请求数据,然后Zabbix Agent将数据发回给Zabbix Server。这是默认方式,Zabbix Server自带的监控Template(模板)里的监控项,默认都是被动模式。这种方式的优点是对Zabbix Agent压力小,在较小监控规模下但是如果“被监控端”数量太多,会对对Zabbix Server端造成很大压力。

主动模式:ZabbixAgent Active,Zabbix Agent从ZabbixServer获取需要发送的Items(项目)列表,然后根据Item去获取数据,再发给Zabbix Server。这里的Zabbix Server是在zabbix_agentd.conf里的ServerActive参数里指定,另外在RefreshActiveChecks里定义Agent每隔多久向Server请求一次。特别注意:Active模式里的Hostname参数必须和Server里配置的被监控的客户端主机名相同。

1.2 先决条件

操作系统正常安装。

关闭操作系统防火墙,关闭SELinux。

二、前期准备      前期准备

【注】建议在rpm–ivh安装之前,使用rpm –qa | grep 包名查看是否已安装。

2.1 安装GCC

rpm –ivh mpfr-2.4.1-6.el6.x86_64.rpm

rpm –ivh ppl-0.10.2-11.el6.x86_64.rpm

rpm –ivh cpp-4.4.7-4.el6.x86_64.rpm

rpm –ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

rpm –ivh gcc-4.4.7-4.el6.x86_64.rpm

rpm –ivh libstdc++-devel-4.4.7-4.el6.x86_64.rpm

rpm –ivh gcc-c++-4.4.7-4.el6.x86_64.rpm

 

2.2 安装Apache

2.2.1 rpm包安装

2.2.1.1安装

rpm –ivh apr-1.4.6-2.2.x86_64.rpm

rpm –ivh apr-util-1.4.1-1.1.x86_64.rpm

rpm –ivh apr-util-ldap-1.4.1-1.1.x86_64.rpm

rpm –ivh postgresql-libs-8.4.20-7.el6.x86_64.rpm

rpm –ivh mailcap-2.1.31-2.el6.noarch.rpm

rpm –ivh httpd-tools-2.2.15-9.el6.x86_64.rpm

rpm –ivh httpd-2.2.15-9.el6.x86_64.rpm


2.2.1.2配置文件httpd.conf

(一般采用默认值,ServerName需要指定)

vi /etc/httpd/conf/httpd.conf

(命令:/关键词可以搜索)

ServerRoot"/usr/local/apache"

Listen 80

ServerName localhost:80

DocumentRoot "/var/www/html"

2.2.1.3设置开机自启动

单次启动httpd服务的命令:service httpd start

设置开机自启动前,先查看httpd是否在系统服务列表中:

chkconfig --list

(a)  如果看到上述结果,那就省事了,直接改成开机启动就可以了:

chkconfig httpd on(只对2345有效)

(b) 如果列表中没有apache的服务,那需要手工将apache的启动脚本apachectl拷贝到/etc/init.d目录下,建议重命名为httpd。可以利用以下命令查找文件位置:

find / -nameapachectl -print

然后修改/etc/init.d/httpd:

#!/bin/bash

#

# httpd        Startup script for the Apache HTTPServer

#

# chkconfig: 2345 85 15

# description:The Apache HTTP Server is an efficient and extensible  \

#              server implementing the currentHTTP standards.

*其中加粗部分的含义为:

  • 2345 在2、3、4、5运行级别启动apache;
  •  85 指系统启动的时候有很多服务待开启,apache排第85个;
  •   15 表示系统关闭时,apache在第15个关闭。

修改后,httpd服务就支持service和chkconfig命令了。

 

2.2.2 源码安装

(不建议新手采用,采用上述2.2.1rpm安装后跳过本节)

【注】要带着压缩包到redhat中去解压,防止出现权限错乱。

2.2.2.1安装步骤

tar(tar.gz:-zxvf; tar.bz2:-jxf)

./configure …

make

make install

安装apr-util需要有xml解析工具,建议先安装expat。安装路径随意,安装后,把安装路径中include目录下的头文件*.h拷贝到/usr/include中即可。

2.2.2.2建议配置

apr: ./configure--prefix=/usr/local/apr

apr-util: ./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr –with-expat=/usr/local/expat

pcre: ./configure--prefix=/usr/local/pcre

httpd: ./configure--prefix=/usr/local/apache --enable-so --enable-dav --enable-dav-fs--enable-mnaintainet-mode --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util

 

配置/usr/local/apache/conf/httpd.conf(建议先做备份):

ServerRoot"/usr/local/apache"

Listen 80

ServerName localhost:80

DocumentRoot "/var/www/html"

<Directory"/var/www/html">

    Options FollowSymLinks

    AllowOverride None

    Order deny,allow

    Allowfrom all

</Directory>

设置自启动,并启动httpd服务。

2.3  安装php

2.3.1 rpm包安装

rpm -ivh libxml2-2.7.6-14.el6.x86_64.rpm

rpm -ivh libxml2-devel-2.7.6-14.el6_8.1.x86_64.rpm

(还有libxml2-python-2.7.6-14.el6.x86_64.rpm,与上述两个包版本一致)

rpm -ivh zlib-devel-1.2.3-29.el6.x86_64.rpm

(下面三项保持版本与zabbix包中的php-bcmath-5.3.3-47.el6.x86_64.rpm和php-mbstring-5.3.3-47.el6.x86_64.rpm一致)

rpm -ivh php-common-5.3.3-47.el6.x86_64.rpm

rpm -ivhphp-cli-5.3.3-47.el6.x86_64.rpm

rpm -ivh php-5.3.3-47.el6.x86_64.rpm

rpm -ivh autoconf-2.63-5.1.el6.noarch.rpm

rpm -ivh automake-1.11.1-4.el6.noarch.rpm

rpm -ivhphp-devel-5.3.3-47.el6.x86_64.rpm


cp/usr/share/doc/php-common-5.3.3/php.ini-production \

 /usr/lib64/php/build/php.ini

vi/etc/httpd/conf/httpd.conf:

(a)找到DirectoryIndex index.html,在后面添加index.php

(b)找到

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

在后面添加

AddType application/x-httpd-php-source .phps

AddType application/x-httpd-php .php

(c)查找LoadModule php5_module modules/libphp5.so,如没有手动添加。

 

2.3.2 源码安装

(不建议新手采用,采用上述2.3.1rpm安装后跳过本节)

a)     php需要先安装依赖libxml2、zib-devel、libxml2-devel(划线部分版本保持一致,还有libxml2-python-2.7.6-14.el6.x86_64)

b)     解压tar

./configure --prefix=/usr/local/php--with-apxs2=/usr/local/apache/bin/apxs

make

make test

make install

c)     cp php.ini-development/usr/local/php/lib 重命名为php.ini

d)     cd到apache原解压目录

./configure --prefix=/usr/local/apache --enable-so--enable-dav --enable-dav-fs --enable-mnaintainet-mode--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util--enable-module=shared

e)     cd /usr/local/apache/conf/

vi httpd.conf(建议先备份)

:/ AddType application/x-compress .

在后面添加:(目的是使apache支持php)

    AddTypeapplication/x-httpd-php .php

    AddTypeapplication/x-httpd-php-source .php5

用同样方法添加初始页:

保存后可以使用curl -v http://22.189.26.130:80/index.php查看是否返回正确(200)

 

*作为新人,尝试编译安装存在一个问题,就是lib没有释放到/usr/lib。

尝试解决方案:配置LD_LIBRARY_PATH或者执行以下步骤

cd /etc/ld.so.conf.d

touch php_x86_84.conf

vi php_x86_84.conf 添加:/usr/local/php/lib

ldconfig

尽管采用上述方案,仍有在后续安装中找不到httpd,原因待后续研究。因此,建议新手采用rpm包安装方式。在此诚心求高手指教。

2.4 安装zabbix其他依赖包

2.4.1 php-gdphp-gd

rpm -ivhphp-xml-5.3.3-47.el6.x86_64.rpm

rpm -ivhlibXpm-3.5.10-2.el6.x86_64.rpm

rpm -ivhphp-gd-5.3.3-47.el6.x86_64.rpm

2.4.2 php-mysql

rpm -ivhphp-pdo-5.3.3-47.el6.x86_64.rpm

rpm -ivhmysql-libs-5.1.73-8.el6_8.x86_64.rpm

rpm -ivhphp-mysql-5.3.3-47.el6.x86_64.rpm

2.4.3 net-snmp

rpm -ivhlm_sensors-libs-3.1.1-17.el6.x86_64.rpm

rpm -ivhnet-snmp-libs-5.5-60.el6.x86_64.rpm

rpm-ivh net-snmp-5.5-60.el6.x86_64.rpm

三、Zabbix Server安装与配置

3.1 配置本地yum源

其实理论上之前不用一步步安装,全丢到本地仓库里面就好了,但是我喜欢一步步踏实地配置好。

1.     将所有zabbix rpm包拷贝到一个目录下,如:/var/www/html/zabbix/2.4.8-1.el6。

2.     cd /var/www/html/zabbix/2.4.8-1.el6

3.     createrepo .

4.     在/etc/yum.repos.d下创建zabbix-2.4.8-rhel6.repo文件

5.     vi /etc/yum.repos.d/zabbix-2.4.8-rhel6.repo

[zabbix-2.4.8-rhel6]

name=zabbix 2.4.8 for rhel6 x64

baseurl=http://【服务器ip】/zabbix/2.4.8-1.el6

enable=1

gpgcheck=0


注意:由于上面httpd.conf中指定 DocumentRoot为/var/www/html,所以这里baseurl指定的时候直接相对这个目录配置。

6.     查看仓库搭建情况yum repolist

[]# yum repolist

Loaded plugins: product-id, security, subscription-manager

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

zabbix-2.4.8-rhel6              | 2.9 kB     00:00    

zabbix-2.4.8-rhel6/primary_db    |  15 kB     00:00    

repo id           repo name                status

zabbix-2.4.8-rhel6  zabbix 2.4.8 for rhel6 x64    20

repolist: 20

【注】可以用同样的方式配置mysql等本地yum源。

3.2 安装Zabbix Server软件包

yum installzabbix-server-mysql zabbix-web-mysql

会提示缺少哪些依赖,挨个安装。无报错信息进行下一步。

 

3.3 安装与配置MySQL

3.3.1 yum安装

yum install mysql mysql-server

注意查看安装日志中的密码信息,如:

A random root password has been set. You will find it in'/root/.mysql_secret'.

如果出现于mysql-libs的冲突:

安装兼容包:rpm-ivh MySQL-shared-compat-5.6.27-1.el6.x86_64.rpm

用rpm -qa |grep mysql找到mysql-libs

卸载mysql-libs:rpm -e mysql-libs-5.1.73-8.el6_8.x86_64

再次尝试yum安装命令。

安装成功后启动mysql服务:service mysql start(有些地方可能是mysqld)。

 

3.3.2 配置用户和数据库

root登录mysql:mysql -u root -p

首次登录需要修改密码:

SET PASSWORD FOR'root'@'localhost'=PASSWORD('新密码');

其他可选方法:

  •    shell>mysqladmin –u rootpassword “新密码”
  •    mysql>use mysql;

mysql>update user set password=PASSWORD(‘新密码’)\

->where User=”root”;

mysql>flush privileges;

创建zabbix数据库

create databasezabbix character set utf8 collate utf8_bin;

授权zabbix用户

grant allprivileges on zabbix.* to zabbix@’%’ identified by '数据库密码';

(查看用户授权的方法是:

mysql>flush privileges;

mysql>showgrants for zabbix@‘%’;)

3.3.3 初始化数据库

cd /usr/share/doc/zabbix-server-mysql-2.4.8/create/

mysql -u root -pzabbix < schema.sql

(此时你可能会等得怀疑人生,因为光标很长一段时间都在闪烁,什么输出都没有。请耐心等待!)

mysql -u root -pzabbix < images.sql

mysql -u root -pzabbix < data.sql

 

3.4 配置Zabbix Server

3.4.1 修改zabbix_server.conf

(egrep -v"(^#|^$)" /etc/zabbix/zabbix_server.conf命令可以查看zabbix非注释行。)

ListenPort=10051

SourceIP=[你的Server ip]

LogFile=/var/log/zabbix/zabbix_server.log

LogFileSize=0

PidFile=/var/run/zabbix/zabbix_server.pid

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=[你的数据库密码]

DBSocket=/var/lib/mysql/mysql.sock

SNMPTrapperFile=/var/log/snmptt/snmptt.log

ListenIP=[你的Server ip]

AlertScriptsPath=/usr/lib/zabbix/alertscripts

ExternalScripts=/usr/lib/zabbix/externalscripts

3.4.2 修改zabbix.conf.php

vi/etc/zabbix/web/zabbix.conf.php

把$DB['SERVER']和$ZBX_SERVER的localhost改成IP地址

3.4.3 启动zabbix-server服务

servicezabbix-server start

(设置开机自启动:chkconfig zabbix-server on)

查看zabbix进程:ps -ef | grep zabbix

如果没有下图这么多进程,可以查看log找出报错原因。

cat /var/log/zabbix/zabbix_server.log

查看zabbix_server端口:netstat -anp | grep zabbix

tcp 0 0 ip:10051 0.0.0.0:* LISTEN 30097/zabbix_server

查看zabbix_server日志。

30097:20171124:003429.072 Starting Zabbix Server. Zabbix 2.4.8 (revision 59539).

 30097:20171124:003429.072 ****** Enabled features ******

 30097:20171124:003429.072 SNMP monitoring:           YES

 30097:20171124:003429.072 IPMI monitoring:           YES

 30097:20171124:003429.072 WEB monitoring:            YES

 30097:20171124:003429.072 VMware monitoring:         YES

 30097:20171124:003429.072 Jabber notifications:      YES

 30097:20171124:003429.072 Ez Texting notifications:  YES

 30097:20171124:003429.072 ODBC:                      YES

 30097:20171124:003429.072 SSH2 support:              YES

 30097:20171124:003429.072 IPv6 support:              YES

 30097:20171124:003429.072 ******************************

 30097:20171124:003429.072 using configuration file: /etc/zabbix/zabbix_server.conf

 30097:20171124:003429.077 current database version (mandatory/optional): 02040000/02040000

 30097:20171124:003429.077 required mandatory version: 02040000

 30097:20171124:003429.084 server #0 started [main process]

 30099:20171124:003429.084 server #1 started [configuration syncer #1]

 30100:20171124:003429.085 server #2 started [db watchdog #1]

 30101:20171124:003429.085 server #3 started [poller #1]

 30102:20171124:003429.085 server #4 started [poller #2]

 3.5 管理Zabbix Web

更改apache配置:vi /etc/httpd/conf.d/zabbix.conf

Alias /zabbix /usr/share/zabbix

<Directory "/usr/share/zabbix">

    Options FollowSymLinks

    AllowOverride None

    Order allow,deny

    Allow from all

    <IfModule mod_php5.c>

        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 date.timezone Asia/Shanghai

    </IfModule>

</Directory>

<Directory "/usr/share/zabbix/conf">

    Order deny,allow

    Deny from all

    <files *.php>

        Order deny,allow

        Deny from all

    </files>

</Directory>

<Directory "/usr/share/zabbix/api">

    Order deny,allow

    Deny from all

    <files *.php>

        Order deny,allow

        Deny from all

    </files>

</Directory>

<Directory "/usr/share/zabbix/include">

    Order deny,allow

    Deny from all

    <files *.php>

        Order deny,allow

        Deny from all

    </files>

</Directory>

<Directory "/usr/share/zabbix/include/classes">

    Order deny,allow

    Deny from all

    <files *.php>

        Order deny,allow

        Deny from all

    </files>

</Directory>

 重新启动apache httpd服务。

四、Zabbix Server Web控制台

4.1 控制台初始化

http://你的ip/zabbix/setup.php

如果不能访问,则对防火墙添加允许80端口访问规则或者关闭防火墙。

 关闭防火墙serviceiptables stop

vi/etc/sysconfig/iptables

-A INPUT -mstate --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重启防火墙serviceiptables start

 或者直接chkconfigiptable off;

 打开后显示欢迎界面:



配置数据库连接:

 

4.2 登录控制台

http://你的ip/zabbix

登录,默认用户名Admin,密码zabbix。

 Zabbix WebDashboard主界面:

Zabbix状态信息界面

 4.3 更改管理员密码等个性化设置

点击右上角的profile可以更改密码和显示语言等。

 在profile语言选择项下拉列表里,有很多语言其实是日常不需要的如俄文,意大利文,日文,西班牙文等等,可以设置为不显示。修改/usr/share/zabbix/include/locales.inc.php文件将除了English (en_US)和Chinese (zh_CN)设置为true外,其他语言都设置为 false,保存退出即可。

 4.4 安全性增强设置

点击管理(Administration)->用户(Users):

将Guests的前段存取(Frontend access)改为“停用的(Disabled)”

 Zabbix Web控制配置完成后, Administration标签页会依然保留Installation子标签功能,如果点击Installation可以重新安装配置Zabbix。生产环境下为了防止Zabbix被重新安装,需要将此功能禁用。

在server上更改:(265-269行)

vi /usr/share/zabbix/include/menu.inc.php

直接输 :265可以快速定位。/** **/注释掉installation页。

4.5 常见问题

4.5.1 图形中文乱码

切换到中文语言界面后,在查看监控数据Graph(图形)的时候,下面的中文文字变成方框,不可识别。

问题原因:

由于zabbix的web前端默认没有中文字库,因此zabbix图形化显示时下面的中文都是方框。解决方法就是拷贝中文字体到zabbix前端。

解决方法:

a)       把喜欢的Windows系统字体(C:\Windows\Fonts)里自带的.ttf文件上传到zabbix服务器字体目录内 /usr/share/zabbix/fonts/ (下面以simhei.ttf为例)

a)       修改/usr/share/zabbix/include/defines.inc.php文件

查找graphfont,共有2个结果,找到后将graphfont改为simhei,保存退出。

【注】这2个结果分别在行44和92。

define('ZBX_GRAPH_FONT_NAME',           'simhei'); // font file name

define('ZBX_FONT_NAME', ' simhei ');

修改完成后,刷新页面,图形中的中文显示正常。

4.5.2 数据库无法连接

如果遇到上图中的错误。先检查mysql服务是否启动、上述各个配置文件是否配置正确,再次授权给zabbix用户。

如果还是不能解决,

getsebool -a |grep httpd

查看httpd_can_network_connect的值是否是off,是的话打开:

setsebool httpd_can_network_connect1

重启apache: service httpd restart

此时问题应该得到解决。如果这时候报deny错误,需要重新做授权。

 4.5.3 may not running

如果页面有红色提示框:zabbix may not runnning。

很有可能是因为selinux的缘故。

五、Zabbix Agent安装与配置

5.1 安装zabbix Agent软件包

5.1.1 yum安装

如果之前配置好了本地yum源,这里就可以直接开始安装了。但是在安装前检查yum仓库的地址不能是/zabbix/….因为/zabbix目录已经被zabbix server使用了,会报404错误。

但是别忘了更改状态:

yum installzabbix-agent

Loaded plugins: product-id, security, subscription-manager

This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package zabbix-agent.x86_64 0:2.4.8-1.el6 will be installed

--> Finished Dependency Resolution

 

Dependencies Resolved

 

======================================================================

 Package      Arch        Version     Repository          Size

======================================================================

Installing:

zabbix-agent x86_64      2.4.8-1.el6  zabbix-2.4.8-rhel6  175 k

 

Transaction Summary

======================================================================

Install       1 Package(s)

 

Total download size: 175 k

Installed size: 565 k

Is this ok [y/N]: y

Downloading Packages:

zabbix-agent-2.4.8-1.el6.x86_64.rpm                | 175 kB     00:00    

Running rpm_check_debug

Running Transaction Test

Transaction Test Succeeded

Running Transaction

  Installing : zabbix-agent-2.4.8-1.el6.x86_64         1/1

  Verifying  : zabbix-agent-2.4.8-1.el6.x86_64         1/1

 

Installed:

  zabbix-agent.x86_64 0:2.4.8-1.el6

 

Complete!

 5.1.2 修改Zabbix Agent配置

egrep -v"(^#|^$)" /etc/zabbix/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid

LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=0

Server=[你的Server ip]

ServerActive=[你的Server ip]

Hostname=Zabbix server

Include=/etc/zabbix/zabbix_agentd.d/

 5.1.3 启动Zabbix Agent

servicezabbix-agent start

(设置开机自启动:chkconfig zabbix-agent on)

 查看agent进程:

ps -ef|grepzabbix_agentd

zabbix 6550    1  0 23:02 ?  00:00:00 zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf

zabbix 6552 6550  0 23:02 ?  00:00:00 zabbix_agentd: collector [idle 1 sec] 

zabbix 6553 6550  0 23:02 ?  00:00:00 zabbix_agentd: listener #1 [waiting for connection]

zabbix 6554 6550  0 23:02 ?  00:00:00 zabbix_agentd: listener #2 [waiting for connection]

zabbix 6555 6550  0 23:02 ?  00:00:00 zabbix_agentd: listener #3 [waiting for connection]

zabbix 6556 6550  0 23:02 ?  00:00:00 zabbix_agentd: active checks #1 [idle 1 sec]

root  6575 2042  0 23:05 pts/0   00:00:00 grep zabbix_agentd

 查看端口:

netstat-antp|grep zabbix_agentd

tcp    0  0 0.0.0.0:10050    0.0.0.0:*      LISTEN      6550/zabbix_agentd 

tcp    0  0 :::10050         :::*          LISTEN      6550/zabbix_agentd

 查看日志:

tailf/var/log/zabbix/zabbix_server.log

5.1.4 验证Zabbix Server和Agent之间的连通性

telnet 你的agent ip 10050

telnet 你的server ip 10051

如果提示“Connected to…”就可以了。

 

5.2 添加Zabbix Agent到Server监控

到server控制台页面,点击组态->主机,现在只有一台主机

 5.2.1 添加新主机

点击右侧的创建主机


5.2.2 关联模板

点击主机名“client1”,进入主机配置界面,点击“模板”标签,在“链接新模板”右侧的文本框里输入linux系统会智能匹配包含linux的模板:


从匹配结果里选择TemplateOS Linux,

点击“添加”按钮,将选择的模板关联到这台主机,然后点击“更新”按钮,更新主机配置,

在主机列表里可以看到,主机client1已经有关联的模板,且应用集,项目,触发器,图形,探索等都有数字,(数字表示该项里包含的条目数量)

主机client1状态为“已启用”,可用性的第一个图标绿色的Z,表示Zabbix Agent运行正常,与ZabbixServer通信连接正常。

 【注】这里的ZabbixServer自身没有启动Zabbix Agent进程,所以启用后会看到红色的Z。

 5.2.3 查看Zabbix Agent数据或图形

被监控的客户端收集到的数据在Zabbix Server Web控制通常会有两种显示形式,数据或图形。数据类通常是某些固定值或日志内容,如主机名称,操作系统版本等“文本”类型的数据;图形是将定期收取的"数值"类型数据绘制成曲线图。获取数据要等待若干周期,周期越长,获取的数据越多,数据或图形越详实。

点击"监测中"标签,再点击"最新数据"子标签,在"主机"筛选框里输入client1,点击“过滤”按钮,即可以查看主机client1的最新数据:




5.3 常见问题

5.3.1 Z图标变成红色


如果右侧“可用性”的Z图标变成红色,表示ZabbixAgent连接失败,鼠标点击红色Z图标,可以看到详细错误信息

Get value from agent failed: cannot connect to [[ip]:10050]: [111] Connection refused”。

主要原因:远程连接10050端口失败

  •  可能原因1:Zabbix Agent进程zabbix-agentd没有启动

解决方法:启动zabbix-agentd服务

  •  可能原因2:zabbix_agentd.conf 监听端口配置错误

解决方法:查看zabbix_agentd.conf配置文件确认10050端口配置正确。

  •  可能原因3:Zabbix Agent监听10050端口不存在

解决方法:使用netstat-antp命令查看是否有10050端口

  •  可能原因4:被防火墙阻挡

解决方法:关闭防火墙或添加10050端口可以访问的防火墙策略

 5.3.2 版本不一致

报错:Receivedempty response from Zabbix Agent at [ip]. Assuming that agent droppedconnection because of access permiss

错误原因:ZabbixServer与Zabbix Agent版本不同

解决方法:升级ZabbixAgent版本使其与Zabbix Server版本相同,升级后必须重启Zabbix Agent。

六、自定义监控项

6.1 Linux Agent

6.1.1 编写数据采集脚本

如:/usr/local/bin/userNum.sh

内容:who | wc –l

6.1.2 Agent 配置

 /etc/zabbix/zabbix_agentd.d目录下新建配置文件,

  如:userparameter_userlogin.conf

添加内容:

UserParameter=<Key>,<Scripts>

如:UserParameter=login.user,/usr/local/bin/userNum.sh或直接写入命令UserParameter=login.user,who | wc –l。

重启zabbix-agent服务:

    service zabbix-agent stop

    service zabbix-agent start

 6.1.3 Server端测试

  zabbix_get -s [你的agent_ip]-p 10050 -k "login.user"

[root@whcszbix zabbix_agentd.d]# zabbix_get -s **.***.**.*** -p 10050 -k "login.user"

2

      如果提示”Commond not found”,需要安装先zabbix-get包。

 6.1.4 定义模板


创建应用集。点击“分类”

创建监控项。点击“项目”

 添加触发器。


创建图形

6.1.5 主机关联模板

“添加”后,记得要点“更新”。

6.2 Windows Agent

先确认agent自身配置文件是否正确(用写字板打开,不用记事本!!!)。

C:\Windows\zabbix_agents_2.4.4.win\conf\zabbix_agentd.conf

框出参数均配置Server ip,修改配置需重启Zabbix Agent服务。

6.2.1 编写数据采集脚本

bat?ps1?或者直接用windows自带的数据源。

typeperf -qx>C:\zabbixlist.txt,可以获取windows自带指标。

6.2.2 修改Agent配置文件

C:\Windows\zabbix_agents_2.4.4.win\conf\zabbix_agentd.conf

添加键值,

UserParameter=<Key>,<shellCommand>[,<Period>]

如:

UserParameter=UserPerfThermal,"\ThermalZone Information(*)\Temperature",30

powershell脚本需要在脚本名前加执行参数:

如:UserParameter=TestHello,powershell -NoProfile -ExecutionPolicyBypass -File E:\ZabbixScripts\test.ps1

记得重启Zabbix Agent服务。

6.2.3 Server端测试

zabbix_get-s [agent ip] -p 10050 -k "UserPerfThermal"

zabbix_get-s [agent ip] -p 10050 -k " TestHello"

6.2.4 定义及关联模板

参考6.1.4和6.1.5


写在后面:

  • 欢迎大神们指正赐教!
  • 写完这篇,我深刻意识到需要好好练习博客排版。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值