一、centos7源码安装zabbix3.x
1、安装前环境搭建
下载最新的yum源
#wget -P /etc/yum.repos.d http://mirrors.aliyun.com/repo/Centos-7.repo
安装所需的组件:
#yum install -y php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp net-snmp-devel perl-DBI gcc-c++ libevent-devel
2、搭建lamp环境
#yum -y install mariadb mariadb-server php php-mysql httpd mariadb-devel
#在centos7里面,MySQL被改为mariabd
(1)配置MySQL数据库
# systemctl start mariadb.service 启动数据库
# systemctl enable mariadb.service 开机自启
接下来初始化数据库,并配置root用户密码,默认为空,其他选择yes或no的选项都选择yes
# mysql_secure_installation
(2)创建zabbix数据库以及用户和密码
# mysql -uroot -p123456 -e "create database zabbix default character set utf8 collate utf8_bin;" 创建zabbix数据库并设置字符集
# mysql -uroot -p123456 -e "grant all on zabbix.* to zabbix@'%' identified by 'zabbix';" 授权
(3)启动http
# systemctl start httpd.service
# systemctl enable httpd.service
(4)php配置
# vim /etc/php.ini
修改如下地方:
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
upload_max_filesize = 2M
date.timezone = Asia/Shanghai
post_max_size = 28M
到此lamp安装完成!!!
3、安装zabbix
https://www.zabbix.com/download 下载zabbix链接
# mkdir /usr/local/zabbix
(1) 解压到指定目录
# tar -zxvf zabbix-3.4.5.tar.gz -C /usr/local/zabbix
(2)导入数据到zabbix数据库
# cd /usr/local/zabbix/zabbix-3.4.5/database/mysql/
导入数据时必须按顺序,否则会出错
也可以进入数据库里面进行导入,列如:
(3)添加用户zabbix
# groupadd zabbix
# useradd zabbix -g zabbix -s /bin/false
(4)编译安装
#cd /usr/local/zabbix/zabbix-3.4.5
#./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/bin/mysql_config --enable-net-snmp --with-libcurl
#make && make install
(5)创建软连接
# mkdir -p /etc/zabbix
# cp -r zabbix-3.4.5/conf/* /etc/zabbix/
# chown -R zabbix:zabbix /etc/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/
(6)创建服务
#cp /usr/local/zabbix/zabbix-3.4.5/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server
#cp /usr/local/zabbix/zabbix-3.4.5/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd
(7)修改配置文件
#vim /etc/init.d/zabbix_server
上图指定zabbix的安装目录
网页配置:
# vim /var/www/html/zabbix/conf/zabbix.conf.php
修改zabbix_server.conf
# vim /etc/zabbix/zabbix_server.conf
修改 DBhost DBname DBuser DBpassword
修改zabbix_agente配置文件
Server: 这里输入服务器的ip地址(被动模式)
Serveracitive:这里输入服务端的ip地址(主动模式)
Hostname:这里的主机名必须要与zabbix web界面主机名设置的名字一样。
当然也可以在该配置文件指定DBName,DBPassword,DBUser,DBPort
Zabbix更换字体:
在Windows下找到C:WindowsFonts字体,,把字体拷贝到服务器,覆盖/usr/local/zabbix/zabbix-3.4.5/frontends/php/fonts这下面的文件
默认登录的用户名和密码 Admin/zabbix
二、yum方式安装
1、配置zabbixyum源
[root@test ~ 19:25:32]#cat /etc/yum.repos.d/zabbix.repo [zabbix] name=zabbix baseurl=http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/ enabled=1 gpgcheck=0
2、安装zabbix server 同时也吧zabbix-get工具安装了
root@test ~ 19:25:35]#yum install zabbix-server-mysql zabbix-get
a、查看zabbix-server安装路径
[root@manager1 zabbix_agentd.d 19:28:25]#rpm -ql zabbix-server-mysql /etc/logrotate.d/zabbix-server /etc/zabbix/zabbix_server.conf /usr/lib/systemd/system/zabbix-server.service /usr/lib/tmpfiles.d/zabbix-server.conf /usr/lib/zabbix/alertscripts /usr/lib/zabbix/externalscripts /usr/sbin/zabbix_server_mysql /usr/share/doc/zabbix-server-mysql-3.2.11 /usr/share/doc/zabbix-server-mysql-3.2.11/AUTHORS /usr/share/doc/zabbix-server-mysql-3.2.11/COPYING /usr/share/doc/zabbix-server-mysql-3.2.11/ChangeLog /usr/share/doc/zabbix-server-mysql-3.2.11/NEWS /usr/share/doc/zabbix-server-mysql-3.2.11/README /usr/share/doc/zabbix-server-mysql-3.2.11/create.sql.gz # 注意这里,这是sql数据文件 /usr/share/man/man8/zabbix_server.8.gz /var/log/zabbix /var/run/zabbix
b、创建zabbix数据库(假设已经安装好数据库)
# mysql -uroot -p123456 -e "create database zabbix default character set utf8 collate utf8_bin;" 创建zabbix数据库并设置字符集 # mysql -uroot -p123456 -e "grant all on zabbix.* to zabbix@'%' identified by 'zabbix';" 授权
c、导入sql语句到zabbix数据库
# gunzip /usr/share/doc/zabbix-server-mysql-3.2.11/create.sql.gz
# mysql -uroot -p123456 -D zabbix < create.sql
d、配置zabbix server文件,并且启动
修改如下: DBName=zabbix DBUser=zabbix DBPassword=zabbix DBPort=3306
e、查看是否启动成功:如果成功监听10051端口,表示启动成功。
3、安装zabbix web
# yum install -y php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp net-snmp-devel perl-DBI gcc-c++ libevent-devel
# yum install zabbix-web zabbix-web-mysql
a、查看安装路径
[root@manager1 ~ 19:35:57]#rpm -ql zabbix-web /etc/httpd/conf.d/zabbix.conf /etc/zabbix/web /etc/zabbix/web/maintenance.inc.php /etc/zabbix/web/zabbix.conf.php /usr/share/doc/zabbix-web-3.2.11 /usr/share/doc/zabbix-web-3.2.11/AUTHORS /usr/share/doc/zabbix-web-3.2.11/COPYING /usr/share/doc/zabbix-web-3.2.11/ChangeLog /usr/share/doc/zabbix-web-3.2.11/NEWS /usr/share/doc/zabbix-web-3.2.11/README
b、修改 /etc/httpd/conf.d/zabbix.conf
添加时区,接下来就可以在浏览器输入http://IP地址/zabbix对zabbix进行初始化了,如果界面有任何failed,请修改对应的值
三、通过docker安装zabbix-server
这里假设docker已经安装
1、使用docker下载对应的镜像文件
a、docker pull zabbix/zabbix-server-mysql 下载zabbix-server镜像文件
b、docker pull zabbix/zabbix-web-nginx-mysql 下载zabbix-web
c、docker pull mysql:5.7
2、安装mysql
docker run -itd --restart=always --privileged=true #注意,我在ubuntu16.04安装时,添加了--privileged=true导致容器不能启动,最后删掉改行就ok -p 3307:3306 -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e MYSQL_ROOT_PASSWORD=zabbix -v /home/core/mysql/data:/var/lib/mysql -v /home/core/mysql/conf.d/:/etc/mysql/conf.d --name mysql-server mysql:5.7 --character-set-server=utf8 --collation-server=utf8_bin
3、安装zabbix-server
docker run -itd --name=zabbix-server --restart=always --privileged=true -v /home/core/zabbix/config/:/etc/zabbix/ -v /home/core/zabbix/alertscripts/:/usr/lib/zabbix/alertscripts -v /home/core/zabbix/externalscripts/:/usr/lib/zabbix/externalscripts -e DB_SERVER_HOST="mysql-server" #指定mysql容器的名字 -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e MYSQL_ROOT_PASSWORD="zabbix" --link mysql-server:mysql -p 10051:10051 zabbix/zabbix-server-mysql
4、安装zabbix-web
docker run -itd --restart=always --privileged=true --name zabbix-web -e DB_SERVER_HOST="mysql-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e MYSQL_ROOT_PASSWORD="zabbix" -e PHP_TZ="Asia/Shanghai" --link mysql-server:mysql --link zabbix-server:zabbix-server -p 8080:80 -d zabbix/zabbix-web-nginx-mysql:latest
5、安装zabbix-agent
docker run --rm --name zabbix-agent -e ZBX_HOSTNAME="Zabbix Server" -e ZBX_SERVER_HOST="192.168.4.220" -p 10050:10050 -d zabbix/zabbix-agent