云中(AWS 之外)自动修复服务器的最佳实践?

云中(AWS 之外)自动修复服务器的最佳实践?

我们正在从 AWS 迁移,在 AWS 中,我们使用 EC2 的自动扩展功能设置了高可用性系统。但是,我们不会使用它来根据资源使用情况更改池的大小,我们只是在其中一个实例发生故障或无响应时使用它来启动新实例。

如果其他云提供商没有这种自动扩展功能(我们特别关注的是 DigitalOcean,但它应该适用于任何地方),那么有哪些选项可以实现此设置?我的第一个想法是创建一个监控其他实例的实例,但随后该服务器成为单点故障。是否有任何服务或既定模式可以实现此目的,无论是自动化还是向 API 编写一些脚本,而不会创建单点故障?

答案1

我们最终编写了自己的解决方案,以某种方式模仿 EC2 中的行为。我们将其称为 healthcare.js,并在以下网址开源:https://github.com/goldfire/healthcare.js本质上,它使用 DigitalOcean API 和标签进行发现,然后使用民主.js监控哪些服务器正在运行。这允许完全分布式的自我修复系统根据传递的服务器配置终止/重建服务器。

相关内容