英文原文正文为项目原始 README(英文),本站后续会翻译为中文,当前仅剔除图片与无关章节并统一排版。
StackStorm 是一个用于跨服务和工具的集成与自动化的平台,可根据事件采取行动。了解更多信息,请访问 www.stackstorm.com。
摘要
-
安装 获取一台符合系统要求的干净的64位Linux主机。运行安装脚本:
curl -sSL https://stackstorm.com/packages/install.sh | bash -s -- --user=st2admin --password=Ch@ngeMe - 阅读文档: https://docs.stackstorm.com/index.html
- 有疑问?查看 forum.stackstorm.com
- 或者加入我们的 Slack 社区
StackStorm 概述
关于
StackStorm 是一个跨服务和工具的集成与自动化平台。它将您的现有基础设施和应用环境连接在一起,使您能够更轻松地自动化该环境——特别是专注于对事件做出响应的操作。
StackStorm 有助于自动化常见的操作模式。一些示例如下:
- 便捷的故障排除 - 在 Nagios、Sensu、New Relic 等监控捕捉到系统故障时触发,对物理节点、OpenStack 或 Amazon 实例及应用组件运行一系列诊断检查,并将结果发布到共享通信环境,如 Slack 或 JIRA。
- 自动修复 - 在 OpenStack 计算节点上识别并验证硬件故障,正确地疏散实例并通过电子邮件通知虚拟机可能的停机,但如果出现问题——冻结工作流并调用 PagerDuty 唤醒人工处理。
- 持续部署 - 使用 Jenkins 构建和测试,配置新的 AWS 集群,通过负载均衡器开启部分流量,并根据 NewRelic 应用性能数据进行升级或回滚。
StackStorm 帮助您将这些和其他操作模式组合为规则、工作流或动作;这些规则和工作流——即 StackStorm 平台中的内容——以代码形式存储,这意味着它们支持您目前用于代码开发的协作方式,并可以通过 StackStorm Exchange 与更广泛的开源社区共享。
谁在使用 StackStorm?
查看已知 StackStorm ADOPTERS.md 和 思想领袖 的列表。
工作原理
StackStorm 架构
StackStorm 通过一套可扩展的适配器接入环境:传感器和动作。
-
传感器 是用于入站集成的 Python 插件,监控来自外部系统的事件,当事件发生时触发 StackStorm 触发器。
-
触发器 是 StackStorm 对外部事件的表示。有通用触发器(例如定时器、Webhooks)和集成触发器(例如 Sensu 警报、JIRA 问题更新)。可以通过编写传感器插件定义新触发器类型。
-
动作 是 StackStorm 的出站集成。有通用动作(SSH、HTTP 请求)、集成动作(OpenStack、Docker、Puppet),或自定义动作。动作可以是 Python 插件,也可以是任何脚本,通过添加几行元数据导入 StackStorm。动作可以由用户通过 CLI、API 或 Web UI 直接调用,也可以作为自动化的一部分——规则和工作流被使用和调用。
-
规则 将触发器映射到动作(或工作流),应用匹配条件,并将触发器的有效负载数据映射到动作输入。
-
工作流 将动作拼接成“超动作”,定义顺序、转换条件,并将上下文数据从一个动作传递到下一个动作。大多数自动化是多步骤的(例如:不止一个动作)。工作流,就像“原子”动作一样,可在动作库中使用,并可以手动调用或通过规则触发。
-
包 是内容部署的单元。它们通过将集成(触发器和动作)和自动化(规则和工作流)分组来简化 StackStorm 可插拔内容的管理和共享。越来越多的包可以在 StackStorm Exchange 上获取。用户可以创建自己的包,在 GitHub 上共享,或者提交到 StackStorm Exchange 组织。
-
审计跟踪 是动作执行的历史列表,无论是手动还是自动执行,并记录和存储触发上下文和执行结果的完整细节。它也会被捕捉在审计日志中,以便与外部日志和分析工具集成:LogStash、Splunk、statsd 或 syslog。
StackStorm 是一个具有模块化架构的服务。它由松散耦合的微服务组件组成,这些组件通过消息总线通信,并水平扩展以实现大规模自动化。StackStorm 提供完整的 REST API、CLI 客户端和 Web UI,供管理员和用户本地或远程操作,以及方便开发者使用的 Python 客户端绑定。
StackStorm 是一个成熟的项目,仍由广泛的社区积极开发。
文档
更多文档,包括安装流程、操作/规则/工作流创建,以及如何设置和使用触发器/传感器,可在 https://docs.stackstorm.com 查阅。
黑客/贡献
要设置开发环境并从源代码运行 StackStorm,请按照这些说明操作。
有关如何贡献、我们的样式指南、编码规范等信息,请访问我们文档中的开发部分。
安全
如果您认为发现了安全问题或漏洞,请将其描述发送到我们的私人邮件列表 info [at] stackstorm [dot] com。
一旦您提交了问题,您应该会在 48 小时或更短时间内收到我们团队成员的确认。如果需要进一步的操作,您可能会收到额外的后续邮件。
欲了解更多信息,请参阅 https://docs.stackstorm.com/latest/security.html
- 本文标题:st2 - StackStorm(也称为“运维版 IFTTT”)
- 本文链接:https://cn121.com/automation/stackstorm-st2.html
- 原项目:StackStorm/st2 版权归原作者 StackStorm 及贡献者所有
- 收录信息:本站于 2026-10-10 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
- 开源协议:收录时本项目采用 Apache-2.0(查看 LICENSE 原文),本站转载其原始文档(未改动文字,仅剔除图片与无关章节);使用、修改、分发请以该仓库 LICENSE 原文为准。本站对原文仅作排版与图片地址适配, 并保留原项目的 NOTICE 与署名要求。
- 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 StackStorm/st2。
- 内容说明:本页正文为原项目 README 原文(英文),本站后续会翻译为中文(当前尚未译出,仅将二级标题译为中文,便于按栏目定位;标题原文可在下方原仓库中查看),仅剔除了图片与赞助等无关章节、并把相对链接改为绝对地址;页首简介为机器翻译自仓库描述。
- 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
- 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。