系统最小化安装
环境:
zabbix_server 12.1.1.1
zabbix_agent 12.1.1.2
zabbix_proxy 12.1.1.3
1.安装环境:
yum -y install wget vim tree gcc gcc-c++ autoconf httpd mysql mysql-server httpd-manual mod_ssl mod_perl mod_auth_mysql mysql-connector-odbc mysql-devel libdbi-dbd-mysql net-snmp net-snmp-devel curl-devel
(mysql这里出于实验快速直接yum安装)
2.安装php
unzip php_for_zabbix.zip
cd php_for_zabbix
yum localinstall -y ./*
(需要安装的php包如下:php php-mysql php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath 当然也可以用其他方式安装php,这里不做演示)
3.httpd和mysql设置开机自动启动:
修改httpd的FQDN错误,重启httpd服务(可省略)
echo "ServerName localhost:80" >>/etc/httpd/conf/httpd.conf
service httpd start
service mysqld start
chkconfig httpd on
chkconfig mysqld on
4.防火墙设置,开放80(httpd)、10050(zabbix_agent)、10051(zabbix_server)端口:
iptables -I INPUT -p tcp -m multiport --destination -port 80,10050:10051 -j ACCEPT
iptables -L -n
5.修改php相应参数:
# vim /etc/php.ini 找到如下几项,改成下面的值,前面有;号的要删掉(如果修改会提示出错,也可以按照提示进行修改)
max_execution_time = 300
max_input_time = 600
memory_limit = 128M
post_max_size = 32M
date.timezone = Asia/Shanghai
或者命令行直接执行下面命令
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 = 600@g" /etc/php.ini
sed -i "s@memory_limit = 128M@memory_limit = 128M@g" /etc/php.ini
重启apache
#service httpd restart
6.创建zabbix用户和相关组:
groupadd zabbix
useradd -g zabbix zabbix
7.安装zabbix-server
tar xf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
zabbix服务端也需要监控所以开启agent
make && make install
#创建zabbix数据库以及相关表
mysql -e "create database zabbix default charset utf8;"
mysql有密码时:
(mysql -uroot -p123 -e "create database zabbix default charset utf8;")
mysql -e "grant all on zabbix.* to zabbix@localhost identified by 'zabbix';" //创建zabbix用户并授权
#导入表结构
mysql -uzabbix -pzabbix zabbix<./database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix<./database/mysql/images.sql
mysql -uzabbix -pzabbix zabbix<./database/mysql/data.sql
mysql_secure_installation
#配置软连接和启动文件信息
mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
ln -s /usr/local/zabbix/etc/ /etc/zabbix
ln -s /usr/local/zabbix/bin/* /usr/bin/
ln -s /usr/local/zabbix/sbin/* /usr/sbin/
cp /usr/src/zabbix-2.4.5/misc/init.d/fedora/core/zabbix_* /etc/init.d
chmod 755 /etc/init.d/zabbix_*
#修改/etc/init.d目录下的zabbix_server和zabbix_agentd启动文件
vim /etc/init.d/zabbix_server
sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g"
vim /etc/init.d/zabbix_agentd
sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g"
(注:s@xx@xx@g 等同于 s/xx/xx/g 因为替换中有目录/号,需要转义还不好区分所以用@号分隔)
#修改/etc/zabbix/zabbix_server.conf
sed -i "s@tmp/zabbix_server.log@var/log/zabbix/zabbix_server.log@g" /etc/zabbix/zabbix_server.conf
sed -i "s@DBUser=root@DBUser=zabbix@g" /etc/zabbix/zabbix_server.conf
sed -i "s@# DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf
#修改/etc/zabbix/zabbix_agentd.conf,这里的IP地址写的是zabbix_server的IP地址,即12.1.1.1
sed -i "s@Server=127.0.0.1@Server=127.0.0.1,12.1.1.1@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@ServerActive=127.0.0.1@ServerActive=12.1.1.1@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@^# UnsafeUserParameters=0@UnsafeUserParameters=1
@g" /etc/zabbix/zabbix_agentd.conf
#复制zabbix站点的文件到/var/www/html目录下
cp -r /usr/src/zabbix-2.4.5/frontends/php/ /var/www/html/zabbix/
chown -R apache.apache /var/www/html/zabbix/
chkconfig zabbix_server on
chkconfig zabbix_agentd on
service zabbix_server start
service zabbix_agentd start
(如果启动后查看没有10051端口,可以查看zabbix_server日志继而解决)
8.页面安装:
http://12.1.1.1/zabbix/setup.php
a.检查php配置,各项通过才可以下一步;
b.配置db连接信息: type:mysql,host:localhost,port:3306,db_name:zabbix,user:zabbix,password:zabbix;
Test connection 看到OK后下一步。
c.zabbix服务器配置:host:12.1.1.1,port:10051,name:danny-zabbix-server(名称随意)
d.一路下一步,完成。
9.登陆
http://12.1.1.1/zabbix/index.php
默认账号:admin,密码:zabbix
(默认的账号密码存储在mysql的zabbix库的users表中,如需修改更新Mysql中其的数据即可。)
测试:
在服务器端使用zabbix_get -s 12.1.1.2 -k system.uname可以看到被监控机版本信息。
server汉化:
去windows下选择自己喜欢的字体,如simkai.ttf楷体常规(windows下控制面板->字体)替换/var/www/html/zabbix/fonts替换DejaVuSans.ttf文件
然后修改字体配置文件:
vim
/var/www/html/zabbix/include/defines
.inc.php
#修改以下两行
define(
'ZBX_FONT_NAME'
,
'simkai'
);
define(
'ZBX_GRAPH_FONT_NAME'
,
'simkai'
);
然后去页面选择profile修改即可
service zabbix_server restart
==============================================================================
agent 安装:
安装基础软件:
yum install wget vim tree gcc gcc-c++ -y
安装客户端:
groupadd zabbix
useradd -g zabbix zabbix
tar xf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
#开始编译安装zabbix客户端
./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
#创建zabbix的日志目录
mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
#复制zabbix_agentd启动文件到/etc/init.d目录下
cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
chmod 755 /etc/init.d/zabbix_agentd
#修改启动文件和配置软连接
sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_agentd
ln -s /usr/local/zabbix/etc/ /etc/zabbix
ln -s /usr/local/zabbix/bin/* /usr/bin
ln -s /usr/local/zabbix/sbin/* /usr/sbin/
#修改配置文件/etc/zabbix/zabbix_agentd.conf
# egrep -v "^#|^$" /etc/zabbix/zabbix_agentd.conf
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
#####被动模式:允许server的ip来本机取数据
Server=12.1.1.1
#####主动模式:本机主动给哪台server发送数据
ServerActive=12.1.1.1
#####主机名
Hostname=Client_12.1.1.2 //很重要,server监控页面判别监控主机的主要指标
Include=/etc/zabbix/zabbix_agentd.conf.d/
UnsafeUserParameters=1 ###启用自定义key
#设置zabbix_agentd开机自动启动,并启动zabbix_agentd服务
chkconfig zabbix_agentd on
service zabbix_agentd start
在zabbix_server监控页面中添加主机即可
=================================================================================
proxy代理配置安装:(当一台zabbix监控太多主机而致使服务器压力过大,就可以搭建代理zabbix)
#安装zabbix-proxy
yum -y install wget vim tree gcc gcc-c++ autoconf httpd mysql mysql-server httpd-manual mod_ssl mod_perl mod_auth_mysql mysql-connector-odbc mysql-devel libdbi-dbd-mysql net-snmp net-snmp-devel curl-devel
yum -y install libxml2-devel openldap-devel unixODBC-devel
groupadd zabbix
useradd -g zabbix zabbix
tar xf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
./configure --prefix=/usr/local/zabbix --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
make && make install
#创建zabbix数据库以及相关表
service mysqld start
mysql -e "create database zabbix default charset utf8;"
mysql -e "grant all on zabbix.* to zabbix@localhost identified by 'zabbix';"
mysql -uzabbix -pzabbix zabbix<./database/mysql/schema.sql
mysql_secure_installation
#配置软连接和启动文件信息
mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
ln -s /usr/local/zabbix/etc/ /etc/zabbix
ln -s /usr/local/zabbix/bin/* /usr/bin/
ln -s /usr/local/zabbix/sbin/* /usr/sbin/
cp /usr/local/zabbix/sbin/zabbix_proxy /etc/init.d/
chmod 755 /etc/init.d/zabbix_proxy
vim /etc/zabbix/zabbix_proxy.conf
Server=12.1.1.1 //zabbix_server的ip
Hostname=bj_proxy (必须和web页面一致,用于识别)
LogFile=/var/log/zabbix/zabbix_proxy.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
zabbix_agent上:
修改配置文件
vim etc/zabbix/zabbix_agentd.conf
Server=12.1.1.3 // zabbix_proxy 的ip
ServerActive=12.1.1.3
#启动proxy
/usr/local/zabbix/sbin/zabbix_proxy
或
/etc/init.d/zabbix_proxy start
在页面添加
zabbix_server页面上添加zabbix_proxy代理,注意准确填写代理的名称。
并将zabbix_agent添加到代理中
重启
zabbix_proxy和zabbix_agent
OK,实验完成