Ubuntu下安装Zabbix
1. Zabbixzabbix(音同 zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
1.1 Zabbix的主要特点:
- 安装与配置简单,学习成本低
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面设置或查看监视结果
- email等通知功能
1.2 Zabbix主要功能:
- CPU负荷
- 内存使用
- 磁盘使用
- 网络状况
- 端口监视
- 日志监视
2.Ubuntu下安装Zabbix
本来在Ubuntu下安装Zabbix并不复杂,但我在安装中遇到一些问题有必要记录下来,可能其他人也会遇到。
2.1 首先安装apache、php5、mysql
这一部分还是很轻松的
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] sudo apt-get install apache2
[*]
[*] sudo apt-get install php5
[*]
[*] sudo apt-get install libapache2-mod-php5
[*]
[*] sudo /etc/init.d/apache2 restart // 重启apache,此时php5已经可用了
[*]
[*] sudo apt-get install mysql-server//数据库账号:root密码:root
[*]
[*] sudo apt-get install libapache2-mod-auth-mysql
[*]
[*] sudo apt-get install php5-mysql
[*]
[*] sudo /etc/init.d/apache2 restart // 再次重启apache,使新服务正常激活
[*]
[*] 然后在终端输入:
[*]
[*] sudo ls /etc/apache2/mods-enabled
[*]
[*] 看看这个目录下(默认存在),有没有php5.conf 和 php5.load,如果没有则:
[*]
[*] sudo a2enmod php5
[*]
[*] 启用 php 模块,然后重启apache即可。OK,apache、php5、mysql都已经可用了。
[*]
[*] sudo /etc/init.d/apache2 restart
这里还需要配置下/etc/php5/apache2/php.ini
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] ;date.timezone ===>去掉注释在=后添加 Asia/Shanghai
[*]
[*] max_input_time =600
[*]
[*] max_execution_time= 600
[*]
[*] post_max_size =32M
[*]
[*] sudo /etc/init.d/apache2 restart
2.2 Zabbix安装
这里开始就有些小问题了。
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] //安装zabbix服务端
[*]
[*] sudo apt-get install zabbix-server-mysql
[*]
[*] //安装过程会弹出许多窗口,默认就行了,期间要求输入2-3次数据库的密码(这里一直填root)
按安装说明来看,会自动设置数据库信息,同时自动建库,但是我在这里安装到一半因不明原因安装失败了。于是只好关闭shell窗口。
另起shell重新安装时,遇到问题:
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] 运行程序更新时出现报错:
[*]
[*] 无法获得锁 /var/lib/dpkg/lock - open (11: 资源临时不可用)
好吧,刚刚强制关闭,安装程序锁住了资源。于是:
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] sudo rm /var/cache/apt/archives/lock
[*] sudo rm /var/lib/dpkg/lock
[*] sudo rm /var/lib/dpkg/updates/*
[*] sudo apt-get update
[*] sudo apt-get upgrade
[*] sudo apt-get aotuclean
[*] sudo apt-get aoturemove
[*] sudo apt-get clean
然后重新安装:
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] sudo apt-get install zabbix-server-mysql
这次安装倒是完成了,可是过程中一点反应也没有,启动时失败
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] yoara@ubuntu:~$ sudo /etc/init.d/zabbix-server start
[*] * zabbix_server is disabled in /etc/default/zabbix-server.
于是打开相关文档查看
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] cat /etc/default/zabbix-server
[*]
[*] #如下一段
[*] # This is by default set to "no" because a MySQL database needs to be prepared
[*] # and configured before you can start the Zabbix server for the first time.
[*] #
[*] # Instructions on how to set up the database can be found in
[*] # /usr/share/doc/zabbix-server-mysql/README.Debian
[*] START=no
难怪,这里被设置成no了,首先要自己去设置数据库信息。。
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] cat/usr/share/doc/zabbix-server-mysql/README.Debian
[*]
[*] create database zabbix character set utf8;
[*] create user 'zabbix'@'%' identified by 'zabbix';
[*] grant all on zabbix.* to 'zabbix'@'%' identified by 'zabbix';
[*]
[*] zcat /usr/share/zabbix-server-mysql/{schema,images,data}.sql.gz \
[*] | mysql -uzabbix -pzabbix zabbix
在安装脚本时,又出了mysql的问题
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
这问题一般是把socket改到/tmp/mysqld.sock,不过我这里先不管他,直接指定IP访问
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] zcat /usr/share/zabbix-server-mysql/{schema,images,data}.sql.gz \
[*] | mysql -h127.0.0.1 -uzabbix -pzabbix zabbix
终于zabbix-server启动成功了。
接着安装zabbix网站
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] //安装zabbix的网站程序
[*]
[*] sudo apt-get install zabbix-frontend-php(数据库root,root,root)
好吧,又是安装完没有一点反应,果然,不知原因的只是解压到了/usr/share/zabbix目录下,什么都没发生。于是,手动拷贝到apache目录下
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] sudo cp -r /usr/share/zabbix /var/www/html/zabbix
现在访问,终于可以出现设置界面了
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] //停止zabbix-server
[*]
[*] sudo/etc/init.d/zabbix-server stop
[*]
[*] //启动zabbix-server
[*]
[*] sudo/etc/init.d/zabbix-server start
[*]
[*] http://服务器地址或域名/zabbix
http://img.blog.csdn.net/20141210143229578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvWW9hcmE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
不过安装到最后一步又出问题了,还算好,提供了下载,下载后ftp到服务器
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] sudo cp /home/yoara/zabbix.conf.php /etc/zabbix/zabbix.conf.php
http://img.blog.csdn.net/20141210143829423?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvWW9hcmE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
复制过去后还是不行,那就得文件权限的问题了,于是ls- lh 果然如下,
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] yoara@ubuntu:/etc$ ls -lh /etc/zabbix
[*] 总用量 36K
[*] drwxr-xr-x 2 root root 4.0K2月 162014 alert.d
[*] -rw------- 1 root root425 12月9 22:46 dbconfig.php
[*] -rw-r--r-- 1 root root 7.4K2月 162014 zabbix_agentd.conf
[*] drwxr-xr-x 2 root root 4.0K2月 162014 zabbix_agentd.conf.d
[*] -rw------- 1 root root425 12月9 22:36 zabbix.conf.php
[*] -rw-r--r-- 1 root root12K 12月9 21:10 zabbix_server.conf
因为在安装时也没注意账户,实际上对于这种应用,每个应用都要新建用户和用户组,这里就先全部授权
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] sudo chmod -R 777 /etc/zabbix
OK,终于可以了。登录用户名密码admin/zabbix
最后,安装zabbix客户端,安装过程也就结束了。
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] //安装zabbix客户端
[*]
[*] sudo apt-get install zabbix-agent
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] 安装客户端后,若不是服务器本机,都需要修改zabbix配置文件/etc/zabbix/zabbix_agent.conf和/etc/zabbix/zabbix_sagentd.conf的一行
[*]
[*] server=zabbix服务端地址或域名
3. 可能遇到的问题
view plaincopyhttps://code.csdn.net/assets/CODE_ico.pnghttps://code.csdn.net/assets/ico_fork.svg
[*] no active checks on server : host not found
解决方法:
1.在页面上设置“组态->主机”将主机设置为监控客户端的机器hostname。
2./etc/zabbix/zabbix_agent.conf 中的hostname与1中设置的一致。
页:
[1]