OpenSRE 生产部署运维实战:systemd、SSM 日志监控与 AMI 回滚
OpenSRE 生产部署运维实战systemd、SSM 日志监控与 AMI 回滚【免费下载链接】opensreBuild your own AI SRE agents. The open source toolkit for the AI era.项目地址: https://gitcode.com/GitHub_Trending/op/opensreOpenSRE 是一套开源的 AI SRE Agent 工具包帮你构建自己的智能运维数字员工。这篇文章带你走通 OpenSRE 的生产部署运维实战用 systemd 托管网关进程、通过 AWS SSM 远程查看运行日志、以及出问题时的 AMI 一键回滚让你从部署到止损全程有章可循 一、部署架构总览为什么是 AMI systemdOpenSRE 的 Telegram 网关采用烘焙一次、部署多次的思路烘焙 AMImake build-gateway-image启动一台临时 EC2装好 OpenSRE 后快照成自定义镜像约 5–10 分钟快速部署make deploy-gateway从该 AMI 拉起实例仅 2–3 分钟systemd 接管进程生命周期秒级止损线上出问题时指回旧的 AMI ID 重新部署即可完成回滚这种设计的好处是进程直接跑在宿主机上并注册为 systemd 服务systemctl、journalctl等标准运维命令全部可用排障零门槛。核心实现位于 infrastructure/deployment/ec2/telegram_gateway/完整部署说明见 DEPLOYMENT.md。二、部署前准备最小配置清单部署只需三个前提AWS 凭据具备 EC2 / IAM / SSM 权限、Telegram Bot Token、LLM 供应商密钥无需 Docker。复制 .env.deploy.example 并填入以下变量变量是否必填用途AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY是或用角色资源编排TELEGRAM_BOT_TOKEN是网关服务TELEGRAM_ALLOWED_USERS建议用户配对门禁LLM_PROVIDER 对应 API Key是网关服务 多开发者共享同一 AWS 账号时设置OPENSRE_STACK_SUFFIX可让资源名自动加后缀互不干扰实现逻辑在 stack.py。三、systemd 服务进程如何被稳定托管网关由一个专门的 systemd 单元文件管理opensre-gateway.service。几个值得新手关注的要点低权限运行以专用系统用户opensre启动数据目录固定在/var/lib/opensre-gateway环境变量分离通过EnvironmentFile/etc/opensre/gateway.env注入密钥环境变量文件由 SSM 在部署阶段写入而非烘焙进镜像自动自愈RestartalwaysRestartSec5进程崩溃 5 秒后自动拉起日志进 journaldStandardOutputjournal日志随系统日志轮转无需自建日志文件服务启动命令固定为opensre gateway start --foreground由 systemd 负责守护。四、SSM 远程运维免 SSH 查看日志与状态SSMSystems Manager让运维人员无需管理 SSH 密钥即可进入实例。部署完成后只需一条命令aws ssm start-session --target InstanceId进入实例后即可用标准命令巡检sudo systemctl status opensre-gateway # 查看服务状态 sudo journalctl -u opensre-gateway -f # 实时跟踪日志底层的命令下发由 ssm.py 完成它通过 SSM Run Command 向实例发送 shell 命令并轮询执行状态自动等待 SSM Agent 上线、回收 stdout/stderr超时则抛出明确错误——你在make deploy-gateway背后看到的每一步自动化都来自这里。部署成功后告警闭环也随之生效。下图是 OpenSRE 网关接入 Grafana 告警后一条 Kafka 消费延迟告警被自动解决的状态卡片五、部署验证健康检查一步到位实例启动后Web API 默认暴露在 80 端口之外、8000端口上直接 curl 即可验证存活curl http://PublicIpAddress:8000/health安全提示公网入口可用OPENSRE_WEB_API_INGRESS_CIDR收紧允许的来源网段默认放行全部。所有部署输出实例 ID、公网 IP、AMI ID都会持久化到~/.opensre/deployments/opensre-gateway.json方便后续巡检与回滚时快速取用。六、AMI 回滚故障时的最快止损方式这是烘焙一次、部署多次架构最大的红利——回滚不需要重新安装任何东西只需指回上一个镜像 IDOPENSRE_GATEWAY_AMI_IDami-previous-id make deploy-gateway两条实战建议保留历史 AMImake destroy-gateway默认只销毁实例和 IAM 资源、保留 AMI千万别随手加OPENSRE_GATEWAY_DESTROY_PURGE_AMI1那会连镜像一起注销回滚就无从谈起注意会话持久性会话状态存在实例根盘的/var/lib/opensre-gateway/.opensre/gateway/state.db重建实例后是全新磁盘。如果会话连续性重要重新部署前先备份state.db七、运维命令速查表命令作用耗时make build-gateway-image烘焙当前代码进 AMI5–10 分钟make deploy-gateway从 AMI 快速部署2–3 分钟make destroy-gateway销毁实例保留 AMI约 1 分钟make install-gateway-on-new-server免烘焙直接安装到新实例较长不想烘焙镜像install-gateway-on-new-server会通过 SSM 在全新实例上直接安装网关实现见 install_on_new_server.py适合快速体验但部署速度不如复用 AMI。小结OpenSRE 的 EC2 部署路径把安装、守护、日志、回滚四件运维要事分别交给 SSM、systemd、journald 和 AMI一条 make 命令串起全流程。掌握本文的四个环节——配置、托管、监控、回滚你就能把 AI SRE 网关稳稳跑在生产环境 ️【免费下载链接】opensreBuild your own AI SRE agents. The open source toolkit for the AI era.项目地址: https://gitcode.com/GitHub_Trending/op/opensre创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联
返回资讯列表 →