搭建zabbix 4.0

1 [root@localhost /]# sed ‐i "s#SELINUX=enforcing#SELINUX=disabled#g"
2 /etc/selinux/config #永久关闭 重启生效
3 [root@localhost /]# setenforce 0 #临时关闭
安装数据库,老版本删除 需要5.6版本以上
rpm ‐ivh http://dev.mysql.com/get/mysql‐community‐release‐el6‐5.noarch.rpm
yum ‐y install mysql‐server 
yum list installed | grep mysql
修改数据库的配置文件,以及重启
[root@localhost /]# vim /etc/my.cnf
innodb_file_per_table=1      
#独立表空间开启 0是关闭(每一个表都将会生成以独立的文件方式来进行存储,每一个表都有一个.frm表描述文件,还有一个.ibd文件。 其中这个文件包括了单独一个表的数据内容以及索引内容,默认情况下它的存储位置也是在表的位置之中。)

[root@localhost /]# /etc/init.d/mysqld start
 1 [root@localhost /]# mysql   #第一次登录mysql数据库,建议进去更改root的密码 
 2 mysql> use mysql; 
 3 mysql> update user set password='newpasswd' where user='root';
 4 重进mysql
 5 #创建zabbix库,指定字符集
 6 mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
 7 Query OK, 1 row affected (0.06 sec)
 8 #创建zabbix用户密码:zabbix 授权拥有访问zabbix库的所有权限
 9  mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbix';
10 Query OK, 0 rows affected (0.02 sec)
11 mysql> flush privileges; #刷新权限表
12 mysql> show databases; #查看是否创建成功
Zabbix 需要PHP是至少5.4或更高版本。我们的CentOS 6.5库跟php 5.3.3因此我们需要安装一个新的
[root@localhost /]# rpm ­ivh http://repo.webtatic.com/yum/el6/latest.rpm 
yum ­y install httpd php56w php56w­gd php56w­mysql php56w­bcmath php56w­mbstring php56w­xml php56w­ldap   #安装所需要的包
vim /etc/php.ini #配置php的各项配置 
post_max_size = 16M #允许php接收最大的数据 
max_execution_time = 300 #最大执行时间 秒为单位 
max_input_time = 300 #允许输出最长时间 秒为单位 
always_populate_raw_post_data = ­1 
1 vim /etc/httpd/conf/httpd.conf 
2 ServerName 127.0.0.1 
3 DirectoryIndex index.html index.html.var index.php 
4 启动httpd服务 
5 /etc/init.d/httpd start
创建zabbix用户和组
1 [root@localhost /]# groupadd zabbix
2 [root@localhost /]# useradd ‐g zabbix zabbix

安装zabbix的依赖包

 yum ‐y install gcc mysql‐community‐devel libxml2‐devel unixODBC‐devel net‐snmp‐devel libcurl‐devel libssh2‐devel OpenIPMI‐devel openssl‐devel ope nldap‐devel

下载zabbix源码包

1 wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stab le/4.0.1/zabbix‐4.0.1.tar.gz
2 tar ‐zxvf zabbix‐4.0.1.tar.gz  #解压包,解压到哪个地方 看个人的习惯
3 cd zabbix‐4.0.1/database/mysql/ #这个是zabbix自带的数据库的表数据,需要导入数 据库,路径在zabbix解压文件里的databases/mysql里
4 ls
5 data.sql images.sql schema.sqlwget     #这三个就是要导入数据库的数据
数据库导入数据的命令格式:mysql ­u用户名 ­p密码 数据库名称 < 要导入的数据
#此时的路径是在databases/mysql里,所以<后面直接跟schema.sql这个就行了,如果不在,就需要加需要导入数据的路径
延伸知识:mysqldump ­u用户 ­p密码 数据库名 > 某路径下的某个文件 # 这个是数据库备份的
mysql ‐uzabbix ‐p zabbix < schema.sql 
mysql ‐uzabbix ‐p zabbix < images.sql 
mysql ‐uzabbix ‐p zabbix < data.sql

安装zabbix

 

1 cd /zabbix‐4.0.1
2 ./configure ‐‐enable‐server ‐‐enable‐agent ‐‐with‐mysql ‐‐enable‐ipv6 ‐‐with‐net‐snmp ‐‐with‐libcurl ‐‐with‐libxml2 ‐‐ with‐unixodbc ‐‐with‐ssh2 ‐‐with‐openipmi ‐‐with‐openssl ‐‐prefix=/usr/loca l/zabbix
3 make install
4 echo $?
修改配置文件:
vim /etc/zabbix/zabbix_server.conf  
1 DBHost=localhost # 数据库ip地址
2 DBName=zabbix #数据库名字
3 DBUser=zabbix #数据库用户
4 DBPassword=zabbix #数据库密码
5 ListenIP=192.168.*.* #zabbix server ip地址
创建存放zabbix php访问目录,把zabbix的php放到zabbix访问路径下
1 mkdir /var/www/html/zabbix
2 cd /zabbix‐4.0.1/frontends/php/
3 cp ‐rf * /var/www/html/zabbix/
4 chown ‐R apache:apache /var/www/html/zabbix #用户授权
5 chmod +x /var/www/html/zabbix/conf/ #添加执行权限
启动脚本添加到/etc/init.d/下
cp /zabbix‐4.0.1/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix _server 
cp /zabbix‐4.0.1/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix _agentd
添加服务开机自启
1 [root@localhost php]# chkconfig ‐‐add /etc/init.d/zabbix_server 
2 [root@localhost php]# chkconfig ‐‐add /etc/init.d/zabbix_agentd
3 [root@localhost php]# chkconfig httpd on
4 [root@localhost php]# chkconfig mysqld on
5 [root@localhost php]# chkconfig zabbix_server on
6 [root@localhost php]# chkconfig zabbix_agentd on
启动zabbix_server
 1 [root@localhost php]# /etc/init.d/zabbix_server start 
 
 
重启失败报错总结
1.如果是546错误:百度上说是更改启动路径
vim /etc/init.d/zabbix_server
BASEDIR=/usr/local/zabbix #更改下路径
此方法我试着是不行,我解决的思路是问题出在启动服务方式上,就把zabbix重新编译下,重新cp了zabbix启动脚本到/etc/init.d 下,这样试了下发现也是可行的,重启成功

2.如果是1045的错误,多半就是数据没有给zabbix这个用户权限,到数据库里授权下

GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbi x';
flush privileges;

3.zabbix web页面报错连接不上数据

解决思路:查看日志,发现错误日志大概是在zabbix里找不到相关的表
把zabbix的数据重新导入数据库,或者删除数据库,从新创建数据库,重新导入数据

 

 

 

posted @ 2019-11-22 16:39  fs_Dong  阅读(541)  评论(0编辑  收藏  举报