zabbix 监控安装
注意:此篇是在安装好lnmp环境后才能部署的操作,所以,做之前准备好lnmp环境,或者可以参考我做的lnmp环境,之后接着此篇开始安装
监控系统Zabbix-3.2.1的安装
zabbix-server端的操作
zabbix服务器端要提前安装好LNMP环境(mysql,nginx,php5的安装目录均是/usr/local)
创建Zabbix运行的用户:
# userd -g zabbix zabbix # useradd -g zabbix zabbix
安装libcurl和net-snmp:
# yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel OpenIPMI-devel libssh2-devel
注:OpenIPMI-devel 和libssh2-devel软件包使用centos在线yum软件源安装
安装Fping:
# tar -xvf fping-3.12.tar.gz # cd fping-3.12/ # ./configure && make && make install # chown -R root:zabbix /usr/local/sbin/fping # chmod 4710 /usr/local/sbin/fping # ll /usr/local/sbin/fping -rws--x---. 1 root zabbix 93506 4月 27 09:26 /usr/local/sbin/fping
安装Zabbix Server:
# tar -xvf zabbix-3.2.1.tar.gz # cd zabbix-3.2.1/ # ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-openipmi
注意:编译时最好带上--enable-java这个参数,方便后续监控tomcat程序所用。
--with-ssh2 是不需要在客户端服务器上面安装Zabbix agent,如果需要使用ssh检查,需要在编译的时候加上这项,最低需要libssh2 1.0.0版本,需要安装ssh开发包
--with-openipmi用户可以利用 IPMI 监视服务器的物理特征,如温度、电压、电扇工作状态、电源供应等。
如果添加了--enable-proxy, 那么会生成get和sender两条命令. 如下, 用于接收agent发生过来的信息, 同时发送给server.
# make && make install # ln -s /usr/local/zabbix/bin/* /usr/local/bin/ # ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
Zabbix Server配置与启动
创建Zabbix数据库和MySQL用户:
mysql> create database zabbix character set utf8; 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, 1 warning (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
导入Zabbix初始数据:
切换到zabbix的解压目录下
[root@localhost zabbix-3.2.1]# cd database/mysql/ [root@localhost mysql]# pwd /data/src/zabbix/zabbix-3.2.1/database/mysql [root@localhost mysql]# ls data.sql images.sql schema.sql
进行zabbix初始数据导入
[root@localhost mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < images.sql mysql: [Warning] Using a password on the command line interface can be insecure. [root@localhost mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < data.sql mysql: [Warning] Using a password on the command line interface can be insecure.
编辑/usr/local/zabbix/etc/zabbix_server.conf:
# vim /usr/local/zabbix/etc/zabbix_server.conf LogFile=/usr/local/zabbix/logs/zabbix_server.log PidFile=/usr/local/zabbix/logs/zabbix_server.pid DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix DBPort=3306 FpingLocation=/usr/local/sbin/fping
创建日志目录并设置属主属组
# mkdir -p /usr/local/zabbix/logs # chown -R zabbix:zabbix /usr/local/zabbix
启动Zabbix Server:
# /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf /usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
解决方法:
在ld.so.conf中加入/usr/local/mysql/lib
# vim /etc/ld.so.conf include ld.so.conf.d/*.conf /usr/local/mysql/lib /usr/local/lib
# ldconfig
再次执行zabbix_server启动
# /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf # ps -ef f|grep zabbix_server root 23511 13356 0 10:04 pts/0 S+ 0:00 \_ grep --color=auto zabbix_server zabbix 23456 1 0 10:03 ? S 0:00 /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf zabbix 23457 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes] zabbix 23458 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: db watchdog [synced alerts config in 0.013618 sec, idle 60 sec] zabbix 23459 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: poller #1 [got 0 values in 0.000012 sec, idle 5 sec] zabbix 23460 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: poller #2 [got 0 values in 0.000009 sec, idle 5 sec] zabbix 23461 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: poller #3 [got 0 values in 0.000018 sec, idle 5 sec] zabbix 23462 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: poller #4 [got 0 values in 0.000012 sec, idle 5 sec] zabbix 23463 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: poller #5 [got 0 values in 0.000012 sec, idle 5 sec] zabbix 23464 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000012 sec, idle 5 sec] zabbix 23465 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection] zabbix 23466 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection] zabbix 23467 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: trapper #3 [processed data in 0.000000 sec, waiting for connection] zabbix 23468 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: trapper #4 [processed data in 0.000000 sec, waiting for connection] zabbix 23469 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: trapper #5 [processed data in 0.000000 sec, waiting for connection] zabbix 23470 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000003 sec, idle 5 sec] zabbix 23471 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: alerter [sent alerts: 0 success, 0 fail in 0.001350 sec, idle 30 sec] zabbix 23472 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: housekeeper [startup idle for 30 minutes] zabbix 23473 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: timer #1 [processed 0 triggers, 0 events in 0.000168 sec, 0 maintenances in 0.004566 sec, idle 30 sec] zabbix 23474 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: http poller #1 [got 0 values in 0.001100 sec, idle 5 sec] zabbix 23475 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.002285 sec, idle 60 sec] zabbix 23476 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #1 [synced 0 items in 0.000002 sec, idle 1 sec] zabbix 23477 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #2 [synced 0 items in 0.000001 sec, idle 1 sec] zabbix 23478 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #3 [synced 0 items in 0.000002 sec, idle 1 sec] zabbix 23479 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #4 [synced 0 items in 0.000002 sec, idle 1 sec] zabbix 23480 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.001507 sec, idle 3 sec] zabbix 23481 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 proxies in 0.000003 sec, idle 5 sec] zabbix 23482 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: self-monitoring [processed data in 0.000009 sec, idle 1 sec] zabbix 23483 23456 0 10:03 ? S 0:00 \_ /usr/local/zabbix/sbin/zabbix_server: task manager [processed 0 task(s) in 0.000433 sec, idle 5 sec] [root@localhost mysql]#
添加开机启动脚本
[root@localhost zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server [root@localhost zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd chmod +x /etc/rc.d/init.d/zabbix_server chmod +x /etc/rc.d/init.d/zabbix_agentd # chkconfig --add zabbix_server # chkconfig --add zabbix_agentd # chkconfig zabbix_server on chkconfig zabbix_agentd on
修改zabbix开机启动脚本中的zabbix安装目录
vim /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件
# vim /etc/rc.d/init.d/zabbix_server 修改下面两项 BASEDIR=/usr/local/zabbix PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid #pid文件路径
vim /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件
# vim /etc/rc.d/init.d/zabbix_agentd 修改下面两项 BASEDIR=/usr/local/zabbix PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid
# systemctl daemon-reload # /etc/init.d/zabbix_server stop Stopping zabbix_server (via systemctl): [ 确定 ] # /etc/init.d/zabbix_server start Starting zabbix_server (via systemctl): [ 确定 ] # netstat -tanpl |grep zabbix tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 27324/zabbix_agentd tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 23456/zabbix_server
此时关闭防火墙或者做防火墙规则
配置zabbix web页面
在安装目录将frontends拷贝到指定的web root:
# cp -r frontends/php/ /usr/local/nginx1.10/html/zabbix # chown -R www:www /usr/local/nginx1.10/html/zabbix
注:/usr/local/nginx/html为Nginx默认站点目录 www为Nginx运行账户
注:PHP需要至少开启扩展:
gd,bcmath,ctype,libXML,xmlreader,xmlwriter,session,sockets,mbstring,gettext,mysql
如下,查看是否包括了上面所提到的扩展模块
# /usr/local/php5.6/bin/php -m [PHP Modules] bcmath bz2 Core ctype curl date dom ereg fileinfo filter ftp gd gettext hash iconv json libxml mbstring mcrypt mhash mysql mysqli openssl pcntl pcre PDO pdo_sqlite Phar posix Reflection session shmop SimpleXML soap sockets SPL sqlite3 standard sysvsem tokenizer xml xmlreader xmlrpc xmlwriter zip zlib
安装Web
访问Web界面http://192.168.92.129/zabbix,进行相关web配置,配置完成后使用默认用户admin(密码:zabbix)登陆即可
进入ZABBIX WEB安装画面

进入ZABBIX检测画面

对数据库进行设置,这里如果数据库在本地的话端口可以使用0

点击Next step 一下步进行zabbix server 细节的设置 这一步可以默认

点击安装,安装完成后 如果没有错误就会进入完成画面
完成画面有设置文件放在服务器的位置,请记下来


点击Finish 完成
使用Admin 用默认密码 zabbix 登录

登录后画面如下

至此 ZABBIX的基础安装完成
注:
- 显示简体中文界面
在安装数据库时已经将zabbix库设置了utf-8字符
首先确定zabbix开启了中文支持功能:
登录到zabbix服务器的数据目录下(前面部署的zabbix数据目录是/usr/local/nginx1.10/html/zabbix/),打开 locales.inc.php文件
# cd /usr/local/nginx1.10/html/zabbix/include/
[root@localhost include]# ls
acknow.inc.php events.inc.php js.inc.php screens.inc.php
actions.inc.php forms.inc.php locales.inc.php services.inc.php
audit.inc.php func.inc.php maintenances.inc.php sounds.inc.php
blocks.inc.php gettextwrapper.inc.php maps.inc.php translateDefines.inc.php
classes graphs.inc.php media.inc.php triggers.inc.php
config.inc.php groups.inc.php menu.inc.php users.inc.php
correlation.inc.php hosts.inc.php page_footer.php validate.inc.php
db.inc.php html.inc.php page_header.php valuemap.inc.php
debug.inc.php httptest.inc.php perm.inc.php views
defines.inc.php ident.inc.php profiles.inc.php
discovery.inc.php images.inc.php regexp.inc.php
draw.inc.php items.inc.php schema.inc.php
[root@localhost include]# vim locales.inc.php
function getLocales() {
return [
'en_GB' => ['name' => _('English (en_GB)'), 'display' => true],
'en_US' => ['name' => _('English (en_US)'), 'display' => true],
'bg_BG' => ['name' => _('Bulgarian (bg_BG)'), 'display' => false],
'zh_CN' => ['name' => _('Chinese (zh_CN)'), 'display' => true],
'zh_TW' => ['name' => _('Chinese (zh_TW)'), 'display' => false],
'cs_CZ' => ['name' => _('Czech (cs_CZ)'), 'display' => true],
'nl_NL' => ['name' => _('Dutch (nl_NL)'), 'display' => false],
'fi_FI' => ['name' => _('Finnish (fi_FI)'), 'display' => false],
'fr_FR' => ['name' => _('French (fr_FR)'), 'display' => true],
'ka_GE' => ['name' => _('Georgian (ka_GE)'), 'display' => false],
登陆zabbix后,点击右上角的“用户”图标,将语言设置为“中文”: 
按照如图选择Chinese(zh_CN),点击update:

如下图,此时可以显示中文了

解决zabbix绘图中出现中文乱码问题:
a.从windows下控制面板->字体->选择一种中文字库例如“宋体”

b.把它拷贝到zabbix的web端的fonts目录下例如:/usr/local/nginx1.10/html/zabbix/fonts/,并且把TTF后缀改为ttf
# cp SIMSUN.TTC /usr/local/nginx1.10/html/zabbix/fonts/ # mv SIMSUN.TTC SIMSUN.ttf # ls DejaVuSans.ttf SIMSUN.ttf # pwd /usr/local/nginx1.10/html/zabbix/fonts
并且将之前的字体文件DejaVuSans.ttf移动到别处
c.然后,接着修改代码include/defines.inc.php文件中的字体配置,将里面关于字体设置从DejaVuSans替换成SIMSUN
# vim /usr/local/nginx1.10/html/zabbix/include/defines.inc.php 会修改两处 vim替换技巧 “:%s/DejaVuSans/SIMSUN”
其中:SIMSUN为字库名字,不包含ttf后缀
这样,修改后,zabbix监控图形中的中文字就不会出现乱码了

第二部分,安装zabbix客户端
既然要监控我们就要添加要监控的主机,在添加主机之前我们首先要在被检测主机上面安装agent,安装agent比较简单,我们也是按照安装server的流程,下载软件包,在编译的时候,我们只选择agent
192.168.92.130作为zabbix的被监控端,提供web和mysql应用
安装Zabbix,配置Zabbix agent:
在192.168.92.130上配置如下:
# groupadd zabbix # useradd -g zabbix zabbix# yum -y install gcc cc cl # yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel OpenIPMI-devel libssh2-devel
# tar -xvf zabbix-3.2.1.tar.gz # cd zabbix-3.2.1/# ./configure --prefix=/data/soft/zabbix --enable-agent# make && make install# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/# mkdir -p /usr/local/zabbix/logs# chown -R zabbix:zabbix /usr/local/zabbix/
配置开机自动启动:
# chkconfig --add zabbix_agentd # chkconfig zabbix_agentd on
修改zabbix开机启动脚本中的zabbix安装目录
# vim /etc/rc.d/init.d/zabbix_agentd 修改下面两处 BASEDIR=/usr/local/zabbix/ PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid
# systemctl daemon-reload
编辑zabbix_agentd.conf
# vi /usr/local/zabbix/etc/zabbix_agentd.conf
PidFile=/usr/local/zabbix/logs/zabbix_agentd.pid LogFile=/usr/local/zabbix/logs/zabbix_agentd.log Server=192.168..92.129 ServerActive=192.168.92.129 Hostname=192.168.92.130 Timeout=15 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
注:
其中Server和ServerActive都指定zabbixserver的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许192.168.31.225这个ip来我这取数据。而serverActive的192.168.31.225的意思是,客户端主动提交数据给他。
Hostname=XXX,这个定义的名字必须和web页面里面host的名字一样。
启动zabbix_agentd:
# /etc/init.d/zabbix_agentd start Starting zabbix_agentd (via systemctl): [ 确定 ] # netstat -anpt | grep zabbix_agentd tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 60832/zabbix_agentd
zabbix客户端要么关闭防火墙,要么做防火墙规则
到此,zabbix3.2.1监控系统的基本环境安装完成。
实现zabbix添加监测项
添加对Linux主机的监控
在浏览器中打开:http://192.168.92.129/zabbix
登录zabbix,先在“配置”-“主机”里添加主机监控,监控os资源:内存,cpu,io,负载,带宽等.
登录zabbix,先在“配置”-“主机”里单击”创建主机”


注意:下图中的“主机名称”要和zabbix_agentd.conf文件中设置的“Hostname”后面的名称一致!
主机名称:192.168.92.130
群组:Linux servers
agent代理程序接口ip:192.168.92.130
已启用:勾选
其它选项默认即可
切换到模板

未完,待续。。。。。。。。。。。。。。。。。。。
zabbix 监控安装的更多相关文章
- 细化如何安装LNMP + Zabbix 监控安装文档以及故障排除
1.LNMP所需安装包: 上传如下软件包到/soft目录中 mysql- (centos6. 64位自带)也可根据版本自行挑选,前提你了解这个版本 pcre-8.36.tar.gz nginx-.ta ...
- zabbix监控安装
1.关闭iptables和selinux # systemctl stop firewalld # systemctl disable firewalld # setenforce 2.安装yum源 ...
- zabbix 监控安装部署
今天尝试一下部署zabbix 官方文档包括多个版本,此处选择4.0版本 https://www.zabbix.com/documentation/4.0/manual 1.安装环境选择 zabbix4 ...
- 基于LNMP环境的Zabbix监控安装
一.准备LNMP环境 1.使用putty或类似的SSH工具登陆VPS或服务器: 登陆后运行:screen -S lnmp 如果提示screen: command not found 命令不存在可以执行 ...
- 手把手教你在CentOS 7.4下搭建Zabbix监控(转)
Linux系统版本:CentOS 7.4 1.安装前需要先关闭selinux和firewall. 1.1 [root@zabbix ~]# vi /etc/selinux/config 将SELINU ...
- CentOS 6.6 搭建Zabbix 3.0.3 过程
分享CentOS 6.6下搭建Zabbix 3.0.3 的过程,希望都大家有所帮助. 环境安装 系统环境: # cat /etc/RedHat-release CentOS release 6.6 ( ...
- Linux运维相关目录
- zabbix安装笔记
部署监控安装zabbix时,安装环境选择位mysql5.6.29 php选5.4.45 环境安装:centOS7: yum install httpd php mariadb-server mysql ...
- Zabbix二次开发_03api列表_中文版
基于ZABBIX 3.0 https://www.zabbix.com/documentation/3.0/manual/api/reference 参考方法 本节提供了的zabbix提供的功能的概述 ...
随机推荐
- Python开课复习7
操作系统 操作系统把复杂的硬件操作封装成简单的接口给用户/应用程序使用,其中文件就是操作系统提供给应用程序来操作硬盘虚拟概念,用户或应用程序通过操作文件,可以将自己的数据永久保存下来. #1. 打开文 ...
- 2018.12.31 NOIP训练 偶数个5(简单数论)
传送门 对于出题人zxyoizxyoizxyoi先%\%%为敬题目需要龟速乘差评. 题意简述:5e55e55e5组数据,给出n,请你求出所有n位数中有偶数个5的有多少,n≤1e18n\le1e18n≤ ...
- 安卓逆向学习---初始APK、Dalvik字节码以及Smali
参考链接:https://www.52pojie.cn/thread-395689-1-1.html res目录下资源文件在编译时会自动生成索引文件(R.java ), asset目录下的资源文件无需 ...
- TCP/IP协议(7):应用层
应用层上协议有DNS.DHCP.HTTP.SSL/TLS.FTP.Telnet等. 1.DNS域名解析 DNS服务器用来解析域名从而获得对应IP地址,我们在对网络进行设置的时候如果DNS服务器没有设置 ...
- 重启服务器后,启动oracle监听报错 The listener supports no services The command completed successfuslly
启动监听报错如下图所示: 远程连接报错如下图所示: 问题原因:数据库实例没注册到listener中 解决方法: (1)登录数据库:$sqlplus / as sysdba (2)显示服务名:sql& ...
- 检索 COM 类工厂中 CLSID 为 {10021F00-E260-11CF-AE68-00AA004A34D5} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。
ASP.NET利用SQLDMO可以实现在线备份.还原数据库等各种功能. 由于客户的数据库和WEB服务不再同一台服务器,把网站部署在服务器上以后,运行程序,提示如下错误 当使用Interop.SQLDM ...
- IntelliJ IDEA 2017版 spring-boot2.0.2 搭建 JPA springboot DataSource JPA 实体类浅谈
一.实体类分析 一般用到的实体类的类型有 String类型.Long类型.Integer类型.Double类型.Date类型.DateTime类型.Text类型.Boolean型等 1.String类 ...
- php mysqli 链接数据库 CURD 增改查删
<?php function println($msg) { echo "<br>"; echo $msg; } $mysql_server_name = &qu ...
- 阿里ETL工具datax学习(一)
阿里云开源离线同步工具DataX3.0介绍 一. DataX3.0概览 DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL.Oracle等).HDFS.Hive.Ma ...
- leaflet入门(三)使用GeoJSON创建矢量图形
# 点对象: function g(feature, layer) { // does this feature have a property named popupContent? if (fea ...