【问题标题】:openstack overkill for HA website stack?HA网站堆栈的openstack矫枉过正?
【发布时间】:2013-08-01 04:16:00
【问题描述】:

一些背景: 我正在建立一个非常复杂的网站(就使用的堆栈而言)。其他一些较小的组件包括:

  • 弹性搜索
  • Redis
  • ZeroMQ
  • 沙发床
  • 重新思考数据库
  • 通过 Nginx 的流量 -> 节点

我们的目的是运行一个高可用的网站,但同时又非常精简(和低成本)。

我正在考虑的当前拓扑:

  • 2 个网络服务器采用 DNS 负载平衡的主动/主动配置。 (Nginx、静态资产服务等+负载均衡到第二层:
  • 2 个应用服务器处于活动/活动状态。像 Elasticsearch 这样的大多数组件都可以自己进行分片/复制,因此设置起来应该不那么难(手指交叉)
  • 复制 Redis 中的会话处理

当然,我希望在出现问题时进行监控和警报,理想情况下,系统应该能够自动处理故障。诸如:将 Redis 从 Slave 提升为 Master,或者甚至初始化一个新的 ec2-instance,如果我要在 Ec2 上的话。

但是,我想摆脱特定托管服务提供商的束缚。我相信(如果错了请纠正)是 Openstack 的用武之地。

是否正确: - openstack允许我控制我的网站堆栈的整个生命周期(覆盖多个盒子/虚拟机?) - 它是否允许我(当然是在配置上工作)启动实例、监控、在出现问题时发出警报、在这些场景中采取适当的措施等?

或者说 Openstack 是完全不适合这项工作的工具?还有什么更适合作为我整个网站之上的“管理层”的吗?

谢谢

【问题讨论】:

  • OpenStack nova 被设计为桉树的替代品。它最初由 NASA 编写,当时由于政策和法律限制,它无法使用 AWS。

标签: monitoring provisioning high-availability openstack


【解决方案1】:

OpenStack 不是 VMWare ESX。这不是一个非常好的直接简单的虚拟机托管环境。如果您想要的是一种轻松管理虚拟机的方法,我可能会建议 Ganeti。它甚至具有虚拟机的 HA 故障转移。在两个物理主机环境中,这可能是要走的路。

OpenStack 为您提供了 Ganeti 不会提供的 RESTful API。它有 AWS 兼容的 API,但它有更好的 OpenStack API。如果你想自动化弹性或可愈合性,这是巨大的。能够使用现有的客户端 API 在 python 中进行链接,并且只需编写脚本以根据需要启动实例,这就是 joe DevOps 的全部意义所在。

所以我想这取决于您的承诺水平和您的需求。对于 2 台物理机器,OpenStack 可能不是最好的解决方案。但是,当您的应用程序和虚拟机数量超出您的手动管理范围时,openstack 将帮助您编写代码,让您的数据中心随着旋律翩翩起舞。

【讨论】:

  • 很好的答案,谢谢。首先试水,而不是花很多时间在特定的事情上。所以可能会让 Openstack 离开一段时间。 Ganeti 听起来确实很有趣。老实说,我非常希望在半年内出现一些基于 docker.io 的自动缩放/自动故障转移的东西,可以满足我的所有需求。我不会感到太惊讶,因为 Docker 在过去几个月中获得了令人难以置信的 蒸汽。谢谢。
  • docker 是一个很棒的解决方案,作为一个选项完全值得一看。哎呀,人们已经在 docker 上构建了 openstack 支持基础设施。好主意!
  • fyi docker.io + mesos open issue 这会很棒:github.com/dotcloud/docker/issues/410
猜你喜欢
  • 2014-10-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-17
  • 2013-01-10
  • 2014-11-18
  • 2014-08-09
相关资源
最近更新 更多