[原创] zabbix学习之旅三:agent安装

  部署完zabbix server后,自然要部署zabbix agent。在官方描述中,agent是部署在被监控的机器上,用于采集CPU、内存、磁盘等统计信息,并上报给server用于进一步处理。agent的采集信息方式也非常高效,是通过本机操作系统的系统调用完成。

  agent主要通过被动和主动两种方式上报本机信息,顾名思义,被动方式意味着server下达采集命令时,agent才会去收集信息;而主动方式意味着agent会在第一次时就从server处获取要采集的items,并定期将每个item的新值发送给server端。那问题来了,agent是通过被动模式还是主动模式采集信息呢?答案是取决于当你在server的监控界面设计这个item时采用哪种模式,默认为被动模式。

  agent能部署到几乎所有的操作系统上,在本系列中,我们仅以centOS和windows两种操作系统来进行说明。

部署在centOS上

  具体的操作系统版本为centOS6.5。

  首先要做的第一件事就是添加zabbix账号,zabbix agent和server一样,默认都是运行于zabbix账号下。

groupadd zabbix
useradd –g zabbix zabbix

  具体安装时,又可分为yum安装和源码安装,下面分别介绍。

yum安装

  yum安装很简单,几乎两行就搞定。

rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
yum -y install zabbix-agent

源码安装

  • 下载源码并安装
cd /usr/local/src
tar xvf zabbix-2.4.7.tar.gz
cd zabbix-2.4.7
./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
  • 设置随机启动
cp /usr/local/src/zabbix-2.4.7/misc/init.d/fedora/core/zabbix_agentd /etc/init.d
vi /etc/init.d/zabbix_agentd
#修改BASEDIR
BASEDIR=/usr/local/zabbix
chkconfig --add zabbix_agentd
chkconfig zabbix_agentd on

  无论是哪种安装方式,都需要修改下配置文件。

#日志最大值,默认1M,超出会rotate
LogFileSize=1
#被动模式下服务器地址,可以是ip或者hostname
Server=192.168.0.1
#主动模式下服务器地址,可以ip或者hostname
ServerActive=192.168.0.1
#被监控机的ip或hostname,注意的是该值必须和你在server的监控界面中定义的server name要保持一致
Hostname=192.168.0.2

  最后,启动agent,并查看是否正确启动。

service zabbix_agentd start
#默认的log路径
cat /tmp/zabbix_agentd.log
#启动正常的话应该能看到类似如下内容:
9604:20151229:091802.672 Starting Zabbix Agent [192.168.0.64]. Zabbix 2.4.7 (revision 56694).
9604:20151229:091802.673 using configuration file: /usr/local/zabbix/etc/zabbix_agentd.conf
9604:20151229:091802.673 agent #0 started [main process]
9607:20151229:091802.675 agent #3 started [listener #2]
9608:20151229:091802.676 agent #4 started [listener #3]
9606:20151229:091802.677 agent #2 started [listener #1]
9605:20151229:091802.677 agent #1 started [collector]
9609:20151229:091802.678 agent #5 started [active checks #1]

  但出现"no active checks on server [192.9.199.132:10051]: host [192.168.0.139] not found"的错误,意思是做active检查时没有发现server。解决办法是先在server的“主机”中添加监控机,记得取名必须和你在agent的配置文件中定义的hostname一致,再重启agent即可。

  默认情况下agent运行在10050端口,注意防火墙要打开此端口。

#以下命令看见zabbix agent运行在10050端口
netstat -tlnp|grep zabbix
#注意防火墙设置
vi /etc/sysconfig/iptables
#添加对10050的端口开放
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
#重启防火墙
service iptables restart

部署在windows上

  windows版本的agent为zabbix_agents_2.4.4.win.zip,将其解压缩如C盘下,进入配置文件目录,修改配置文件如下:

#日志最大值,默认1M,超出会rotate
LogFileSize=1
#被动模式下服务器地址,可以是ip或者hostname
Server=192.168.0.1
#主动模式下服务器地址,可以ip或者hostname
ServerActive=192.168.0.1
#被监控机的ip或hostname,注意的是该值必须和你在server的监控界面中定义的server name要保持一致
Hostname=192.168.0.3

  将agent添加为windows开机启动服务,进入命令行模式。

#32位操作系统进入以下路径
cd c:\zabbix\bin\win32
#64位操作系统进入以下路径
cd c:\zabbix\bin\win64
#设置成windows服务
zabbix_agentd.exe -c c:\zabbix\conf\zabbix_agentd.win.conf –i

  windows下agent的启动和停止。

#启动
zabbix_agentd.exe -s
#停止
zabbix_agentd.exe -x

  同centOS类似,日志可在默认的c:\zabbix_agentd下查看。若有windows防火墙限制,请设置相应的入站规则和出站规则,这里不再赘述。

时间: 2024-10-04 20:36:41

[原创] zabbix学习之旅三:agent安装的相关文章

[原创] zabbix学习之旅二:yum安装

对于允许连接公网的环境下,显然通过yum安装是最为简单方便的,也是官网推荐的安装方式.通过这种方式安装,会将php.apache.zabbix本身都一并安装,解决了烦人的依赖包问题. 本文将介绍如何进行yum安装. 安装Mysql zabbix支持安装在多种数据库上,本方案中数据库为mysql.安装及库表建立如下: 安装mysql5.6.28,安装方式为rpm安装,安装前若本机已有老旧mysql,请卸载. rpm –ivh MySQL-server-5.6.28-1.el6.x86_64.rpm

[原创] zabbix学习之旅四:mail客户端安装

相信大家使用zabbix的最主要目的就是当被监控机器发生故障时,能通过zabbix获得第一时间的报警提醒.zabbix常用的报警媒介有email,短信,jabber和脚本,这其中脚本类型最为灵活,尤其当邮件服务器.短信服务器不与zabbix server在同一台服务器时,自定义脚本基本上成为我们唯一可靠的方式. 在本文中,我们将在zabbix server上安装邮件客户端,并以脚本方式将报警信息通过邮件发出来,若以后想做短信提醒.微信提醒,技术路径都是一样的. 安装msmtp msmtp是一个S

[原创] zabbix学习之旅五:如何快速搭建一个报警系统

通过之前的文章,我们已搭建好zabbix server.agent和mail客户端,现在万事俱备,只差在server的界面中进行相应配置,即可快速搭建一个报警系统.总的来说,快速搭建一个报警系统的顺序如下: 配置Host groups.在生产环境中,可能会有多个不同的业务,每个业务下又有自己的服务器.因此,通过定义Host group可以进行业务分组. 配置Template.顾名思义模板的意思,假设我们有多台Mysql服务器或应用服务器,他们的机器配置.开放端口都基本相同,那么我们没有必要一台台

zabbix学习-如何部署一个agent客户端

1. 部署一个agent客户端很简单,比如监控服务器本身 yum install zabbix-agent -y 2.配置文件位置: vim /etc/zabbix/zabbix-agendt.conf 修改里面的server配置即可,其中serveractive为主动发现配置.有需要也可以配置 3.启动agent服务并设置为开机启动 systemctl start zabbix-agent systemctl enable zabbix-agent zabbix-server本身在安装的时候已

Docker学习笔记【三】安装Redis

项目中使用到Redis,平常都是别人搭建的,今天试着在Google Cloud Platform 上搭建一个学习环境. 1.使用 docker pull redis 从docker hub中下载镜像 2.使用 docker images 查看是否成功安装,成功的话会显示镜像列表 3.使用 docker run --name container-name -d image-name 命令,来运行一个容器 4.使用 docker container ps 查看容器列表,若上一步成功的话,将会显示出t

[原创]HBase学习笔记(1)-安装和部署

HBase安装和部署 使用的HBase版本是1.2.4 1.安装步骤(默认hdfs已安装好) # 下载并解压安装包 cd tools/ tar -zxf hbase-1.2.4-bin.tar.gz   # 重命名为hbase mv hbase-1.2.4 hbase # 将hadoop目录下的hdfs-site.xml 和 core-stie.xml拷贝到 hbase下的conf 目录中 cd /home/work/tools/hbase/conf cp /home/work/tools/ha

我的linux学习之旅: (3)编译安装php5.4

编译安装php5.4 目标:编译完成php5.4,并安装xcache.配合http2.4实现一个虚拟主机 操作系统CentOS6.6 x32_64 安装中使用的文件 /etc/sysconfig/network-scripts/ifcfg-eth0 配置 开始编译安装 安装完毕启动服务 按惯例上脚本php.sh #!/bin/bash php=php-5.4.31 xcache=xcache-3.1.0 # 本机IP ip=172.16.32.231 # php安装路径 path=/usr/lo

轻松学习Ionic (三) 安装sass并在webstorm中为scss添加watcher

1. 安装Ruby 最新为 2.1.5版本,不放心的话安装 Ruby 1.9.3-p551 安装过程中注意勾选上第二项!即将Ruby加入到可执行的环境变量中去. 安装结束后在命令行中运行 ruby -v 能看到对应的版本则说明安装正确. 2.通过Ruby安装Sass 启动Ruby中的"Start Command Prompt with Ruby" 在命令行中输入: gem sources --remove https://rubygems.org/ gem source -a http

我的Go语言学习之旅三:Go语言中的for循环

这个但是为难我了,我一直是走在WEB前的程序猿,各种循环用起来得心应手.突然间发现到了Go这里竟然行不通了,查阅后才发现,原来Go的for是这样写的. for i:=0;i<10;i++{ fmt.Printf("%d\n",i); } 非常有才的一种写法,我用起来感觉的确没有 带有圆括号舒服. 接下来.看很多其它关于 for 的实例吧 Go 的 for 循环有三种形式.仅仅有当中的一种使用分号. for init; condition; post { } ← 和 C 的 for