晴天技术
AI7 min read

AI + DevOps:用 AI 管理服务器、CI/CD 和监控

AI + DevOps:用 AI 管理服务器、CI/CD 和监控

AI DevOps自动化运维CI/CD监控

DevOps 是 AI 能极大提效的领域。本文介绍如何用 AI 管理基础设施。

AI 在 DevOps 中的应用

1. 自动化脚本生成

Prompt:写一个 Shell 脚本,实现:
- 每天凌晨 3 点备份 MySQL 数据库
- 保留最近 7 天的备份
- 压缩备份文件
- 备份到 /backup/mysql 目录
- 发送备份结果到钉钉

AI 会生成完整的脚本,包括错误处理和日志记录。

2. Docker 配置生成

Prompt:为以下 Spring Boot 应用生成 Dockerfile:
- 多阶段构建
- 使用 JDK 17
- 优化镜像大小
- 支持 JVM 参数配置

3. Kubernetes 配置

Prompt:生成 Kubernetes Deployment 和 Service 配置:
- 应用名:user-service
- 副本数:3
- 资源限制:2 CPU, 2GB 内存
- 健康检查:/actuator/health
- 滚动更新策略

4. CI/CD Pipeline

Prompt:生成 GitHub Actions 配置:
- Java 17 + Maven
- 代码检查(Checkstyle, SpotBugs)
- 单元测试
- 构建 Docker 镜像
- 推送到 Docker Hub
- 部署到 Kubernetes

AI 命令行助手

Claude Code 做运维

# 检查服务器状态
claude > 检查当前服务器的 CPU、内存、磁盘使用情况

# 分析日志
claude > 分析 /var/log/nginx/error.log 最近的错误

# 生成脚本
claude > 写一个脚本监控磁盘使用率,超过 80% 发送告警

自然语言操作

Prompt:执行以下操作:
1. 查找占用磁盘最多的 10 个文件
2. 清理超过 30 天的日志文件
3. 压缩 /var/log 目录
4. 显示清理结果

AI 监控和告警

智能告警规则

Prompt:为以下指标生成 Prometheus 告警规则:
- CPU 使用率 > 80% 持续 5 分钟
- 内存使用率 > 90%
- 磁盘使用率 > 85%
- API 响应时间 > 3 秒
- 错误率 > 5%

日志分析

Prompt:分析以下应用日志,找出异常模式:
[粘贴日志]

重点关注:
1. 错误频率
2. 性能瓶颈
3. 异常模式
4. 资源泄漏迹象

根因分析

Prompt:我的应用出现以下问题:
- API 响应时间从 200ms 增加到 5 秒
- CPU 使用率正常
- 内存使用率从 40% 增长到 90%
- 数据库连接数正常

可能的原因和排查步骤?

AI 配置管理

Nginx 配置

Prompt:生成 Nginx 反向代理配置:
- 代理到 localhost:8080
- 支持 WebSocket
- 启用 gzip 压缩
- 配置 SSL
- 限流配置

MySQL 配置

Prompt:优化 MySQL 配置,服务器配置:
- CPU: 8 核
- 内存: 32GB
- 主要用途:Web 应用
- 数据量:100GB

给出 my.cnf 配置建议。

Redis 配置

Prompt:生成 Redis 配置:
- 最大内存:8GB
- 淘汰策略:allkeys-lru
- 持久化:RDB + AOF
- 安全配置

AI 故障排查

排查流程

Prompt:我的 Spring Boot 应用无法启动,错误日志:
[粘贴错误]

请:
1. 分析错误原因
2. 给出排查步骤
3. 提供解决方案

性能问题排查

Prompt:应用性能下降,症状:
- API 响应变慢
- 数据库查询超时
- 线程数增加
- GC 频繁

给出排查思路和命令。

AI 自动化运维

自动扩缩容

Prompt:写一个 Python 脚本,实现:
- 监控 CPU 使用率
- 超过 80% 自动扩容(调用云 API)
- 低于 30% 自动缩容
- 记录扩缩容日志

自动部署

Prompt:写一个部署脚本:
- 拉取最新代码
- 构建 Docker 镜像
- 推送到镜像仓库
- 更新 Kubernetes Deployment
- 健康检查
- 回滚机制

数据库维护

Prompt:写一个 MySQL 维护脚本:
- 优化碎片化的表
- 清理过期数据
- 更新表统计信息
- 检查表完整性
- 生成维护报告

AI + 云服务

AWS 资源管理

Prompt:生成 AWS CloudFormation 模板:
- EC2 实例
- RDS MySQL
- S3 存储
- 负载均衡
- 安全组配置

成本优化

Prompt:分析以下 AWS 资源使用情况,给出成本优化建议:
[粘贴资源使用数据]

考虑:
1. 实例规格优化
2. 预留实例
3. 存储优化
4. 网络优化

实际案例

案例 1:日志分析

# 用 AI 分析 Nginx 日志
claude > 分析 access.log,找出:
1. 访问量最高的 URL
2. 响应最慢的请求
3. 错误率最高的接口
4. 异常 IP 地址

案例 2:配置生成

# 一键生成完整配置
claude > 为我的 Spring Boot 微服务生成:
1. Dockerfile
2. docker-compose.yml
3. Kubernetes 配置
4. GitHub Actions CI/CD
5. Nginx 反向代理

案例 3:故障排查

# AI 辅助排查
claude > 生产环境 API 响应慢,帮我:
1. 检查服务器资源
2. 分析慢查询日志
3. 检查应用线程状态
4. 分析 GC 日志

工具推荐

工具用途特点
Claude Code命令行运维终端操作
ChatGPT脚本生成快速生成
Cursor配置编辑IDE 集成
Perplexity问题搜索带引用

总结

AI + DevOps 的价值:

  • 效率提升:配置和脚本生成从小时到分钟
  • 减少错误:AI 生成的配置更规范
  • 快速排查:AI 辅助故障分析
  • 知识传承:AI 记录最佳实践

关键:AI 生成 + 人工审查 + 测试验证