zabbix的搭建及使用

春衣少年当酒歌,起舞四顾以笑和。这篇文章主要讲述zabbix的搭建及使用相关的知识,希望能为你提供帮助。
【zabbix的搭建及使用】


一、Linxu 服务端安装(源码包安装)

server:redhat6192.168.1.224
client:windows、redhat6 192.168.1.125 192.168.1.122



1、配置网络yum
源https://blog.csdn.net/weixin_36524613/article/details/80855481



2、安装mysql
yum-yinstall mysql mysql-server mysql-devel
MySQL 配置文件/etc/my.cnf中加入default-character-set=utf8
vim /etc/my.cnf 加入default-character-set=utf8
开启mysql服务
service mysqld start
创建 Root 管理员,设置root密码
mysqladmin-u root password 123456
登陆 MySQL
mysql-uroot-p123456
创建 zabbix 数据库,并设置登陆权限
mysql> create database zabbix character set utf8 collate utf8_bin
添加zabbix用户并设置密码和访问权限
mysql> grant all privileges on zabbix.* to zabbix@localhostidentified by zabbix
如果需要本地连接数据库,添加权限
mysql> GRANT ALL PRIVILEGES ON *.* TO zabbix@192.168.0.125 IDENTIFIED BY zabbix
mysql> flush privileges;
\\q



3、安装zabbixserver


1)安装必要环境
yum install httpd php http-devel php-devel php-pear php-xmlrpc php-bcmath mysql-connector-odbc libdbi-dbd-mysql
httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldap net-snmp-devel curl-devel
unixODBC-devel OpenIPMI-devel java-devel libssh2-devel openldap openldap-devel-y



2)配置php环境
sed-i"s/; date.timezone=/date.timezone=Asia\\/Shanghai/g" /etc/php.ini
sed-i "s#max_execution_time = 30#max_execution_time = 300#g" /etc/php.ini
sed -i "s#post_max_size = 8M#post_max_size = 32M#g" /etc/php.ini
sed -i "s#max_input_time = 60#max_input_time = 300#g" /etc/php.ini
sed -i "s#memory_limit = 128M#memory_limit = 128M#g" /etc/php.ini
sed -i "s/; mbstring.func_overload = 0/mbstring.func_overload = 0\\n/" /etc/php.ini



3)安装zabbix服务端
下载源码包,添加组。
wget
prdownloads.sourceforge.net/zabbix/zabbix-2.4.8.tar.gz
groupadd zabbix -g 201
useradd -g zabbix -u 201 -m zabbix



解压编译,要确认是否安装gcc。
yum install gcc –y
tar zxf zabbix-2.4.8.tar.gz
cd zabbix-2.4.8
./configure --prefix=/usr/local/zabbix-2.4.8--sysconfdir=/etc/zabbix--
enable-server --enable-proxy --enable-agent --
enable-ipv6 --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl --with-openipmi --with-unixodbc --with-ldap
--with-ssh2 --enable-java



检查出错的话根据提示安装相应工具包。
make install
ln -s /usr/local/zabbix-2.4.8 /usr/local/zabbix



4、添加zabbix到系统服务文件
cat /etc/services |grep zabbix#可以看一眼,没有就加上,默认已经加上
zabbix-agent10050/tcp# Zabbix Agent
zabbix-agent10050/udp# Zabbix Agent
zabbix-trapper10051/tcp# Zabbix Trapper
zabbix-trapper10051/udp# Zabbix Trapper



5、向zabbix数据库导入sql文件
这个sql文件的导入顺序不能变,不然要报错。
mysql -uzabbix -pzabbix zabbix
< /root/zabbix-2.4.8/database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix
< /root/zabbix-2.4.8/database/mysql/images.sql
mysql -uzabbix -pzabbix zabbix
< /root/zabbix-2.4.8/database/mysql/data.sql



如果上面导入sql的时候出现错误,可以使用远程连接导入,注意用户名和密码要使用zabbix,zabbix。



6、拷贝启动脚本并配置
cp /root/zabbix
-2.4.8/misc/init.d/fedora/core/zabbix_*
/etc/init.d/
sed -i
"s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#" /etc/init.d/zabbix_server
sed -i
"s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#" /etc/init.d/zabbix_agentd



7、zabbix主配置文件修改
简单配置一下,主要是配置连接数据库的账号和密码。
vim /etc/zabbix/zabbix_server.conf#默认配置就好
LogFile=/var/zabbix/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
ListenIP=127.0.0.1



8、拷贝网页文件到web站点目录下
cp -r /root/zabbix-2.4.8/frontends/php /var/www/html/zabbix
chown apache:apache
/var/www/html/zabbix/conf
#此目录下,程序要创建一个php,当然不授权的话,等到安装到哪部,下载php文件也可以。



9、通过web页面配置zabbix
http://192.168.0.224/zabbix/



访问格式是IP/zabbix;
注意需要启动mysql服务、apache服务、zabbix_server服务。
service mysqld start
service httpd start
service zabbix_server start
如果启动zabbix_server服务出错
wget -O /usr/lib64/libmysqlclient.so.16
http://files.directadmin.com/services/debian_5.0_64/libmysqlclient.so.16



10、找不到mysql数据库





yum install -y php-mysql.x86_64
service mysqld restart
service httpd restart



11、web页面配置zabbix










跳到登录界面了,用户名是admin,密码是zabbix。


12、中文显示





点击上图圈着的位置。





选择chinese 之后更新。


13、汉化之后图标的位置会出现乱码的问题





白框内正常应该是文字。
解决办法:进入到本地windos目录下:C:\\Windows\\Fonts





将红色圈中的文件上传到服务器端的/var/www/html/zabbix/fonts目录中。
将原本文件备份,simhei.ttf文件改成小写。
-rw-r--r--. 1 root root756072 Jun 22 10:23 DejaVuSans.ttf.bak
-rw-r--r--. 1 root root 9751960 Jun 22 14:02 simhei.ttf



编辑web页面配置文件
vim /var/www/html/zabbix/include/defines.inc.php +45



修改文件
define(ZBX_GRAPH_FONT_NAME,DejaVuSans);
替换为:define(ZBX_GRAPH_FONT_NAME,simhei);



重新刷新web页面即可。


14、关闭防火墙和selinux
如果页面出现zabbix server is not running

查看日志78655:20180622:113738.275 cannot send list of active checks to [127.0.0.1]: host [Zabbix server] not monitored

那么有可能是防火墙没关或者把zabbix_server重启一下



二、Linux zabbix_agent安装重新找一台rhel6系统


1、配置yum源
?
2、下载源码包并编译
wget
prdownloads.sourceforge.net/zabbix/zabbix-3.2.6.tar.gz

groupadd zabbix -g 201
useradd -g zabbix -u 201 -m zabbix
tar zxf zabbix-3.2.6.tar.gz
cd zabbix-3.2.6

./configure --prefix=/usr/local/zabbix-3.2.6 --sysconfdir=/etc/zabbix--enable-agent

make install
ln -s /usr/local/zabbix-3.2.6 /usr/local/zabbix



3、拷贝启动脚本并配置
cp
/root/zabbix-3.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

sed -i
"s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#" /etc/init.d/zabbix_agentd



4、 编辑配置文件,使agent指向server端
vim /etc/zabbix/zabbix_agentd.conf

Server=192.168.0.224



5、启动agent服务
service zabbix_agentd restart



三、Windows zabbix_agent安装?
1、下载zabbix_agent
被监控的主机装在Windows7 64位操作系统,需关闭防火墙。被监控端需要安装。
?https://www.?zabbix.com/downloads/2.?4.1/zabbix_agents_2.4.1.win.zip? 
解压即用。


2、修改配置
在解压出来的conf文件夹中找到zabbix_agentd.win.conf,以记事本打开,修改如下四项参数 :
LogFile=d:\\tmp\\zabbix_agentd.log
#日志文件存储位置

Server=192.168.0.224
#zabbix主控端IP地址

Hostname=windows name
#本监控主机的主机名可以在cmd使用hostname命令获得

ServerActive=192.168.0.224
#zabbix主控端IP地址



3、解压并启动
修改完成后用管理员身份cmd进入到解压目录,逼着这里解压在D盘的根目录下。
D:\\> cd D:\\bin\\win64

D:\\bin\\win64> zabbix_agentd.exe -c d:\\conf\\zabbix_agentd.win.conf -i
zabbix_agentd.exe [1636]: service [Zabbix Agent] installed successfully

zabbix_agentd.exe [1636]: event source [Zabbix Agent] installed
successfully

D:\\bin\\win64> zabbix_agentd.exe -c d:\\conf\\zabbix_agentd.win.conf -s

zabbix_agentd.exe [2328]: service [Zabbix Agent] started successfully

-c:指定配置文件位置
-i:安装agent
-s:启动agent
-x:停止agent
-d:卸载agent1



检查zabbix-agent是否正常启动,在Windows的服务中可以看到zabbix-agent的服务,或在cmd下使用netstat -an | find "10050"处于监听状态即可。


四、多个agent监控配置

1、首先创建一个主机组
配置==》主机群组==》创建主机群组(web页面右上角)==》添加组名,如:Zabbix agents(在弹出框中输入组名)==> 添加。


2、添加一个主机
配置==》主机==》右上角在群组那里选择Zabbix agents==》点击创建主机 #如下图


3、给此主机引用一条模板
在上面那张图片中可以看到主机的右边有个模板,点击模板,链接指示器那一栏点击选择按钮,然后选择你要添加的模板,点击添加,然后返回到模板界面之后,再点击下面的添加按钮,然后点击更新。







需要注意的是linux的agent和windows的agent添加的模板不一样,上面添加的模板是linux的模板。效果图







上面是监控不同节点,不同操作系统的效果图。


五、开机启动

1、Zabbix agentd使用 chkconfig 将其加入 init 的启动服务
chkconfig --add zabbix_server

chkconfig --add zabbix_agentd

chkconfig --level 345 zabbix_server on

chkconfig --level 345 zabbix_agentd on



2、使用 chkconfig --list 检查一下
chkconfig --list | grep zabbix

输出如下:

zabbix_agent 0:off1:off2:off3:on4:on5:on6:off

zabbix_server 0:off1:off2:off3:on4:on5:on6:off



3、agent的机器只需要
chkconfig --add zabbix_agentd

chkconfig --level 345 zabbix_agentd on

window开启启动在service中设置即可



4、开机启动apache和mysql
chkconfig --add httpd
#加入开启启动项

chkconfig --del httpd
#从开启启动项删除

chkconfig --list | grep httpd
#查看是否在开机启动项
chkconfig --level 5 httpd on
#在5级别下开机启动

runlevel
#查看开机启动级别

chkconfig --add mysqld
#mysql服务添加到开机启动项

chkconfig--list | grep mysqld
#查看是否添加到开机启动项








  推荐阅读 


??> > > 新手必备-Linux入门之云计算是什么??


??> > > 红帽认证入门-Linux系统介绍及企业版本选型??


??> > > 新手必备-Linux系统安装配置+Xshell远程连接??


??> > > Linux常用命令行合集之绝对路径和相对路径??


??> > > 软连接与硬连接??


  运维界升职加薪必备的云计算技术,你学了吗?


学完高级运维云计算课程之后,你可以:


  • 跨越90%企业的招聘硬门槛
  • 增加70%就业机会
  • 拿下BAT全国TOP100大厂敲门砖
  • 体系化得到运维技术硬实力
  • 技术大佬年薪可达30w+


  资源放送 
2022新版Linux运维高级云计算-红帽RHCE实战课程合集,扫描下方二维码即可领取!


    推荐阅读