## 新增K8s配置文件 **Prometheus Operator集成**: - servicemonitor.yml: 自动发现ljwx-boot服务,30秒采集间隔 - prometheusrule.yml: 18条告警规则,覆盖P0-3/P0-4所有场景 - grafana-dashboard-configmap.yml: Dashboard导入配置 **应用配置**: - configmap.yml: 添加P0-3 Redis去重和P0-4缓存失效配置 - application.yml: 更新P0功能配置和Actuator暴露设置 **部署工具**: - deploy-p0.sh: 一键部署脚本,支持dry-run和健康检查 - P0-K8S-DEPLOYMENT.md: 完整K8s部署指南(18KB) ## Docker Compose开发环境 **混合模式配置**: - docker-compose-p0-dev.yml: 基础设施Docker化(MySQL/Redis/Prometheus/Grafana) - prometheus-p0-dev.yml: 使用host.docker.internal访问本地ljwx-boot - .env.p0: 环境变量配置模板 - verify-p0-dev.sh: 开发环境验证脚本 **完整模式配置**: - docker-compose-p0.yml: 包含ljwx-boot在内的完整Docker部署 - prometheus-p0.yml: Docker网络内部服务发现 ## 文档 **快速开始指南**: - K8S-P0-QUICK-START.md: K8s部署5分钟快速指南 - P0-DEV-QUICK-START.md: 本地开发环境快速启动指南 **监控Dashboard**: - grafana-dashboard-p0.json: 修复Dashboard JSON格式问题 ## 核心功能 ✅ **P0-3 Redis去重**: 分布式去重,24小时TTL ✅ **P0-4 缓存失效**: 事件驱动自动失效,1秒延迟 ✅ **完整监控**: 14个Grafana面板,18条告警规则 ✅ **多环境支持**: 本地开发、Docker Compose、K8s生产环境 ## 告警规则(6组18条) 1. 服务可用性 (2条): 服务不可用、高错误率 2. P0-3 Redis去重 (3条): Redis连接失败、内存告警、Key激增 3. P0-4 缓存失效 (3条): 功能禁用、失败率高、响应慢 4. JVM资源 (2条): 内存不足、GC时间长 5. 数据库连接池 (2条): 连接池耗尽、无空闲连接 6. 应用性能 (2条): API响应慢、并发数高 7. Pod资源 (3条): CPU/内存高、频繁重启 ## 部署方式 **K8s生产环境**: ```bash cd ljwx-boot/k8s ./deploy-p0.sh ``` **本地开发环境**: ```bash docker-compose -f docker-compose-p0-dev.yml up -d ./ljwx-boot/run-local.sh ``` 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
74 lines
2.0 KiB
Bash
74 lines
2.0 KiB
Bash
# ==============================================
|
|
# P0 监控完整环境配置文件
|
|
# 用于 docker-compose-p0.yml
|
|
# ==============================================
|
|
|
|
# ----------------------------------------------
|
|
# 基础设施端口配置
|
|
# ----------------------------------------------
|
|
MYSQL_PORT=3306
|
|
REDIS_PORT=6379
|
|
REDIS_EXPORTER_PORT=9121
|
|
|
|
# ----------------------------------------------
|
|
# 业务应用端口配置
|
|
# ----------------------------------------------
|
|
LJWX_BOOT_PORT=9998
|
|
LJWX_ADMIN_PORT=5173
|
|
|
|
# ----------------------------------------------
|
|
# 监控系统端口配置
|
|
# ----------------------------------------------
|
|
PROMETHEUS_PORT=9090
|
|
GRAFANA_PORT=3000
|
|
|
|
# ----------------------------------------------
|
|
# MySQL 数据库配置
|
|
# ----------------------------------------------
|
|
MYSQL_ROOT_PASSWORD=123456
|
|
MYSQL_DATABASE=test
|
|
MYSQL_USER=root
|
|
MYSQL_PASSWORD=123456
|
|
|
|
# ----------------------------------------------
|
|
# Redis 配置
|
|
# ----------------------------------------------
|
|
REDIS_PASSWORD=123456
|
|
REDIS_DATABASE=1
|
|
REDIS_MAXMEMORY=2gb
|
|
|
|
# ----------------------------------------------
|
|
# ljwx-boot 应用配置
|
|
# ----------------------------------------------
|
|
SPRING_PROFILES_ACTIVE=prod
|
|
|
|
# P0-3 Redis去重配置
|
|
HEALTH_DEDUP_USE_REDIS=true
|
|
HEALTH_DEDUP_TTL_HOURS=24
|
|
HEALTH_DEDUP_USE_CONTENT_HASH=true
|
|
|
|
# P0-4 缓存失效配置
|
|
HEALTH_CACHE_AUTO_INVALIDATION=true
|
|
HEALTH_CACHE_INVALIDATION_DELAY_MS=1000
|
|
|
|
# Prometheus Metrics
|
|
MANAGEMENT_ENDPOINTS_WEB_EXPOSURE_INCLUDE=*
|
|
MANAGEMENT_METRICS_EXPORT_PROMETHEUS_ENABLED=true
|
|
|
|
# ----------------------------------------------
|
|
# ljwx-admin 前端配置
|
|
# ----------------------------------------------
|
|
NODE_ENV=production
|
|
VITE_USER_NODE_ENV=production
|
|
|
|
# ----------------------------------------------
|
|
# Grafana 配置
|
|
# ----------------------------------------------
|
|
GRAFANA_ADMIN_USER=admin
|
|
GRAFANA_ADMIN_PASSWORD=admin123
|
|
|
|
# ----------------------------------------------
|
|
# 时区配置
|
|
# ----------------------------------------------
|
|
TZ=Asia/Shanghai
|