服务端部署

备份原有的yum

[root@ns1 ~]# find /etc/yum.repos.d/ -name '*.repo' -exec mv {} {}.back \;

#配阿里云yum源

[root@ns1 ~]# vim /etc/yum.repos.d/aliyun.repo

[aliyun]

name=centos6

baseurl=https://mirrors.aliyun.com/centos/6/os/x86_64/

enabled=1

gpgkey=https://mirrors.aliyun.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

gpgcheck=1

[epel]

name=Extra Packages for Enterprise Linux 6 - $basearch

baseurl=http://mirrors.aliyun.com/epel/6/$basearch

http://mirrors.aliyuncs.com/epel/6/$basearch

failovermethod=priority

enabled=1

gpgcheck=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

安装前端web

[root@ns1 ~]yum -y install httpd php php-mysql mysql-server

[root@ns1 ~]service httpd start

修改数据库配置文件,把编码改为utf8

[root@ns1 ~]vim /etc/my.cnf

[mysqld]

default-character-set=utf8

[root@ns1 ~]service mysqld start

加入开机自启动

[root@ns1 ~]chkconfig httpd on

[root@ns1 ~]chkconfig mysqld on

安装zabbix服务端

[root@ns1 ~]#yum -y install zabbix22-server

初始化数据库

[root@ns1 ~]#  mysql -uroot <<end <="" p="" style="word-wrap: break-word;">

delete from mysql.user where user='';

update mysql.user set password=password('123') where user='root';

delete from mysql.db where user='';

flush privileges;

create database zabbix default charset utf8;

grant all on zabbix.* to zabbix@localhost identified by '123';

END

找出要导入数据库的数据文件

[root@ns1 ~]# find /usr/share/zabbix-mysql/ -name '*.sql'

/usr/share/zabbix-mysql/p_w_picpaths.sql

/usr/share/zabbix-mysql/data.sql

/usr/share/zabbix-mysql/schema.sql

导入数据,这里要注意导入的顺序

[root@ns1 ~]#  mysql -uzabbix -p123 zabbix < /usr/share/zabbix-mysql/mysql.sql

[root@ns1 ~]#  mysql -uzabbix -p123 zabbix

[root@ns1 ~]#  mysql -uzabbix -p123 zabbix

修改zabbix的配置文件,按照自己之前的配置修改数据库名,用户名,密码

[root@ns1 ~]# vim /etc/zabbix/zabbix_server.conf

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

LogFileSize=0

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

DBName=zabbix

DBUser=zabbix

DBPassword=123

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

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

AlertScriptsPath=/usr/lib/zabbix/alertscripts

ExternalScripts=/usr/lib/zabbix/externalscripts

启动zabbix

[root@ns1 ~]#  /etc/init.d/zabbix-server start

Starting Zabbix server:

[确定]

[root@ns1 ~]# chkconfig zabbix-server on

[root@ns1 ~]# netstat -tnlp |grep zabbix

tcp        0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      28656/zabbix_server

tcp        0      0 :::10051                    :::*                        LISTEN      28656/zabbix_server

安装zabbix-web

[root@ns1 ~]# yum -y install zabbix22-web zabbix22-web-mysql

修改php的配置,zabbix有配置要求,具体在web界面安装时会有提示,注意时区是否一致

[root@ns1 ~]#  vim /etc/php.ini

440 max_execution_time = 300

449 max_input_time = 300

729 post_max_size = 16M

946 date.timezone = 'Asia/Shanghai'

[root@ns1 ~]#  service httpd restart

此时可进入web界面安装了

本机登录:http://localhost/zabbix

非本机登录注意selinux,防火墙

[root@ns1 ~]# setenforce 0

[root@ns1 ~]# iptables -F

客户端配置

[root@www ~]# find /etc/yum.repos.d/ -name '*.repo' -exec mv {} {}.back \;

#配置阿里云yum


[root@www ~]# vim /etc/yum.repos.d/aliyun.repo

[aliyun]

name=centos6

baseurl=https://mirrors.aliyun.com/centos/6/os/x86_64/

enabled=1

gpgkey=https://mirrors.aliyun.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

gpgcheck=1

[epel]

name=Extra Packages for Enterprise Linux 6 - $basearch

baseurl=http://mirrors.aliyun.com/epel/6/$basearch

http://mirrors.aliyuncs.com/epel/6/$basearch

failovermethod=priority

enabled=1

gpgcheck=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

[root@www ~]# yum -y install zabbix22-agent.x86_64

[root@www ~]# service zabbix-agentd start

[root@www ~]# chkconfig zabbix-agent on

[root@www ~]# cd /etc/zabbix/

[root@www zabbix]# cp zabbix_agent.conf zabbix_agent.conf.bak

[root@www zabbix]# vim zabbix_agent.conf

Server=192.168.1.111            #服务端ip地址

[root@www ~]# vim /etc/zabbix_agentd.conf

Server=192.168.1.111

ServerActive=192.168.1.111

[root@www zabbix]# service zabbix-agentd restart

部署完成后在服务端测试,能获取到客户端主机名,说明服务端能对客户端进行监控

[root@ns1 ~]# zabbix_get -s 192.168.1.102 -k system.hostname

www.nginx.com

1.官方文档地址:

https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages

2.导入源:

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

3.安装zabbix包

yum install zabbix-server-mysql zabbix-web-mysql

清楚的看一下要安装那些包(httpd php基本都依赖安装了)

Package                                Arch                      Version                                   Repository                  Size

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

Installing:

zabbix-server-mysql                    x86_64                    3.0.1-1.el7                               zabbix                     1.7 M

zabbix-web-mysql                       noarch                    3.0.1-1.el7                               zabbix                     3.5 k

Installing for dependencies:

OpenIPMI-libs                          x86_64                    2.0.19-11.el7                             base                       501 k

OpenIPMI-modalias                      x86_64                    2.0.19-11.el7                             base                        15 k

dejavu-fonts-common                    noarch                    2.33-6.el7                                base                        64 k

dejavu-sans-fonts                      noarch                    2.33-6.el7                                base                       1.4 M

fping                                  x86_64                    3.10-4.el7                                epel                        46 k

httpd                                  x86_64                    2.4.6-40.el7.centos                       base                       2.7 M

httpd-tools                            x86_64                    2.4.6-40.el7.centos                       base                        82 k

iksemel                                x86_64                    1.4-6.el7                                 epel                        50 k

libtool-ltdl                           x86_64                    2.4.2-21.el7_2                            updates                     49 k

libzip                                 x86_64                    0.10.1-8.el7                              base                        48 k

mailcap                                noarch                    2.1.41-2.el7                              base                        31 k

net-snmp-libs                          x86_64                    1:5.7.2-24.el7                            base                       747 k

php                                    x86_64                    5.4.16-36.el7_1                           base                       1.4 M

php-bcmath                             x86_64                    5.4.16-36.el7_1                           base                        56 k

php-cli                                x86_64                    5.4.16-36.el7_1                           base                       2.7 M

php-common                             x86_64                    5.4.16-36.el7_1                           base                       563 k

php-gd                                 x86_64                    5.4.16-36.el7_1                           base                       126 k

php-ldap                               x86_64                    5.4.16-36.el7_1                           base                        51 k

php-mbstring                           x86_64                    5.4.16-36.el7_1                           base                       503 k

php-mysql                              x86_64                    5.4.16-36.el7_1                           base                        99 k

php-pdo                                x86_64                    5.4.16-36.el7_1                           base                        97 k

php-xml                                x86_64                    5.4.16-36.el7_1                           base                       124 k

t1lib                                  x86_64                    5.1.2-14.el7                              base                       166 k

unixODBC                               x86_64                    2.3.1-11.el7                              base                       413 k

zabbix-web                             noarch                    3.0.1-1.el7                               zabbix                     3.3 M

Transaction Summary

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

Install  2 Packages (+25 Dependent packages)

Total download size: 17 M

4.我们给本机也安装上客户端(如果服务端不需要监控略过此步)

yum install zabbix-agent

5.安装mysql数据库

CentOS 7 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了。用mariadb也行。我还是选择了mysql


#导入安装源

rpm -ivh mysql-community-release-el7-5.noarch.rpm

#用 yum 安装 Mysql

yum install mysql-community-server

systemctl enable mysqld  #设置开机启动

systemctl start mysqld   #启动服务

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

备注:1 mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码

2 grep 'temporary password' /var/log/mysqld.log 找到root默认密码

3 mysql5.7默认安装了密码安全检查插件(validate_password),

默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误

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

#修改root本地登录密码

mysqladmin -u root  -p oldpass password "Admin@123"

#登录mysql

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 'Admin@123';

Query OK, 0 rows affected (0.00 sec)

mysql> quit

Bye

(2)进入到这个目录

cd /usr/share/doc/zabbix-server-mysql-3.0.8

运行命令

zcat create.sql.gz | mysql -uroot -p zabbix

6.启动zabbix server服务

修改配置文件:

vi /etc/zabbix/zabbix_server.conf


DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=Admin@123

备注:实际上我的配置文件修改的是DBHost和DBPassword去掉前面的#号。

启动zabbix服务,设置开机自启动

systemctl start zabbix-server

systemctl enable zabbix-server

7.编辑zabbix前端的PHP配合配置

vi /etc/httpd/conf.d/zabbix.conf

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

备注:实际上我就是修改了时区

启动apache服务,设置开机自启动

systemctl start httpd

systemctl enable httpd

8.登陆zabbix

http://IP/zabbix/

显示的界面

Zabbix之配置文件详解

zabbix的配置文件一般有三种:

zabbixserver的配置文件zabbix_server.conf

zabbixproxy的配置文件zabbix_proxy.conf

zabbix_agentd的配置文件zabbix_agentd.conf

  1. zabbixserver的配置文件:

NodeID=0 #分布式节点id号,0代表是独立服务器,默认是被注释掉的,不强制配置

ListenPort=10051 #zabbix server的端口,默认是10051,可以自行修改,

范围是1024-32767 ,一般默认即可

SourceIP=  #连接的源ip地址,默认为空,默认即可

LogFile=/tmp/zabbix_server.log #日志文件的存放位置

LogFileSize=1 #日志文件的大小,单位为MB,当设置为0时,表示不仅行日志轮询,

默认设置为1,默认即可

DebugLevel=3 #指定调试级别,默认即可

PidFile=/tmp/zabbix_server.pid #pid文件的存放位置

DBHost=localhost #数据库主机名,当设置为localhost时,连接mysql通过sock

DBName=zabbix #指定存放zabbix数据数据库的名字

DBUser=zabbix #指定连接数据库的用户名

DBPassword=123456 #用户连接数据库需要的密码

DBSocket=/var/lib/mysql/mysql.sock #前文主机设置为localhost,用户

连接数据库所用的sock位置,

DBPort=3306 #数据库的端口号,当用sock连接时,无关紧要,当通过网络连接时需设置

StartPollers=5 #默认即可

StartIPMIPollers=0 #使用IPMI协议时,用到的参数

StartTrappers=5 #打开的进程数,

StartPingers=1 同上

StartDiscoverers=1

StartHTTPPollers=1

JavaGateway=127.0.0.1 #JavaGateway的ip地址或主机名

JavaGatewayPort=10052 #JavaGateway的端口号

StartJavaPollers=5 #开启连接javagatey的进程数

SNMPTrapperFile=/tmp/zabbix_traps.tmp

StartSNMPTrapper=0 #如果设置为1,snmp trapper进程就会开启

ListenIP=0.0.0.0 #监听来自trapper的ip地址

ListenIP=127.0.0.1

HousekeepingFrequency=1 #zabbix执行Housekeeping的频率,单位为hours

MaxHousekeeperDelete=500 #每次最多删除历史数据的行

SenderFrequency=30 #zabbix试图发送未发送的警报的时间,单位为秒

CacheSize=8M #缓存的大小

CacheUpdateFrequency=60#执行更新缓存配置的时间,单位为秒数

StartDBSyncers=4

HistoryCacheSize=8M

TrendCacheSize=4M

HistoryTextCacheSize=16M

NodeNoEvents=0

NodeNoHistory=0

Timeout=3

TrapperTimeout=300

UnreachablePeriod=45

UnavailableDelay=60

UnreachableDelay=15

AlertScriptsPath=/usr/local/zabbix/shell #脚本的存放路径

FpingLocation=/usr/local/sbin/fping #fping指令的绝对路径

SSHKeyLocation=

LogSlowQueries=0

TmpDir=/tmp

Include=/usr/local/etc/zabbix_server.general.conf

Include=/usr/local/etc/zabbix_server.conf.d/ #子配置文件路径

StartProxyPollers=1 #在zabbix proxy被动模式下用此参数 

ProxyConfigFrequency=3600#同上

ProxyDataFrequency=1

zabbixagentd的配置文件

PidFile=/tmp/zabbix_agentd.pid #pid文件的存放位置

LogFile=/tmp/zabbix_agentd.log #日志文件的位置

LogFileSize=1 #当日志文件达到多大时进行轮询操作

DebugLevel=3 #日志信息级别

SourceIP= #连接的源ip地址,默认为空,即可

EnableRemoteCommands=0 #是否允许zabbix server端的远程指令,

0表示不允许,

1表示允许

LogRemoteCommands=0 #是否开启日志记录shell命令作为警告 0表示不允许,1表示允许

Server=127.0.0.1 #zabbix server的ip地址或主机名,可同时列出多个,需要用逗号隔开

ListenPort=10050 #zabbix agent监听的端口

ListenIP=0.0.0.0 #zabbix agent监听的ip地址

StartAgents=3 #zabbix agent开启进程数

ServerActive=127.0.0.1 #开启主动检查

Hostname=Zabbix server#在zabbix server前端配置时指定的主机名要相同,最重要的配置

RefreshActiveChecks=120 #主动检查刷新的时间,单位为秒数

BufferSend=5 #数据缓冲的时间

BufferSize=100 #zabbix agent数据缓冲区的大小,当达到该值便会发送所有的数据到zabbixserver

MaxLinesPerSecond=100 #zabbix agent发送给zabbix server最大的数据行

AllowRoot=0 #是否允许zabbix agent 以root用户运行

Timeout=3 #设定处理超时的时间

Include=/usr/local/etc/zabbix_agentd.userparams.conf

Include=/usr/local/etc/zabbix_agentd.conf.d/ #包含子配置文件的路径

UnsafeUserParameters=0 #是否允许所有字符参数的传递

UserParameter= #指定用户自定义参数

zabbixproxy的配置文件

Server=192.168.70.133#指定zabbix server的ip地址或主机名

Hostname=zabbix-proxy-1.35 #定义监控代理的主机名,需和zabbix server前端配置时指定的节点名相同

LogFile=/tmp/zabbix_proxy.log #指定日志文件的位置

PidFile=/tmp/zabbix_proxy.pid #pid文件的位置

DBName=zabbix_proxy #数据库名

DBUser=zabbix #连接数据库的用户

DBPassword=123456#连接数据库用户的密码

ConfigFrequency=60 #zabbix proxy从zabbix server取得配置数据的频率

DataSenderFrequency=60 #zabbix proxy发送监控到的数据给zabbix server的频率

zabbix清理历史数据

zabbix属于一个细度化的监控工具,其入库数据随着细度的增加相应的入库数据量也会较大,当数据量到一定时候的时候其反映速度会比较慢,尽管其监控服务在配置时可以指定数据的保存周期, 但是了解下通过直接操作数据库进行数据删除还是有必要的。

通过数据库进行删除的脚本如下:

#!/bin/bash

User="root"

Passwd="361way"

Date=`date -d $(date -d "-30 day" +%Y%m%d) +%s` #取30天之前的时间戳

$(which mysql) -u${User} -p${Passwd} -e "

use zabbix;

DELETE FROM history WHERE 'clock' < $Date;

optimize table history;

DELETE FROM history_str WHERE 'clock' < $Date;

optimize table history_str;

DELETE FROM history_uint WHERE 'clock' < $Date;

optimize table history_uint;

DELETE FROM  trends WHERE 'clock' < $Date;

optimize table  trends;

DELETE FROM trends_uint WHERE 'clock' < $Date;

optimize table trends_uint;

DELETE FROM events WHERE 'clock' < $Date;

optimize table events;

"

注:其中histroy是详细的历史数据,trends是图表趋势数据。一般情况下,根据我的自定义,会将histroy数据保留7天,trend数据保留365天。

zabbix_get命令

在zabbix server上执行zabbix_get命令来试着获取item值

zabbix_get命令详解

命令在zabbix安装目录bin下,如果是window命令自然是zabbix_get.exe,使用方法都是一样的

。端口和源(绑定)IP是可选的,其他参数不能漏掉

# /usr/local/zabbix-2.2.1/bin/zabbix_get -h

Zabbix get v2.2.1 (revision 40808) (09 December 2013)

usage: zabbix_get [-hV] -s <host name or IP> [-p <port>] [-I <IP address>] -k <key>

Options:

-s --host <host name or IP>          Specify host name or IP address of a host

-p --port <port number>              Specify port number of agent running on the host. Default is 10050

-I --source-address <IP address>     Specify source IP address

-k --key <key of metric>             Specify key of item to retrieve value for

-h --help                            Give this help

-V --version                         Display version number

Example: zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"

参数说明:

-s --host: 指定客户端主机名或者IP

-p --port:客户端端口,默认10050

-I --source-address:指定源IP,写上zabbix server的ip地址即可,一般留空,服务器如果有多ip的时候,你指定一个。

-k --key:你想获取的key

至于使用长参数还是短的,自己选,我经常使用-s而不是-host,太长了。来个例子

zabbix_get获取数据

获取负载

./zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg15]"

0.270000

./zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg15]"

0.270000

获取主机名

# ./zabbix_get -s 127.0.0.1 -p 10050 -I 127.0.0.1 -k "system.hostname"

10-9-4-20

# ./zabbix_get -s 127.0.0.1 -p 10050 -I 127.0.0.1 -k "system.hostname"

10-9-4-20

zabbix_get是什么?

zabbix-get 是Zabbix 中的一个程序,用于zabbix-Server 到zabbix-agent 的数据获取,通常可以用来

检测验证agent 的配置是否正确,类似nagios的./check_nt等监控工具。

zabbix_get作用?

1)Server端和Agent端测试数据

2)判断一些故障问题,或者获取指定数据。

zabbix_get格式:

[root@loganalyzer bin]# ./zabbix_get -h

usage:

zabbix_get -s host-name-or-IP [-p port-number] [-I IP-address] -k item-key

zabbix_get -h

zabbix_get -V

Get data from Zabbix agent.

General options:

-s --host host-name-or-IP  Specify host name or IP address of a host

-p --port port-number      Specify port number of agent running on the host

(default: 10050)

-I --source-address IP-address   Specify source IP address

-k --key item-key          Specify key of the item to retrieve value for

-h --help                  Display this help message

-V --version               Display version number

Example(s):

zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"

zabbix_get基本参数详解:

-s --host: 指定客户端主机名或者IP

-p --port:客户端端口,默认10050

-I --source-address:指定源IP,写上zabbix server的ip地址即可,一般留空,服务器如果有多ip的

时候,你指定一个。

-k --key:  你想获取的key

-h --help  帮助

-V --version 版本

zabbix_get获取信息案例:

1)获取指定主机cpu五分钟之内的负载

[root@loganalyzer bin]# ./zabbix_get -s 192.168.1.245 -p 10050 -k 'system.cpu.load[all,avg5]'

0.350000

[root@loganalyzer bin]#

zabbix_get是zabbix中的一个程序,用于zabbix-server到zabbix-agent获取数据。通常用来检测agent的配置是否正确。

获取CPU负载

[root@localhost ~]# zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg15]"

0.000000

key可以加引号,也可以不加。

获取主机名

[root@localhost ~]# zabbix_get -s 127.0.0.1 -p 10050 -k system.hostname

localhost.localdomain

Zabbix_sender命令:

zabbix_sender是什么?有什么作用?

zabbix获取key值有超时时间,如果自定义的key脚本一般需要执行很长时间,这根本没法去做监控,那

怎么办呢?使用zabbix监控类型zabbix trapper,需要配合zabbix_sender给它传递数据。关于trapper

的用法,我们来弄个实例。

执行超长时间脚本,如:脚本去几十台服务器拉去数据,每个日志都上G,然后日志整合在一起,统计出

返回值。这种脚本比如超时,所以我们必须改成让客户端提交数据的方式。

zabbix_sender命令用法:

[root@localhost ~]# zabbix_sender -h

Zabbix Sender v2.2.11 (revision 56693) (12 November 2015)

usage: zabbix_sender [-Vhv] {[-zpsI] -ko | [-zpI] -T -i <file> -r} [-c <file>]

Options:

-c --config <file>                   Absolute path to the configuration file

-z --zabbix-server <server>          Hostname or IP address of Zabbix server

-p --port <server port>              Specify port number of server trapper running on the server. Default is 10051

-s --host <hostname>                 Specify host name. Host IP address and DNS name will not work

-I --source-address <IP address>     Specify source IP address

-k --key <key>

Specify item key

-o --value <key value>               Specify value

-i --input-file <input file>         Load values from input file. Specify - for standard input

Each line of file contains whitespace delimited: <hostname> <key> <value>

Specify - in <hostname> to use hostname from configuration file or --host argument

-T --with-timestamps                 Each line of file contains whitespace delimited: <hostname> <key> <timestamp> <value>

This can be used with --input-file option

Timestamp should be specified in Unix timestamp format

-r --real-time                       Send metrics one by one as soon as they are received

This can be used when reading from standard input

-v --verbose                         Verbose mode, -vv for more details

Other options:

-h --help                            Give this help

-V --version                         Display version number

使用参数:

-c --config <file>                   配置文件绝对路径

-z --zabbix-server <server>          zabbix server的IP地址

-p --port <server port>              zabbix server端口.默认10051

-s --host <hostname>                 主机名,zabbix里面配置的主机名(不是服务器的hostname),不能使用ip地址

-I --source-address <IP address>     源IP

-k --key <key>                       监控项的key

-o --value <key value>               key值

-i --input-file <input file>         从文件里面读取hostname、key、value 一行为一条数据,使用空格作为分隔符,如果主机名带空格,那么请使用双引号包起来

-T --with-timestamps              一行一条数据,空格作为分隔符: <hostname> <key> <timestamp> <value>,配合 --input-file option,timestamp为unix时间戳

-r --real-time                      将数据实时提交给服务器

-v --verbose                         详细模式, -vv 更详细

zabbix的服务器端与客户端连接的主要工具就是zabbix里bin文件夹下的zabbix_get文件,这个命令只能在zabbix的server端使用,如果在agent端使用就会提示如下的错误:

zabbix_get [7189]: Check access restrictions in Zabbix agent configuration

在server端使用也是有说法,这里先查查看它的官方帮助

[root@chen-zk-001 bin]# ./zabbix_get -h

Zabbix get v2.2.6 (revision 48483) (27 August 2014)

usage: zabbix_get [-hV] -s <host name or IP> [-p <port>] [-I <IP address>] -k <key>

Options:

-s --host <host name or IP>          Specify host name or IP address of a host

-p --port <port number>              Specify port number of agent running on the host. Default is 10050

-I --source-address <IP address>     Specify source IP address

-k --key <key of metric>             Specify key of item to retrieve value for

-h --help                            Give this help

-V --version                         Display version number

Example: zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"

里面说明了,-s后面接的是目标地址,-p后面要加端口号,这个一般都是10050, -I 后面加原地址,不过这个一般用不上,-k 后面接的就是item项目里的key。

不过这里要注意一点!-s 后面是要接上web界面里能连上的ip地址,本人实验里,监控zabbix_server使用127.0.0.1会报错,会提示Received empty response from Zabbix Agent at [127.0.0.1]. Assuming that agent dropped connection because of access permission。然后在agentd.conf里把127.0.0.1更改成了机器的内网ip就可以成功监控了。

Item属性含义:(拿3.0举例)

属性描述

名称监控项item名称

类型item类型(常见agent、SNMP、agent(active)等)

Key监控项item的key,点击select可看到系统很多自带的key,也可以看到用户自定义的key。

主机接口主机接口,例如agent、SNMP、impi等

信息类型自己根据要监控项目定义

数据类型一般十进制

单位默认情况下,如果原始值超过1000,那么他会先除以1000并且显示出来。

如果单位被指定为 B (byte),那么它会除以1024然后再显示数据。因此在监控流量和文件大小的时候不要用错单位,否则会出现数据不一致的情况。

自定义倍数启用这个选项,所有接收到的整数或者浮点数都会乘以这个文本框里面的值。使用这个选项,zabbix将会把收到的KB,MBps等数据先转为B,Bps。否则zabbix不能正确设置前缀(K,M,G等等)。

数据更新间隔数据更新时间注意:如果设置为0,那么这个数据将永久不更新。但是如果在灵活更新间隔(flexible interval)里面设置了一个非0间隔,那么以这个为准

自定义时间间隔eg:

1-5,11:00-19:00,表示周一到周五的早上10点到晚上19点每十秒更新一次数据。其余时间使用默认值,不会更新。在zabbix主动方式的item不适用

历史数据保留时长默认天,历史保留天数。

趋势数据存储默认天

存储值涉及到计算公式

查看值值映射,需要配置数字映射到字符的映射表。

新应用创建一个新的应用

应用集eg:cpu、disk、network,监控项可以属于多个应用

主机资产记录自动模式数据自动填充到inventory资产清单的相应属性

描述监控项的描述

启用是否启用这个监控项.

LNMP+zabbix-3.2.1

一、zabbix服务端部署

1、解压

tar -xf nginx-1.10.1.tar.gz

tar -xf php-5.6.22.tar.gz

tar -xf freetype-2.4.0.tar.bz2

tar -xf mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz

tar -xf zabbix-3.2.1.tar.gz

2、安装Nginx yum -y install gcc openssl-devel pcre-devel

useradd -s /sbin/nologin nginx

cd ~/nginx-1.10.1/

./configure \

>--prefix=/usr/local/nginx \

>--user=nginx \ >--group=nginx \

>--with-http_ssl_module

make && make install

vim /usr/local/nginx/conf/nginx.conf

location / {

root    html;

index    index.php

index.html

index.htm;

}

location ~ \.php$ {

root   html;

fastcgi_pass

127.0.0.1:9000;

fastcgi_index

index.php;

fastcgi_param

SCRIPT_FILENAME    $document_root$fastcgi_script_name;

include            fastcgi_params;

}

/usr/local/nginx/sbin/nginx    #启动nginx

3、安装MySQL

useradd mysql

mv mysql-5.6.30-linux-glibc2.5-x86_64/ /usr/local/mysql

chown -R mysql.mysql /usr/local/mysql/

su - mysql

cd /usr/local/mysql/scripts/

./mysql_install_db \

>--user=mysql \

>--basedir=/usr/local/mysql \

>--datadir=/usr/local/mysql/data

exit

cd /usr/local/mysql/support-files/

cp my-default.cnf /etc/my.cnf

cp mysql.server /etc/init.d/mysql

vim /etc/init.d/mysql

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile

source /etc/profile

chkconfig --add mysql

chkconfig mysql on

service mysql start

/usr/local/mysql/bin/mysqladmin -u root password '123456' mysql -uroot -p123456

mysql> create database zabbix character set utf8;

mysql> grant all on zabbix.* to zabbix@localhost identified by 'qwe123';

4、安装Freetype(可以使用系统自带的)

cd ~/freetype-2.4.0

./configure --prefix=/opt/freetype-2.4.0

make && make install

yum  -y  install freetype

5、安装PHP

yum -y install libjpeg-devel libxml2-devel libpng-devel

cd ~/php-5.6.22/

./configure \

>--prefix=/usr/local/php5/ \

>--enable-fpm \

>--enable-mbstring \

>--enable-bcmath \

>--enable-sockets \

>--with-config-file-path=/usr/local/php5/etc \

>--with-mysql=/usr/local/mysql/ \

>--with-mysqli=/usr/local/mysql/bin/mysql_config \

>--with-gd \

>--with-gettext \

>--with-jpeg-dir \

>--with-freetype-dir=/opt/freetype-2.4.0/

#使用系统自带的不用指安装目录

make && make install

cp  php.ini-production /usr/local/php5/etc/php.ini

vim /usr/local/php5/etc/php.ini

date.timezone = Asia/Shanghai

max_execution_time = 300

post_max_size = 32M

max_input_time = 300

memory_limit = 128M

always_populate_raw_post_data = -1

cd /usr/local/php5/etc/

cp php-fpm.conf.default php-fpm.conf

vim php-fpm.conf

pid = run/php-fpm.pid

error_log = log/php-fpm.log

log_level = error

daemonize = yes

user = nginx

group = nginx

listen = 127.0.0.1:9000

pm = dynamic

pm.max_children = 32

pm.start_servers = 15

pm.min_spare_servers = 5

pm.max_spare_servers = 32

cd ~/php-5.6.22/sapi/fpm/

cp init.d.php-fpm /etc/rc.d/init.d/php-fpm

chmod +x /etc/rc.d/init.d/php-fpm

chkconfig --add php-fpm

chkconfig php-fpm on

service php-fpm start

6、安装Zabbix

yum -y install net-snmp-devel curl-devel

useradd zabbix

cd zabbix-3.2.1

./configure \

>--prefix=/usr/local/zabbix \

>--enable-server \

>--enable-proxy \

>--enable-agent \

>--with-mysql=/usr/local/mysql/bin/mysql_config \

>--with-net-snmp \

>--with-libcurl

make && make install

cd ~/zabbix-3.2.1/database/mysql/

#导入数据库

mysql -uzabbix -pqwe123 zabbix < schema.sql

mysql -uzabbix -pqwe123 zabbix < p_w_picpaths.sql

mysql -uzabbix -pqwe123 zabbix < data.sql

mkdir /var/log/zabbix

chown zabbix.zabbix /var/log/zabbix

ln -s /usr/local/zabbix/etc/ /etc/zabbix

ln -s /usr/local/zabbix/bin/* /usr/bin/

ln -s /usr/local/zabbix/sbin/* /usr/sbin/

ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18

#可以使用设置搜索库文件的路径方式实现

[root@localhost LNMP+zabbix-3.2.1]# tail -1  /etc/ld.so.conf /usr/local/mysql/lib/

[root@localhost LNMP+zabbix-3.2.1]# ldconfig  -v |  grep libmysqlclient.so.18

cd ~/zabbix-3.2.1/misc/init.d/fedora/core

cp zabbix_* /etc/init.d/

vim /etc/init.d/zabbix_server

BASEDIR=/usr/local/zabbix

vim /etc/init.d/zabbix_agentd

BASEDIR=/usr/local/zabbix

vim  /etc/services     z

abbix-agent    10050/tcp    # Zabbix Agent

zabbix-agent    10050/udp    # Zabbix Agent

zabbix-server    10051/tcp    # Zabbix Trapper

zabbix-server    10051/udp    # Zabbix Trapper

vim /etc/zabbix/zabbix_server.conf

DBName=zabbix

DBUser=zabbix

DBPassword=qwe123

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

vim /etc/zabbix/zabbix_agentd.conf

Server=127.0.0.1,192.168.100.10

ServerActive=192.168.100.10:10051

Hostname=zabbix server

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

UnsafeUserParemeters=1

cd ~/zabbix-3.2.1/frontends/

cp -r php/ /usr/local/nginx/html/zabbix

chown -R nginx.nginx /usr/local/nginx/html/zabbix/

service zabbix_server start

chkconfig zabbix_server on

service zabbix_agentd start

chkcongig zabbix_agentd on

二、zabbix客户端部署

tar -xf zabbix-3.2.1.tar.gz

yum -y install gcc

useradd zabbix

./configure --prefix=/usr/local/zabbix --enable-agent && make && make install

mkdir /var/log/zabbix

chown zabbix.zabbix /var/log/zabbix/

cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

chmod +x /etc/init.d/zabbix_agentd

ln -s /usr/local/zabbix/etc/ /etc/zabbix

ln -s /usr/local/zabbix/bin/* /usr/bin/

ln -s /usr/local/zabbix/sbin/* /usr/sbin/

vim /etc/zabbix/zabbix_agentd.conf

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

Server=127.0.0.1,192.168.100.10

ServerActive=192.168.100.10:10051

Hostname=zabbix client

UnsafeUserParameters=1

vim /etc/init.d/zabbix_agentd

BASEDIR=/usr/local/zabbix

chkconfig zabbix_agentd on

service zabbix_agentd start

转载于:https://blog.51cto.com/6226001001/1907758

zabbix客户端部署相关推荐

  1. zabbix的使用-部署zabbix客户端

    部署zabbix客户端 两台机器同时进行 机器环境准备 10.30.59.231 zabbix-agent2 10.30.59.221 zabbix-agent3 注意时间正确性 [root@linu ...

  2. 部署 zabbix 客户端

    ---------- 部署 zabbix 客户端 ---------- zabbix 5.0 版本采用 golang 语言开发的新版本客户端 agent2 . zabbix 服务端 zabbix_se ...

  3. Zabbix客户端配置环境检查

    Zabbix客户端配置环境检查 一.zabbix客户端 二.Selinux和firewall设置 1.firewall开通10050端口 2.关闭selinux 三.时间同步设置 1.配置客户端chr ...

  4. Zabbix监控部署(内网监控外网服务器)

    最近公司新买了一批OVH服务器,这些服务器的硬盘.负载.和实时带宽需要监控.首先想到的就是用Zabbix监控.因为在公司内网中,之前部署过Zabbix监控.只需要在这些OVH服务器上安装zabbix的 ...

  5. 最全zabbix安装部署

    监控 netstat -tunlp #查看进程 tail -f /var/log/zabbix/zabbix_server.log #查看日志 tail #显示文件末尾内容 history #查看历史 ...

  6. Zabbix分布式部署

    目录 一 分布式Zabbix介绍 二 分布式Zabbix架构 2.1 架构示意图 2.2 环境准备 2.3 工作模式 2.4 模式配置 三 部署Zabbix-Proxy 3.1 安装Zabbix官方源 ...

  7. zabbix监控部署

    zabbix zabbix概念 ​ 对于运维人员来说,监控是非常重要的,想要保证线上业务整体能够稳定运行,那么我们就需要实时关注与其相关的各项指标是否正常.一个业务系统背后,往往存在着很多服务器.网络 ...

  8. zabbix简单的原理以及zabbix的部署

    常用的监控 nagios 图形不够美观,一般结合cacti使用,他是一个开源的网络监控报警服务,在系统出现故障时,会在第一时间内,以各种方式(微信,邮件,短信,钉钉)通知运维人员,可以充分发挥自动化运 ...

  9. zabbix监控部署与设置报警发送邮件

    zabbix监控介绍与部署 zabbix介绍 zabbix组件及功能 zabbix功能与特点 zabbix功能 zabbix特点 zabbix配置文件 部署zabbix zabbix介绍 1.zabb ...

  10. zabbix 监控部署(下)

    在之前的zabbix 监控部署(上) 这篇博客中,主要是使用了源码编译安装的方式,在实际的生产中,如果没有特殊要求,也可以直接使用yum 安装.这篇博文主要是使用yum方式通过salt安装的一个简单示 ...

最新文章

  1. 嵌入式Linux的OTA更新,基础知识和实现
  2. 防止电脑自动休眠小妙招
  3. 关于fi dd ler 手机抓包 网卡地址地址_实测对比Wireshark利用nRF52832抓包和Packet Sniffer抓包体验...
  4. 爬虫——模拟点击动态页面
  5. BZOJ4428 : [Nwerc2015]Debugging调试
  6. 深度学习技术驱动下的人工智能时代!
  7. iZotope Trash 2 for Mac(失真效果音频插件)
  8. 基于私服nexus和jenkins搭建快嘉开发框架1.1环境
  9. 魔兽世界服务器修改模型,修改模型教程!
  10. Django面试题汇总
  11. ASP.NET Core使用Hangfire做定时任务
  12. 基于CNN卷积神经网络实现手势识别
  13. 入门推荐系统,你不应该错过的知识清单
  14. JSP————详解jsp标签
  15. YOUTH(年轻)——Samuel Ullman(塞缪尔·乌尔曼)
  16. Mac 关闭Cisco AnyConnect 开启启动
  17. DotAsterisk(点星PBX)IPPBX V4.1下载地址
  18. FFmpeg mov_read_ftyp函数剖析
  19. 请问:怎么实现大文件快速上传?
  20. Lintcode - kth largest element

热门文章

  1. 未找到入口 app.json 文件,或者文件读取失败,请检查后重新编译。
  2. 关于前端处理表情符号问题(解决方案)
  3. windows功能正在搜索需要的文件_拥有高效的搜索工具Everything,可以丢开Windows的搜索功能了...
  4. 2.项目介绍,数据库迁移(code first)
  5. 比对字段判断字段是否为空,合并列字段(合并多列)
  6. php显示有关html函数,php中与html标签相关的函数有哪些
  7. vue跨域使用websocket_在vue中使用SockJS实现webSocket通信的过程
  8. WINDOWS上OpenCV需要有MediaPlayer才能正确运行?
  9. LINUX使用gpg签名校验文件
  10. LINUX开机自启问题