zabbix_4.0部署篇之使用nginx实现web前端

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: zabbix_4.0部署篇之使用nginx实现web前端

一.部署基础lnmp环境


a.安装lnmp软件

yum  -y  install  nginx  mariadb-server  mariadb  php-fpm  php-mysql
# systemctl start mariadb.service ##启动数据库
# mysql_secure_installation   ##安全设置数据库
.. .. 根据提示设好数据库管理密码


b. 配置

[root@mysvr1 ~]# vim  /etc/nginx/nginx.conf   
    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        index       index.php  index.html;  #//支持默认首页index.php
        include   /etc/nginx/default.d/*.conf;
        location  / {
       }
        location ~ \.php$ {  #//支持fastcgi,可参考 /etc/nginx/nginx.conf.default 文件
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;   #//注意修正这一行
        }
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }


c. 起服务

[root@mysvr1 ~]# systemctl  restart  nginx  mariadb  php-fpm   #//启动LNMP组件
[root@mysvr1 ~]# systemctl  enable  nginx  mariadb  php-fpm   #//设开机自启


d. 测试

[root@mysvr1 ~]# vim  /usr/share/nginx/html/test.php  #//创建测试网页
<?php
$link = mysql_connect('localhost','root','密码');  #//测试数据库连接
if($link) echo 'Success!!';  #//如果成功,页面显示Success!!
else echo 'Failure';  #//如果失败,页面显示Failure!!
mysql_close();  #//关闭数据库连接
phpinfo();  #//列出PHP环境信息(5.4.16)
?>


++ 从浏览器访问 地址/ ,显示默认页

++ 从浏览器访问 地址/test.php ,显示 Success!! 及PHP环境


二.部署zabbix


官网部署方式官网跳转

本文档使用的4.0版本 ,其他版本按照官网部署即可。


a. Install Zabbix repository

# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
# yum clean all

b. 安装Zabbix server,Web前端,agent

# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent

c. 创建初始数据库

前提:

确保数据库服务器已经启动并运行

在数据库主机上运行以下代码。

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


导入初始架构和数据,系统将提示您输入新创建的密码。

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

d. 为Zabbix server配置数据库

编辑配置文件 /etc/zabbix/zabbix_server.conf
DBPassword=password


e. 为Zabbix前端配置PHP

编辑配置文件 /etc/httpd/conf.d/zabbix.conf, uncomment and set the right timezone for you.
# php_value date.timezone Asia/Shanghai


f. 启动Zabbix server和agent进程

启动Zabbix server和agent进程,并为它们设置开机自启:
# systemctl restart zabbix-server zabbix-agent httpd
# systemctl enable zabbix-server zabbix-agent httpd


三.部署nginx-zabbix前端


a. 配置Nginx和PHP

调整nginx设置,使用 /usr/share/zabbix 作为Web目录

++ 增加 fastcgi 调用的缓存设置,否则安装页面在连数据时可能会无法访问

++ 网页提示 File not found,在/var/log/nginx/error.log日志提示upstream sent too big header

# vim  /etc/nginx/nginx.conf
   server {
        listen       80 default_server;
        .. ..
        root         /usr/share/zabbix;   #//设置zabbix套件Web目录
        index       index.php  index.html;  #//支持默认首页index.php
        location  / {
       }
        location ~ \.php$ {  #//支持fastcgi,可参考 /etc/nginx/nginx.conf.default 文件
            fastcgi_buffer_size 128k;  #//增加此行
            fastcgi_buffers 32 32k;  #//增加此行
            # root           html;  #//此行注释掉(用上面的/usr/share/zabbix目录)
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;
        }
   }
[root@mysvr1 ~]# systemctl  restart  nginx   #//重启nginx服务


b. 调整 php.ini 参数

修改以下配置,vim命令行模式 /键搜索关键字

[root@mysvr1 ~]# vim  /etc/php.ini
.. ..
memory_limit = 128M
post_max_size = 16M
max_input_time = 300
max_execution_time = 300
.. ..
[root@mysvr1 ~]# systemctl  restart  php-fpm   #//重启php-fpm服务


c. 配置、启动zabbix主控端服务

[root@mysvr1 ~]# vim  /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=数据库密码
[root@mysvr1 ~]# systemctl  enable  zabbix-server  --now


d. 配置、启动zabbix被控端服务

++ 如果本机也需要被监控的话
[root@mysvr1 ~]# vim  /etc/zabbix/zabbix_agent.conf
DBName=zabbix
DBUser=zabbix
DBPassword=数据库密码
[root@mysvr1 ~]# systemctl  enable  zabbix-server  --now
[root@mysvr1 ~]# systemctl  enable  zabbix-agent  --now


e. 配置zabbix网页系统

++ 浏览器访问 地址/ ,可以看到zabbix安装页面,根据提示安装

++ 如果报错,请检查前面的配置是否正确

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
2月前
|
运维 数据可视化 C++
2025 热门的 Web 化容器部署工具对比:Portainer VS Websoft9
2025年热门Web化容器部署工具对比:Portainer与Websoft9。Portainer以轻量可视化管理见长,适合技术团队运维;Websoft9则提供一站式应用部署与容器管理,内置丰富开源模板,降低中小企业部署门槛。两者各有优势,助力企业提升容器化效率。
275 1
2025 热门的 Web 化容器部署工具对比:Portainer VS Websoft9
|
3月前
|
Java 应用服务中间件 Docker
java-web部署模式概述
本文总结了现代 Web 开发中 Spring Boot HTTP 接口服务的常见部署模式,包括 Servlet 与 Reactive 模型、内置与外置容器、物理机 / 容器 / 云环境部署及单体与微服务架构,帮助开发者根据实际场景选择合适的方案。
134 25
|
3月前
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
206 0
|
5月前
|
存储 应用服务中间件 nginx
在使用Nginx之后,如何在web应用中获取用户IP以及相关原理
但总的来说,通过理解网络通信的基础知识,了解http协议以及nginx的工作方式,我们已经能在大多数情况下准确地获取用户的真实IP地址了,在调试问题或者记录日志时会起到很大的帮助。
284 37
|
5月前
|
人工智能 安全 程序员
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
|
8月前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
227 19
|
存储 人工智能 前端开发
前端大模型应用笔记(三):Vue3+Antdv+transformers+本地模型实现浏览器端侧增强搜索
本文介绍了一个纯前端实现的增强列表搜索应用,通过使用Transformer模型,实现了更智能的搜索功能,如使用“番茄”可以搜索到“西红柿”。项目基于Vue3和Ant Design Vue,使用了Xenova的bge-base-zh-v1.5模型。文章详细介绍了从环境搭建、数据准备到具体实现的全过程,并展示了实际效果和待改进点。
933 14
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
269 0
|
人工智能 自然语言处理 运维
前端大模型应用笔记(一):两个指令反过来说大模型就理解不了啦?或许该让第三者插足啦 -通过引入中间LLM预处理用户输入以提高多任务处理能力
本文探讨了在多任务处理场景下,自然语言指令解析的困境及解决方案。通过增加一个LLM解析层,将复杂的指令拆解为多个明确的步骤,明确操作类型与对象识别,处理任务依赖关系,并将自然语言转化为具体的工具命令,从而提高指令解析的准确性和执行效率。
394 6
|
SpringCloudAlibaba JavaScript 前端开发
谷粒商城笔记+踩坑(2)——分布式组件、前端基础,nacos+feign+gateway+ES6+vue脚手架
分布式组件、nacos注册配置中心、openfegin远程调用、网关gateway、ES6脚本语言规范、vue、elementUI
谷粒商城笔记+踩坑(2)——分布式组件、前端基础,nacos+feign+gateway+ES6+vue脚手架

热门文章

最新文章