zabbix部署(基于CentOS6.2平台)
网络设定相关
1.增加路由
route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.0.22
2.系统启动后网卡需手动激活
原因是最小化安装CentOS6.2后,网卡是没有默认启动的(onboot=“no”),并且设置了依赖NetworkManager 的选项(NM_CONTROLLED="yes"),但是minimal的情况下并没有安装系统默认提供的网络管理工具NetworkManger。我们需要修改/etc/sysconfig/network-script/ifcfg-eth0文件
3.安装传输文件协方式
yum install lrzsz
时间设定
1.时间设定
hwclock --set --date="07/07/06 10:19"
hwclock --hctosys
时间的正确设定很重要,时间不同步将导致监控的数据不一致,有可能出现监控了一周却始终只有三五天数据或是无法得到当前时间数据的情况。其中第一条语句是设定硬件时钟,第二条语句是设定系统时钟和硬件时钟同步。
2.时区设定
tzselect
时区的设定也很重要,如果系统及硬件时钟正确而时区设定不正确的话会导致图形显示出来的数据相关几个小时,因些调整好时区也是一个重要的步骤。
查找系统文件etc/sysconfig/clock并修改为:
ZONE="Asia/Shanghai"
UTC=true
ARC=false
找到系统文件/usr/share/zoneinfo/Asia/Shanghai用这个文件替换当前的/etc/localtime文件
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
修改php.ini
date.timezone = Asia/Shanghai
字体设定
zabbix自带的中文字体不太好看,你可以将自己替换喜欢的字体。常用的字体windows其实已经自带了(系统字体的存放位置位于c:\windows\font中,如下图所示),你可以直接用windows中的字体进行替换。
wgethttp://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.0/zabbix-2.0.0.tar.gz
tar zxvf zabbix-2.0.0.tar.gz
cp -r /root/zabbix-2.0.0/frontends/php /var/www/html/
mv /var/www/html/php/ /var/www/html/zabbix
cd /var/www/html/zabbix/fonts/
cp -frp DejaVuSans.ttf DejaVuSans.ttf.old
mv simsunb.ttf DejaVusans.ttf
XDMCP设定
对于在windows下想用xmanager连接linux进行图形化远程操作的人员来说,设定好XDMCP是必不可少的步骤。这里仅仅介绍linux端的设定,对于该方式和该软件不了解的可以自己google下。
vi /etc/gdm/custom.conf
修改配置文件。
[daemon]
[security]
AllowRemoteRoot=true
[xdmcp]
Enable=true
[greeter]
IncludeAll=true
[chooser]
[debug]
iptables设定
iptables的作用及它的重要性不需做太多解释,这里只列出必要开放的端口,对于语句或内容有疑问的请自行google或和我联系。
vi /etc/sysconfig/iptables
修改iptables配置文件
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 177 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6000:6010 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
HTTPD设定
HTTPD的作用也无需太多介结大家都能明白,这里需要说明的是HTTPD的设定可能是在安装了HTTP和PHP组件后,这里仅做参考用并不代表安装一定按些步骤。实在不明白的google吧。
vi /etc/httpd/conf.d/zabbix.conf
增加配置文件
<VirtualHost *:80>
ServerAdmin zabbix
DocumentRoot /var/www/html/zabbix
ErrorLog /var/log/httpd/zabbix.log
HostnameLookups Off
UseCanonicalName Off
ServerSignature Off
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
禁用selinux
selinux确实提高了系统的安全性,但另一方面也给应用程序增加了很多的不确定性。我在安装配置完zabbix后曾出现过始终无法打开浏览页面无法进入web安装界面的情况,后来禁用selinux后问题解决。对于selinux的启用与否个人见仁见智可以根据自已的需求决定是否开启。
vi /etc/selinux/config
禁用selinux
SELINUX=disabled
SELINUXTYPE=targeted
##重启系统
禁用ctrl+alt+del
禁用ctrl+alt+del的作用是防止机房管理人员误操作导致系统重启的问题。需注意的是在centos6之前的版本中该设置文件是/etc/inittab,而到了centos6以后被放到了/etc/init/control-alt-delete.conf中。
vi /etc/init/control-alt-delete.conf
禁用ctrl+alt+del
#start on control-alt-delete
#exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
1.增加用户组
主要是增加zabbix用户组,如果不增加该用户和组,在后面的编译安装时将会有相关提示。
groupadd -g 130 zabbix
useradd -u 130 -g zabbix -c "Zabbix Monitoring" zabbix
2.增加软件源
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo /etc/yum.repos.d/
3.安装相关软件
yum install mysql-server httpd php mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml postfix zlib-devel glibc-devel automake mysql libidn-devel openssl-devel rpm-devel OpenIPMI-devel
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
yum install net-snmp*
4.配置数据库
service mysqld start
mysqladmin -u root password 'password'
mysql_secure_installation
mysql -uroot -p
create database zabbix default character set utf8;
grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by'password';
quit;
tar zxvf zabbix-2.0.0.tar.gz
cd database/mysql
cat schema.sql |mysql -u zabbix -p zabbix
cat images.sql |mysql -u zabbix -p zabbix
cat data.sql |mysql -u zabbix -p zabbix
#####以上三条语句必须严格按照顺序
5.编译zabbix
./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-jabber(即时通讯(根据需要添加)) --with-libcurl --with-openipmi --enable-proxy --enable-agent
make
make install
cp misc/init.d/redhat/8.0/zabbix_* /etc/init.d/ ###在安装包的根目录下
chmod 755 /etc/init.d/zabbix_*
chown -R zabbix:zabbix /usr/local/zabbix
chkconfig --add zabbix_server
chkconfig --add zabbix_agentd
chkconfig --level 35 zabbix_server on
chkconfig --level 35 zabbix_agentd on
6.配置zabbix
vi /usr/local/zabbix/etc/zabbix_server.conf
配置zabbix_server.conf文件
SourceIP=192.168.0.189
DBName=zabbix
DBUser=zabbix
DBPassword=password
vi /usr/loca/zabbix/etc/zabbix_agent.conf
Server=192.168.0.189
删除临时文件
rm -rf /tmp/*
启动zabbix服务
cd /usr/local/zabbix/sbin
./zabbix_server start
./zabbix_agentd start
检查是否成功启动zabbix_server、zabbix_agentd服务
netstat -lp|grep zabbix*
7.配置php.ini
memory_limit = 256M
date.timezone = Asia/Shanghai
post_max_size = 32M
max_execution_time = 600
upload_max_filesize = 16M
max_input_time = 600
8.启动httpd服务
service httpd start
到这里就可以启动web服务进行zabbix的安装了,httpd服务启动后直接在浏览器中输入服务器的IP地址开始安装,按照图形的方式一步一步安装完成吧。后面就如何自定义监控模板(IIS6、IIS7、SQL2005、SQL2008),如自定义MAP图标以及zabbix简单的性能优化写出我自己的理解。
本文出自 “虚拟的现实” 博客,转载请与作者联系!
9、默认的登录密码
username:admin; password:zabbix