搭建zabbix及报错处理
搭建ZABBIX服务器准备工作 1、需要服务器是LAMP 或 LNMP 环境 2、主机名和IP要写在HOST文件里 3、iptables 和 selinux 必须关闭 一、先用最简单的方式搭建lamp环境(yum安装) yum -y install gcc net-snmp-devel curl-devel OpenIPMI 安装完成后再测试web能否访问php页面 先添加php页面 vi /var/www/html/index.php <?php phpinfo(); ?> 再查看是否有该进程 netstat -anlp|grep :80 访问测试:看能否看到PHP页面 二、安装ZABBIX 1、安装zabbix前需要先配置PHP,否则安装不上 修改PHP相关参数 vi /etc/php.ini 440 max_execution_time = 300 449 max_input_time = 300 457 memory_limit = 128M 729 post_max_size = 32M 946 date.timezone = Asia/Shanghai 1586 mbstring.func_overload=2 2、编译安装zabbix包 先解压 tar zxvf /opt/zabbix-2.2.13.tar.gz -C /usr/src cd /usr/src/zabbix-2.2.13 编译安装 ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy make && make install 修改server配置文件,添加zabbix数据库密码 vim /usr/local/zabbix/etc/zabbix_server.conf LogFile=/tmp/zabbix_server.log PidFile=/tmp/zabbix_server.pid DBName=zabbix DBUser=zabbix DBPassword=123456 #指定zabbix数据库密码 ListenIP=192.168.169.220 #服务器IP地址 3、创建zabbix用户 useradd zabbix -s /sbin/nologin 4、初始化mysql数据库 启动数据库 /etc/init.d/mysqld start 重置mysql root登陆密码 mysqladmin -uroot password '123456'; 使用root登陆数据库创建zabbix数据库和zabbix用户 mysql -uroot -p123456 创建zabbix数据库 mysql> create database zabbix default charset utf8; 添加zabbix_user用户并指定使用zabbix库 mysql> grant all on zabbix.* to zabbix@'localhost' identified by '123456'; mysql> grant all on zabbix.* to zabbix@'192.168.169.220' identified by '123456'; 完成执行 mysql> flush privileges; 退出 mysql> quit 把zabbix数据恢复到数据库 #mysql -uroot -p123456 </usr/src/zabbix-2.2.13/database/mysql/schema.sql zabbix; #mysql -uroot -p123456 </usr/src/zabbix-2.2.13/database/mysql/images.sql zabbix; #mysql -uroot -p123456 </usr/src/zabbix-2.2.13/database/mysql/data.sql zabbix; 5、添加zabbix安装文件到httpd家目录,用于安装zabbix # cd /usr/src/zabbix-2.2.13/frontends/ # cp -rf php /var/www/html/ #web主机home目录 # chown -R zabbix:zabbix /var/www/html/php/ # chmod 777 -R /var/www/html/php/ 6、启动zabbix服务端 启动命令:/usr/local/zabbix/sbin/zabbix_server 关闭zabbix,需要用ps -ef|grep zabbix 查出来,然后用kill -9 杀死 zabbix服务端默认端口是10051,代理端默认端口是10050 使用:netstat -anlp|grep 10051 查看是否有10051端口 如果没有则启动失败,此时需要去看日志 日志位置:/tmp/zabbix_server.log zabbix代理端安装方法 1、安装前准备工作 主机名和IP要写在HOST文件里 iptables 和 selinux 必须关闭 安装编译zabbix时所需要的依赖包 yum -y install gcc net-snmp-devel curl-devel OpenIPMI 2、编译安装zabbix包 先解压 tar zxvf /opt/zabbix-2.2.13.tar.gz -C /usr/src cd /usr/src/zabbix-2.2.13 编译因这台是代理,所在编译时指定为代理 --enable-agent ./configure --prefix=/usr/local/zabbix-2.2.2/ --enable-agent make && make install 3、修改Agentd配置文件 vim /usr/local/zabbix-2.2.2/etc/zabbix_agentd.conf LogFile=/tmp/zabbix_server.log #开启日志 PidFile=/tmp/zabbix_server.pid #开启pid Server=192.168.169.220 #zabbix服务器ip ServerActive=192.168.169.220 #zabbix服务器ip Hostname=zabbix-server #必须与zabbix创建的host name相同 注:Server和ServerActive都指定zabbixserver的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许192.168.169.220这个ip来我这取数据。而serverActive的192.168.169.220的意思是,客户端主动提交数据给他。 4、启动zabbix代理端 启动命令:/usr/local/zabbix/sbin/zabbix_agentd 关闭zabbix,需要用ps -ef|grep zabbix 查出来,然后用kill -9 杀死 zabbix服务端默认端口是10051,代理端默认端口是10050 使用:netstat -anlp|grep 10050 查看是否有10050端口 如果没有则启动失败,此时需要去看日志 日志位置:/tmp/zabbix_server.log
使用zabbix用户登录数据库,如果能登录则没问题。检查下面的文件 zabbix_server.conf DBName,DBUser,DBPassword
zabbix.conf.php文件修改如下 修改时候重启zabbix_server刷新zabbix配置页面
如果配置zabbix页面的时候报错/tmp/mysql.sock-----需要做个软链接----ln -s /data/mysql.socket /tmp/mysql.sock #我的mysql配置文件指定socket文件在/data目录下
$ZBX_SERVER = '服务器ip';
$DB['SERVER'] = '服务器ip';