昨天一位技术大牛问我关于在运维过程中对于故障自适应有什么解决方案吗?我简单地回答了一下,自我感觉不是很完美,后来他和我分享了stackstorm,让我了解一下。我回到家立刻查看一下,发现stackstorm在故障自适应方面做得非常的成熟,设计思路也非常棒。昨晚一口气把官网的资料看了一大半。后来考虑到官网文档都是英文,为了后期和国内的朋友分享,所以把一些主要的部分简单翻译一下(个人建议,要是能直接阅读官网,可能讲得更清楚,官网请点击此处)。
一、什么是stackstorm?
一句话概况:stackstorm是一个事件驱动的自动化引擎
官方解释:StackStorm是一个功能强大的开源自动化平台,可将所有应用程序,服务和工作流程连接起来。 它具有可扩展性,灵活性, 设计中包含了对DevOps和ChatOps的热爱。它可以将您现有的基础架构和应用程序环境联系在一起,以便您可以更轻松地自动化操作该环境。它特别专注于针对事件采取行动。
主要用途:
- 便利的故障排除 - 触发由Nagios,Sensu,New Relic和其他监控系统捕获的系统故障,在物理节点、OpenStack或Amazon实例和应用程序组件上运行一系列诊断检查,并将结果发布到共享通信环境中,如HipChat或JIRA。
- 自动修复 - 识别和验证OpenStack计算节点上的硬件故障,正确排空实例并向管理员发送关于潜在停机时间的电子邮件,但如果出现任何问题 - 冻结工作流程并呼叫PagerDuty