1 环境准备
1.1 需要的环境
CentOS 7 虚拟机两台(最少两台,分别安装Server和Agent,有条件可以准备更多)
网络环境(Yum安装需要网络)
2 开始安装
提醒:建议在安装前对虚拟机拍摄快照或者对虚拟机进行备份操作
2.1 安装前的准备
启用可选 rpms 的软件仓库
安装yum utils工具包,若不安装则会找不到命令yum-config-manager
# yum -y install yum-utils
AI 代码解读
启用yum仓库
# yum-config-manager --enable rhel-7-server-optional-rpms
AI 代码解读
2.2 安装php
使用yum直接安装php,php-gd,php-mysql,php-fpm php-mbstring php-xml
# yum install php php-gd php-mysql php-fpm
AI 代码解读
配置php
编辑/etc目录下php.ini文件
post_max_size = 16M max_execution_time = 300 max_input_time = 300 date.timezone = "Asia/Shanghai"
AI 代码解读
开机启动php-fpm
# systemctl enable php-fpm.service
AI 代码解读
启动php-fpm
# systemctl start php-fpm
AI 代码解读
2.3 安装Mysql/mariadb
对于Zabbix Server和Proxy来说,由于需要将数据储存起来,所以需要在安装Zabbix Server和Proxy的服务器上安装Mysql数据库。(由于CentOS 7 默认使用Mariadb替代Mysql,所以此处使用Mariadb。同时为了与Mysql的兼容性,所以使用Mariadb5.5版本)
安装mariadb使用以下命令
# yum install -y mariadb-server
AI 代码解读
设置开机启动并启动mariadb
# systemctl enable mariadb # systemctl start mariadb
AI 代码解读
在命令行输入以下命令进入mariadb
# mysql -uroot -p
AI 代码解读
注:密码不用输入直接回车就行
输入以下命令修改登录密码
# SET password for 'root'@'localhost'=password('newpassword');
AI 代码解读
至此数据库部分安装完成
2.4 安装nginx
添加Nginx的yum源
在/etc/yum.repo.d下新增文件nginx.repo
在文件中写入以下代码:
[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1
AI 代码解读
保存并退出
安装nginx
使用以下代码安装nginx
# yum install nginx
AI 代码解读
如果出现nginx.pid文件找不到的情况下使用
# nginx -c /etc/nginx/nginx.conf
AI 代码解读
重新指定配置文件即可
设置开机启动并启动nginx
# systemctl enable nginx # systemctl start nginx
AI 代码解读
2.5 开启防火墙80端口
在命令行输入以下命令来开启80端口
# firewall-cmd --zone=public --add-port=80/tcp --permanent
AI 代码解读
意义解释:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
重启防护墙生效
# systemctl restart firewalld.server
AI 代码解读
2.6 关闭SELinux
编辑/etc/selinux下的config文件
SELINUX=disabled
AI 代码解读
重启生效
2.7 测试nginx 是否安装成功
浏览器访问以下地址
http://{nginx主机的ip}:80
AI 代码解读
若出现Welcome to nginx! 则说明nginx安装成功
2.8 配置Nginx
编辑/etc/nginx目录下nginx.conf文件
去掉
的注释gzip on
AI 代码解读
编辑/etc/nginx/conf.d目录下的default.conf文件
修改
模块中的路径和首页未zabbix的路径为:location /{ ... ... ... }
AI 代码解读
root /usr/share/zabbix; index index.php;
AI 代码解读
取消
location ~ \.php${ ... ... ... }
AI 代码解读
模块的注释,并且修改
Fastcgi_param SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name;
AI 代码解读
添加(增大nginx 缓存,否则web页面会出错)
fastcgi_buffers 8 128k; fastcgi_buffer_size 128k;
AI 代码解读
3 安装Zabbix
3.1 添加 Zabbix 软件仓库
安装软件仓库配置包,这个包包含了 yum(软件包管理器)的配置文件
# rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
AI 代码解读
3.2 安装Zabbix Server
安装zabbix server
# yum install zabbix-server-mysql
AI 代码解读
创建数据库
# mysql -uroot -p # create database zabbix character set utf8 collate utf8_bin; # grant all privileges on zabbix.* to zabbix@localhost identified by '<password>'; # quit;
AI 代码解读
导入数据
使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p Zabbix
AI 代码解读
(如果没有这个文件夹可以尝试重复输入一遍yum install zabbix-server-mysql)
配置Zabbix Server所使用的数据库
编辑/etc/zabbix/zabbix_server.conf文件以下内容
DBHost=localhost 数据库地址 DBName=zabbix 数据库名字 DBUser=zabbix 数据库用户名 DBPassword=<password> 数据库用户密码 DBPort=3306 数据库端口
AI 代码解读
开机启动Zabbix Server进程并启动zabbix server
# systemctl enable zabbix-server # systemctl start zabbix-server
AI 代码解读
3.3 安装Zabbix 前端
# yum install zabbix-web-mysql
AI 代码解读
配置zabbix前端/etc/httpd/conf.d/zabbix.conf
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 Aisa/Shanghai
AI 代码解读
3.4 测试zabbix
访问nginx配置的虚拟主机地址,若出现以下画面则server配置成功

3.5 安装Zabbix Agent
安装Zabbix Agent
(安装前请先在主机上安装软件仓库配置包,详见3.1,同时关闭selinx和防火墙或允许端口通过,详见2.5和2.6)
# yum install zabbix-agent
AI 代码解读
配置Zabbix Agent
修改/etc/zabbix下zabbix_agentd.conf文件
Server=Server端IP地址 ServerActive=Server端IP地址 Hostname=主机名(此名称非常重要,请勿乱填,因为后面在web上添加主机时需要这个名字)
AI 代码解读
设置Zabbix Agent 开机启动并启动
# systemctl enable zabbix-agent # systemctl start zabbix-agent
AI 代码解读
如果有什么错误的地方,还希望大家在评论中指出,感谢观看!!!!