工具盒子 Logo
🏘首页
📦归档
🏷标签
🧰关于
登录 →
工具盒子 Logo
🏘首页 📦归档 🏷标签 🧰关于
登录
  1. 首页
  2. 运维监控平台-Phoenix

运维监控平台-Phoenix

  • 发布于 2025-12-30
  • 1 次阅读
Administrator
Administrator

运维监控平台-Phoenix

介绍:不止是监控,更是一套完整的反馈闭环

Phoenix 是一个用 Java + Layui 构建的开源监控平台,核心理念是“轻量、灵活、可视化”。它既可以部署在本地,也支持 Docker,适合中小型团队快速落地。

前端

前端采用 Layui + ECharts + jtopo,界面清爽,响应式设计,PC 和手机都能看。图表直观,资源使用趋势、服务状态、告警记录一目了然。

后端

后端基于 Spring Boot,模块化设计清晰:

  • phoenix-server:核心服务,负责数据汇聚、分析和告警;
  • phoenix-agent:代理端,用于采集服务器、Docker 等信息;
  • phoenix-client:提供 Spring Boot / Spring MVC 的集成 starter,Java 应用只需引入依赖,就能自动上报 JVM、线程池、业务埋点等数据。

功能的清单介绍

特点

  • 分布式架构:服务端、代理端、客户端可分离部署;
  • 跨平台支持:Linux、Windows、macOS 通吃;
  • 开箱即用:3 分钟 Docker 一键安装;
  • 告警通道丰富:支持邮-件、钉-钉、企业-微-信、飞-书;
  • 数据安全:传输加密,避免敏感信息泄露;
  • 可扩展性强:基于 HTTP 接口,其他语言程序也能接入。

技术架构

后端技术栈非常“Java 企业级”:

  • 核心框架:Spring Boot
  • 安全控制:Spring Security + Spring Session
  • 任务调度:Quartz + Spring Task
  • 持久层:MyBatis-Plus + Druid
  • 监控采集:Sigar、oshi、Arthas、docker-java、snmp4j

前端则走轻量路线,没有上 Vue 或 React,而是用 Layui 快速构建管理界面,对后端开发者更友好。

部署方式

支持多种部署方式:

  • Docker 一键安装(推荐):一行命令搞定;
  • Docker Compose:适合本地开发或测试环境;
  • 传统 Maven 打包:适合有定制需求的团队。

最低资源要求仅 1核 CPU / 2GB 内存 / 5GB 磁盘,轻量到能在低配云服务器上跑起来。

开源协议

Phoenix 遵循 GPL 协议 开源。这意味着你可以免费使用、学习、部署,但若用于商业产品并二次分发,需遵守 GPL 的源码公开要求。项目明确说明:不能随意修改 logo、名称或版权信息,尊重原作者的劳动成果。

即刻体验一波

想快速试试,方提供了演示地址:

也可以本地部署,只需运行:

# Docker 安装(需 Docker 20.10+)
bash -c "$(curl -fsSL https://gitee.com/monitoring-platform/phoenix/raw/master/doc/Docker/install.sh)"

部署完成后,访问 你的IP/phoenix-ui/index,用 admin/admin123 登录,就能开始配置监控项了。

我这里使用的是docker compose 文件进行部署,可以参考:

version: '3.8'

x-logconfig: &default-logconfig
  driver: "json-file"
  options:
    max-size: "10m"
    max-file: "3"

services:
  phoenix-mysql:
    container_name: phoenix-mysql
    image: crpi-4iaxdbbs1euymfiu.cn-shanghai.personal.cr.aliyuncs.com/pifeng_phoenix/mysql:1.2.6.RELEASE-CR3
    restart: unless-stopped
    ports:
      - "3308:3306"
    volumes:
      - ./mysql/data:/var/lib/mysql
    logging: *default-logconfig

  phoenix-server:
    container_name: phoenix-server
    image: crpi-4iaxdbbs1euymfiu.cn-shanghai.personal.cr.aliyuncs.com/pifeng_phoenix/phoenix-server:1.2.6.RELEASE-CR3
    restart: unless-stopped
    ports:
      - "8080:8080"   # 请根据实际应用端口调整
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./phoenix-server/liblog4phoenix:/app/liblog4phoenix
      - ./phoenix-server/config:/app/config
      - ./tmp:/tmp
    depends_on:
      - phoenix-mysql
    logging: *default-logconfig

  phoenix-ui:
    container_name: phoenix-ui
    image: crpi-4iaxdbbs1euymfiu.cn-shanghai.personal.cr.aliyuncs.com/pifeng_phoenix/phoenix-ui:1.2.6.RELEASE-CR4
    restart: unless-stopped
    ports:
      - "8081:80"    # 假设 UI 监听 80 端口,请根据实际调整
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./phoenix-ui/liblog4phoenix:/app/liblog4phoenix
      - ./phoenix-ui/config:/app/config
      - ./tmp:/tmp
    depends_on:
      - phoenix-server
    logging: *default-logconfig

业务场景:它到底能帮你做什么?

场景一:Java 应用性能一目了然

集成 phoenix-client-spring-boot-starter 后,你的 Spring Boot 应用会自动上报:

  • JVM 内存使用
  • 线程池状态
  • GC 次数与耗时
  • 类加载数量
  • 业务埋点(比如订单失败次数)

再也不用连上服务器 jstat、jstack 一通操作。

场景二:服务器资源监控不求人

部署 phoenix-agent 后,自动采集:

  • CPU 使用率、平均负载
  • 内存与磁盘使用
  • 网卡流量、进程列表
  • 甚至电池、传感器(对物理机友好)

支持 Linux、Windows、macOS,一套代理通吃。

场景三:数据库与中间件状态尽在掌握

  • MySQL:实时会话数、慢查询趋势
  • Oracle:表空间使用率
  • Redis /MongoDB:info 全量信息
  • Docker:容器状态、镜像列表、资源占用

场景四:HTTP/TCP 接口健康检查

配置一个 HTTP 地址或 TCP 端口,Phoenix 会定时探测,一旦超时或返回非 200,立刻通过钉钉或邮件告警。

想象一下:你的支付回调接口挂了,10 秒内钉钉群就收到通知,这体验,不比半夜被用户电话吵醒强?

结语

Phoenix 不是那种“高大上”的监控平台,但它足够务实:能处理 大多数团队在日常运维中遇到的真实问题,部署简单,学习成本低,扩展性也够用。

目录
  • 工具盒子公众号
Copyright © 2025 toolhz.cn All Rights Reserved
粤ICP备2025427282号
gongan beian 粤公网安备44030002008642号