Ubuntu 16.04 编译安装&&用dpkg安装--zabbix3.4

编译安装zabbix3.4,官方有教程,但是遇到一些报错:

 总结下来,需要安装这些环境:

更新系统:
apt update
apt upgrade

先装这些:
apt-get install libmysqld-dev
apt-get install libperl-dev
apt-get install libcurl4-openssl-dev

编译安装 pcre库
tar -zxf pcre-8.00.tar.gz
cd pcre-8.00
./configure --prefix=/opt/pcre

编译安装 libevent-devel
tar -zxf libevent-2.1.8-stable.tar.gz
cd libevent-2.1.8-stable
./configure
make
make install
Libraries have been installed in:/usr/local/lib
检测是否安装成功:ls -al /usr/local/lib | grep libevent

编译安装 net-snmp-devel
tar -zxf net-snmp-5.6.2.1.tar.gz
cd net-snmp-5.6.2.1
./configure --with-default-snmp-version="3" --with-sys-contact="@@no.where" --with-sys-location="Unknown" --with-logfile="/var/log/snmpd.log" --with-persistent-directory="/var/net-snmp"
#关于配置参数说明:
prefix:安装路径
with-default-snmp-version(3): 3(在这里版本通常有三种形式:1,2c,3)
with-sys-contact(配置该设备的联系信息): heaven(也可以是邮箱地址)
with-sys-location(该系统设备的地理位置):BEIJING P.R China
Location to write logfile (日志文件位置): /var/log/snmpd.log
Location to Write persistent(数据存储目录): /var/net-snmp
#检验是否安装成功:
root@ubuntu:/app/net-snmp-5.6.2.1# apt install snmp
root@ubuntu:/app/net-snmp-5.6.2.1# snmpget --version
NET-SNMP version: 5.6.2.1


 

 

Zabbix编译安装和Web前面配置

1、zabbix编译安装的依赖包,若报错先 apt update 一下,有的也可能是已存在的。

#安装编译套件
sudo apt-get install build-essential

#安装php前端需要的包
sudo apt-get install libmysqlclient15-dev php5-gd php5-mysql

#安装zabbix需要的包,snmp\curl\ssl\fping
sudo apt-get install snmp libsnmp-dev snmpd libcurl4-openssl-dev fping

#安装具有MySQL支持的Zabbix Server和PHP前端。 执行命令:

apt-get install zabbix-server-mysql 

apt-get install zabbix-frontend-php

#安装Zabbix agent:
apt-get install zabbix-agent

 

2、创建zabbix用户和zabbix组

groupadd zabbix

useradd -g zabbix zabbix

 

3、下载zabbix源码包,并解压


4、为Zabbix配置MySQL,我们需要创建一个新的MySQL数据库,Zabbix将存储收集的数据。

1、创建zabbix的库和账户

方法一:远程到mysql创建(会报错)

mysql -uroot -p -e"create database zabbix;"
mysql -uroot -p -e"grant all privileges on zabbix.* to zabbix@localhost identified by '111111';"

方法二:到mysql命令下创建(推荐这种方式)

mysql -uroot -p 👇
mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin; (创建一个zabbix库)
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY '111111';  (创建zabbix用户)

(会报错密码不符合规则,需要改密码规则的设置👇逐个复制走一遍)

##创建账户会报错密码简单,需要以下设置,使我们可以设置一个简单的密码:
mysql> set global validate_password_policy=0;
mysql> select @@validate_password_length; (有个密码模板显示8)
mysql> set global validate_password_length=1;
mysql> select @@validate_password_length; (密码模板显示4)
mysql> select @@validate_password_mixed_case_count; (有个模块显示1)
mysql> set global validate_password_mixed_case_count=2;
mysql> select @@validate_password_mixed_case_count; (有个模块显示2)
mysql> select @@validate_password_length; (有个模块显示6)
mysql> SHOW VARIABLES LIKE 'validate_password%';

之后就能创建一个简单的mysql账户密码:

mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY '111111';

再给zabbix账户授权:

GRANT ALL PRIVILEGES ON *.* TO 'zabbix'@"%" IDENTIFIED BY "111111";
FLUSH PRIVILEGES;

 

2、到zabbix源码解压包目录下/app/zabbix-3.4.12/database/mysql,把三个sql文件导入到mysql的zabbix库里。

mysql -D zabbix -uzabbix -p111111 zabbix< schema.sql
mysql -D zabbix -uzabbix -p111111 zabbix< images.sql
mysql -D zabbix -uzabbix -p111111 zabbix< data.sql

 若只是有警报 warning,不要理会。其实在导入了。

 

5、zabbix编译安装
cd /app/zabbix-3.4.12
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql --with-net-snmp --with-libcurl
make
make install
#--with-net-snmp是启用SNMP协议
#--with-libcurl是监控web网站用的
#--enable-server只可在服务端上使用
#其它还有IPMI等,参阅./configure --help
ps:若报错 configure: error: MySQL library not found 缺libmysqlclient15-dev

终于成功,截图留念!

make

make install。

 

 

7、修改配置文件

1、配置下/opt/php/lib/php.ini

;date.timezone ===>去掉注释在=后添加 Asia/Shanghai

max_input_time =600

max_execution_time= 600

post_max_size =32M

sudo /etc/init.d/apache2 restart

 

2、配置sudo vim /et/zabbix/zabbix_server.conf

DBUser DBPassword这两个关键字,替换为前面mysqlDB中设置的用户和密码

搜索该文件的DBPassword部分:

### Option: DBPassword                          
#      Database password. Ignored for SQLite.  
#      Comment this line if no password is used.
#                                                
# Mandatory: no                                  
# Default:                                      
# DBPassword=

取消注释DBPassword =这行并通过添加在MySQL中创建的密码进行编辑:

DBPassword=usr_strong_pwd  

接下来,查找DBHost =行并取消注释。

保存并退出。

 

8、配置PHP:

我们需要配置PHP来使用Zabbix。 在安装过程中,安装程序在/etc/zabbix中创建了一个名为apache.conf的配置文件。 打开此文件:

# $EDITOR /etc/zabbix/apache.conf

在这里,现在只需要取消注释date.timezone设置并设置正确的时区:

<IfModule mod_php7.c>
    php_value max_execution_time 300
    php_value memory_limit 128M
    php_value post_max_size 16M
    php_value upload_max_filesize 2M
    php_value max_input_time 300
    php_value always_populate_raw_post_data -1
    php_value date.timezone Asia/Shanghai
</IfModule>

保存并退出。

 

启动服务并让他们开机启动

systemctl start snmpd
systemctl enable snmpd
systemctl enable snmptrapd
systemctl start snmptrapd
systemctl enable zabbix-server
systemctl start zabbix-server
systemctl start zabbix-agent

systemctl enable zabbix-agent

总结:编译安装真心折腾人,很多报错,效果不见得多好,推荐下面的用dpkg安装法!

 

 

 

 

 

 

 

 

 

ubuntu16.04 用dpkg 安装zabbix3.4

转自:http://blog.51cto.com/viphyy/2105920

 

部署Zabbix需要LAMP环境(Linux、Apache、MySQL、PHP),所以首先要安装Apache(当然,nginx也可以)、MySQL和PHP。在Ubuntu 16.04下只有php7.0而没有php5

 

1
2
3
4
5
6
#安装apahce2
sudo apt-get install apache2 
#安装mysql
sudo apt-get install mysql-server
#安装php
sudo apt-get install php7.0 php7.0-gd libapache2-mod-php7.0   php7.0-mysql php7.0-bcmath php7.0-mbstring php7.0-xml

以上完成了基本环境的安装,接下来安装zabbix

1
2
#获取3.4zabbix安装包
wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
1
2
3
4
5
6
7
8
#使用dpkg安装3.4deb包
dpkg -i zabbix-release_3.4-1+xenial_all.deb
#更新apt
apt update
#安装zabbix web程序
apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent
#拷贝web程序到apache2
sudo cp -r /usr/share/zabbix /var/www/html/zabbix

 

建立zabbix的库表,并导入数据

1
2
3
4
5
mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
mysql> quit;



导入表结构和数据,官网的/usr/share/doc/zabbix-server-mysql*/create.sql.gz和这个都试一下。我的是官网的目录。

1
zcat /usr/share/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

 

 

之后还要修改zabbix_server.conf文件

1
sudo nano /etc/zabbix/zabbix_server.conf

 

配置参考如下,主要是修改密码

1
2
3
4
DBHost=localhost
DBName=zabbix 
DBUser=zabbix  
DBPassword=zabbix12345

完成以上配置后,重启zabbix-server

1
sudo /etc/init.d/zabbix-server restart


 把zabbix 加入开机启动

 
 
 
1
2
systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2

 

    
 
 
 
 
 
 
 
 
 
 
 

 

 
 
 
 
 
posted @ 2018-08-07 18:27  Sinsen柳  阅读(1546)  评论(0编辑  收藏  举报