StackStorm2.7—1. StackStorm概述
1 StackStorm概述
https://docs.stackstorm.com/overview.html,
由JimChen翻译,QQ群:138132636(StackStorm中国用户)
1.1 About关于StackStorm
StackStorm是跨服务和工具的集成和自动化平台。它结合现有的基础设施和应用程序环境,这样您可以更容易地自动化该环境。特别注重对事件响应中采用的动作。
StackStorm帮助自动化常见的操作模式。一些应用例子如下:
- 便于故障排除—将会捕获到系统故障的各种触发,包括Nagios、Sensu、New Relic和其他监视系统,对物理节点、OpenStack或Amazon实例以及应用程序组件进行一系列诊断检查,并将结果发布到如HipChat或JIRA这种共享通信上下文中。
- 自动修复-识别和验证OpenStack计算节点上的硬件故障,正确地疏散实例,并向管理员发送电子邮件,说明潜在可能的停机时间,但如果有什么问题—将冻结工作流并调用PagerTask唤醒人工干预。
- 持续部署——与Jenkins一起进行持续构建和测试,提供一个新的AWS集群,使用负载均衡器开启一些流量,并根据NewRelic应用程序的性能数据进行自动地前滚或回滚。
- StackStorm帮助您按照规则和工作流或操作编排这些操作模式和其他操作模式。这些规则和工作流以代码的方式存储在StackStorm平台中,这意味着它们支持与您现在用于代码开发时使用相同的协作方法。它们可以与更广泛的开源社区共享,例如通过StackStorm社区。
1.2 工作原理
图1-1 StackStorm架构图
StackStorm在环境中插入一系列可扩展适配器,包括sensor(传感器)和action等。
- Sensors(传感器)是一些集成的Python插件,用于接收或监视事件的入站或出站。当来自外部系统的事件发生并由传感器处理时,将向StackStorm系统发出一个触发器。
- Triggers(触发器)是外部事件的StackStorm代理。有通用触发器(例如计时器、web挂钩)和集成触发器(例如Sensu警报、JIRA问题更新)。也可以通过编写传感器插件来定义新的触发器类型。
- Actions(动作)是StackStorm出站的集成部分。有通用动作(ssh、REST调用)、集成动作(OpenStack、Docker、Puppet)或自定义动作。通过添加几行元数据,动作可以将Python插件或任何脚本集成到StackStorm中。Action可以由用户通过CLI或API直接调用,也可以作为规则和工作流的一部分使用和调用。
- Rules (规则)将trigger映射到action (或工作流),按照匹配标准,把trigger有效负载映射到action的输入。
- Workflows(工作流)将动作整合到“uber-action”中,定义顺序、转换条件和传递数据。大多数自动化操作不止一步,因此需要多个操作。就像“原子”操作一样的工作流可以保存在Action库中,可以手动调用,也可以由规则触发。
- Pack(包)是部署的内容单元。它们通过分组集成(触发器和操作)和自动化(规则和工作流),简化了StackStorm可插拔内容的管理和分享。StackStorm Exchange上有越来越多的包可用。用户可以创建自己的包,然后在Gistub上分享它们,也可以向StackStorm
Exchange提交。
[if !supportLists]q [endif]Audit trail(审计跟踪)是指行动的手动或自动执行情况,触发器上下文和执行结果的全部细节都记录和存储下来。它也保存在审计日志中,可以是外部日志记录和分析工具集成:LogSTASH、Splunk、STATSD、SysLog等。
StackStorm是一个具有模块化架构的服务。它由松散耦合的服务组件组成,通过消息总线进行通信,并可以水平方式进行扩展,在不同规模上实现自动交付。StackStorm既有WebUI、CLI客户端,当然也有完整的REST API。还提供与Python绑定的客户端,便于开发人员使用。
StackStorm是一种新型的、正在蓬勃发展的新产品。我们非常渴望与社会各界接触,听取您的反馈意见,并完善我们的产品方向。当然也非常欢迎捐款!
1.3 What’s Next?下一章节内容
- 按照Installation进行安装、运行
- 跟随Quick Start指导,构建一个简单的自动化
- 探索StackStorm社区
提问?问题?建议?都很欢迎!
- 支持论坛(Support Forum)
- Slack社区频道:stackstorm-community.slack.com (注册 这里)
- 支持邮箱:support@stackstorm.com
https://docs.stackstorm.com/overview.html,
由JimChen翻译,QQ群:138132636(StackStorm中国用户)