news 2026/9/14 4:11:31

keep 开源告警平台部署实战:从选型到上线的完整指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
keep 开源告警平台部署实战:从选型到上线的完整指南

keep 开源告警平台部署实战:从选型到上线的完整指南

【免费下载链接】keepThe open-source AIOps and alert management platform项目地址: https://gitcode.com/GitHub_Trending/kee/keep

监控系统、CI/CD、SRE 工具各喊各的,值班同学每天在几十条告警里翻找真问题。keep 就是一个开源告警平台:把各来源的告警收进一张表,做去重、关联和自动化响应。这篇带你走完 keep 的部署:先帮你选路线,再一步步拉起服务,最后把生产部署的坑提前填掉。

两条部署路线,先做选择再动手

keep 提供 Docker Compose 和 Kubernetes(Helm Chart)两条官方部署路径,选错路线返工成本很高:

  • Docker Compose:单机、免集群,几分钟出结果。适合评估验证和内部小团队;限制是没有副本高可用,数据库默认 SQLite 单点。
  • Kubernetes + Helm:副本扩缩、Ingress 统一入口、集群 Secret 托管密钥,适合生产环境;前提是得有集群和 Ingress 控制器,运维成本高一档。

一句话决策:自己先用或团队 ≤5 人,走 Compose;要多人值班、要 SLA、要接公司域名,直接上 Helm。

Docker Compose:5 分钟拉起 keep

先克隆仓库到本地:

git clone https://gitcode.com/GitHub_Trending/kee/keep cd keep

仓库根目录的docker-compose.yml直接可跑,但默认关闭了登录(AUTH_TYPE=NO_AUTH)——本机自测无所谓,放到局域网就裸奔了。所以建议直接用仓库里带登录的docker-compose-with-auth.yml启动:

docker-compose --file docker-compose-with-auth.yml up -d

这条命令会拉起前端、后端和 WebSocket 三个容器,-d让它们后台运行。

浏览器打开http://localhost:3000,前端在 3000 端口,后端 API 在 8080 端口。账号密码都是keep,登录后第一件事进用户设置改密码,别偷懒。

数据落在运行目录的./state文件夹,挂载进容器的/state,SQLite 数据库就在里面。⚠️ 备份或迁机器时这个目录就是命根子,丢了等于告警历史清零。

想上远程 PostgreSQL 或 Vault 管密钥?改三个环境变量即可:DATABASE_CONNECTION_STRINGKEEP_JWT_SECRETSECRET_MANAGER_TYPE,完整清单见 部署配置文档。

keep Kubernetes 部署:生产只改 3 个参数

Helm 部署和 Compose 拉起的组件完全一致,这里只讲增量。先加官方仓库再安装到独立命名空间:

helm repo add keephq https://keephq.github.io/helm-charts helm install keep keephq/keep -n keep --create-namespace

Chart 会渲染出一个统一的 Ingress,按路径分流:/到前端、/v2到后端 API、/websocket到 WebSocket 服务,所以一个域名就能跑通全部组件。生产环境必须改三处 values:

  1. Ingressglobal.ingress.hosts[0].host填你的域名,配好tls证书;
  2. 认证:后端AUTH_TYPE=DBKEEP_DEFAULT_PASSWORD换成强密码;
  3. 数据库database.persistence.enabled: true,挂持久卷,重启不丢数据。

验证手段:kubectl get pods -n keep看 Pod 全绿,kubectl get ingress -n keep确认 ADDRESS 有值。暂时没域名?用kubectl port-forward svc/keep-frontend 3000:3000 -n keep临时顶替。

踩坑速查:这 4 个问题提前知道

端口 3000 被占—— 现象是docker-compose up报端口冲突。3000 常被 Grafana、其他 Next 项目占用。改法:在 compose 的 ports 里把3000:3000换成3002:3000,访问地址同步改端口。

打开页面没有登录框—— 说明你用的是默认docker-compose.yml(无认证)。要么换--file docker-compose-with-auth.yml重启,要么确保实例只在可信网络内可达。

重建环境后数据没了—— 原因是./state目录没随环境带走。解法:迁移前备份该目录,或把DATABASE_CONNECTION_STRING指到外部数据库,让数据脱离单机。

Ingress 装了但访问不通—— 九成是集群里没装 ingress-nginx,或者域名没指到 Ingress 的 ADDRESS。先kubectl get ingress -n keep确认 ADDRESS 有值,再查 DNS。

部署逻辑收尾

选型其实就一句话:Compose 管"先跑起来看看",Helm 管"跑起来不挂"。更多参数和架构细节,翻官方文档里的 Kubernetes 安装指南 和 架构说明 即可。

【免费下载链接】keepThe open-source AIOps and alert management platform项目地址: https://gitcode.com/GitHub_Trending/kee/keep

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/14 4:11:25

中文操作系统内核开发:假持久化与USB协议栈实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/14 4:10:28

SpringBoot微信小程序物业管理系统开发实践

1. 项目概述"springboot微信小程序物业缴费报修置换问卷"是一个面向现代社区物业管理的数字化解决方案。这个系统通过微信小程序作为前端入口,SpringBoot作为后端框架,实现了物业缴费、报修处理、二手置换和问卷调查四大核心功能模块。在实际社…

作者头像 李华
网站建设 2026/9/14 4:04:58

Linux远程连接工具全解析:从SSH协议到实战选型

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/14 4:04:55

轻量Java开发工作流:从IDEA优化到VS Code+Spring Boot实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/14 4:04:50

JMS与ActiveMQ核心解析及SpringBoot整合实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华