zabbix小结(二)zabbix的安装
由于ubuntu源里自带有zabbix ,可以直接通过apt-get的方式进行安装,所以这里就以centos6.5为例,介绍下zabbix的源码包编译安装的过程。
一、lamp环境安装
1、yum安装lamp
1# yum -y update
2# yum -y install gcc gcc-c++ autoconf \
3httpd php mysql mysql-server php-mysql \
4httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldap \
5php-pear php-xmlrpc php-bcmath mysql-connector-odbc mysql-devel \
6libdbi-dbd-mysql net-snmp-devel curl-devel unixODBC-devel OpenIPMI-devel java-devel
2、修改php.ini
由于后面的安装时会对php.ini的相关参数进行检测,发现不满足时在页面上会报错,所以这里需要提前修改相关参数,其中需要修改的部分如下:
1# vim /etc/php.ini
2date.timezone = Asia/Shanghai
3max_execution_time = 300
4post_max_size = 32M
5max_input_time=300
6memory_limit = 128M
7mbstring.func_overload = 2
也可以直接通过shell语句的方式进行修改,如下:
1# sed -i "s/;date.timezone =/date.timezone = Asia/Shanghai/g" /etc/php.ini
2# sed -i "s#max_execution_time = 30#max_execution_time = 300#g" /etc/php.ini
3# sed -i "s#post_max_size = 8M#post_max_size = 32M#g" /etc/php.ini
4# sed -i "s#max_input_time = 60#max_input_time = 300#g" /etc/php.ini
5# sed -i "s#memory_limit = 128M#memory_limit = 128M#g" /etc/php.ini
6# sed -i "/;mbstring.func_overload = 0/ambstring.func_overload = 2n" /etc/php.ini
二、zabbix的安装
1、安装zabbix编译时所需的依赖包
1# yum -y install curl curl-devel pcre pcre-devel libssh2-devel openldap-devel
2、zabbix的下载安装
到zabbix的下官方下载页面下载取新的stable版本 ,目前的最新版本为2.2.3
1# wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.3/zabbix-2.2.3.tar.gz
2# tar zxvf zabbix-2.2.3.tar.gz
3、编译安装
1# useradd zabbix
2# ./configure --prefix=/usr
3--sysconfdir=/etc/zabbix
4--enable-server --enable-proxy
5--enable-agent
6--enable-ipv6 --with-mysql=/usr/bin/mysql_config --with-net-snmp
7--with-libcurl
8--with-openipmi
9--with-unixodbc
10--with-ldap
11--with-ssh2
12--enable-java
13# make install
a、如果你只是想安装一个服务端,只需开启–enable-server 即可,其他参数可以不用选,但这里是为了后面的各项功能都可以使用,所以开启了非常多的参数 。
b、通常在需要进行自动化处理的环境中,一般需要统一批量主机的用户名的ID值 ,可以通过groupadd -g 201 zabbix ;useradd -g zabbix -u 201 -m zabbix 的方式新增用户 。
4、增加services配置
编辑/etc/services配置文件,新增下面部分:
1# vim /etc/services
2zabbix-agent 10050/tcp #Zabbix Agent
3zabbix-agent 10050/udp #Zabbix Agent
4zabbix-trapper 10051/tcp #Zabbix Trapper
5zabbix-trapper 10051/udp #Zabbix Trapper
三、mysql 数据配置
配置mysql默认开机启动,并启动mysql服务:
1# chkconfig mysqld on
2# services mysqld start
修改mysql root密码,并登录测试:
1# mysqladmin -uroot password 123456
2# mysql -uroot -p123456
创建zabbix使用的数据库,并配置用户名密码:
1mysql> create database zabbix character set utf8;
2Query OK, 1 row affected (0.00 sec)
3mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
4Query OK, 0 rows affected (0.00 sec)
5mysql> flush privileges;
6Query OK, 0 rows affected (0.00 sec)
这里新建了一个用户名密码都为zabbix的账号 ,完成后记得使用zabbix -uzabbix -pzabbix 测试是否可以正常进行连接。进入zabbix源码包解压目录,导入mysql数据:
1[root@localhost zabbix-2.2.3]# mysql -uzabbix -pzabbix zabbix < ./database/mysql/schema.sql
2[root@localhost zabbix-2.2.3]# mysql -uzabbix -pzabbix zabbix < ./database/mysql/images.sql
3[root@localhost zabbix-2.2.3]# mysql -uzabbix -pzabbix zabbix < ./database/mysql/data.sql
四、zabbix启动脚本及conf配置
1、配置zabbix启动脚本,并设置为开机自启动
1# cp misc/init.d/fedora/core/zabbix_* /etc/init.d/
2# chmod 755 /etc/init.d/zabbix_*
3# sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/#g" /etc/init.d/zabbix_server
4# sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/#g" /etc/init.d/zabbix_agentd
5//设置开机自启动
6# chkconfig zabbix_server on
7# chkconfig zabbix_agentd on
2、zabbix_server.conf服务端配置
修改/etc/zabbix/zabbix_server.conf 配置文件,修改后配置文件结果类似如下:
1# egrep -v "(#|^$)" /etc/zabbix/zabbix_server.conf
2LogFile=/var/log/zabbix/zabbix_server.log
3DBHost=localhost
4DBName=zabbix
5DBUser=zabbix
6DBPassword=zabbix
7//以下部分为可选项,可以使用默认值即可
8DBSocket=/var/lib/mysql/mysql.sock
9DBPort=3306
10StartPollers=160
11StartTrappers=20
12StartPingers=100
13StartDiscoverers=120
14MaxHousekeeperDelete=5000
15CacheSize=1024M
16StartDBSyncers=16
17HistoryCacheSize=1024M
18TrendCacheSize=1024M
19HistoryTextCacheSize=512M
20AlertScriptsPath=/etc/zabbix/alertscripts
21LogSlowQueries=1000
3、zabbix_agentd.conf
需要注意的是在/etc/zabbix/目录下会有一个zabbix_agent.conf和一个zabbix_agentd.conf ,这里使用的是带d
的配置文件,两都的区别是:zabbix_agent.conf是用超级服务(xinetd)的方式来启动的,zabbix_agentd.conf是以独立进程的方式来启动的 。
1# egrep -v "(#|^$)" /etc/zabbix/zabbix_agentd.conf
2LogFile=/var/log/zabbix/zabbix_agentd.log
3EnableRemoteCommands=0
4Server=127.0.0.1,192.168.1.100
5StartAgents=8
6ServerActive=192.168.1.100:10051
7Hostname=test1
8Timeout=30
9Include=/etc/zabbix/zabbix_agentd.conf.d/
10UnsafeUserParameters=1
工作模式:
– Server 是采用被动工作模式,允许访问的 ip 地址,server 端获取数据 。
– ServerActive 是采用主动工作模式,将数据上传到哪台服务器,需要填写 server 的端口,默认是 10051语法是 “ip1,ip2 ”,可以填写多个 server 端,中间用逗号隔开。 UnsafeUserParameters 的值表示是否启用自定义脚本,默认是0表示不启用。
4、启动服务
完成以上配置后,通过以下命令启动服务:
1# service zabbix_server start
2# service zabbix_agentd start
五、zabbix frontends前端配置
1、复制frontend页面文件
1# cp -r ./frontends/php/ /var/www/html/zabbix
2# chown -R apache.apache /var/www/html/zabbix
3# service httpd start
2、配置apache 虚拟主机
1<VirtualHost *:80>
2 ServerAdmin [email protected]
3 DocumentRoot /var/www/html/zabbix
4 ServerName zabbix.361way.com
5 ErrorLog logs/dummy-zabbix.361way.com-error_log
6 CustomLog logs/dummy-zabbix.361way.com-access_log common
7</VirtualHost>
3、zabbix.conf.php配置文件的生成
在浏览器中输入上面配置的虚拟主机名,进入zabbix_frontend配置安装界面,如下:
上图中如果不按第一步中lamp的安装中修改/etc/php.ini的参数,这里会出现红色告警。
以上为zabbix 的数据库配置部分。
此处建议使用主机名,因为IP地址可能会更改,而主机名更改的机率要小 。使用主机名的话,IP地址更改对参数也不会有影响 。
此处可能会遇到无法创建文件的问题,该问题是由于没有写权限造成的。可以通过下面的命令解决:
1# chown -R apache.apache /var/www/html/zabbix
按finish完成安后,默认登录的用户名是admin,密码是zabbix 。
六、selinux防火墙问题
进入web页面登录后,发现报错内容为:Zabbix server is not running:the information displayed may not be cuurrent
, 解决方法:vim /etc/sysconfig/selinux修改里面的selinux=disabled后,重启服务器后解决。
捐赠本站(Donate)
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))
- Author: shisekong
- Link: https://blog.361way.com/zabbix-server-install/3358.html
- License: This work is under a 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. Kindly fulfill the requirements of the aforementioned License when adapting or creating a derivative of this work.