我有兴趣使用Rackspace Cloud Servers API构build一个dynamic可扩展的托pipe服务。 Cloud Servers API允许我以编程方式添加和删除服务器实例。
在大多数情况下,只有一台共享服务器,但也可能是专用服务器,当带宽超过某个目标时,将调配一个新的服务器,从其他位置复制或恢复Web目录(可使用云文件,或svn,git等)。 可以使用puppet或一些自定义脚本来configuration文件。
理想情况下,每个域或一组域将拥有一旦超过的带宽配额,将触发一个新服务器的部署,只有该域的文件在1个小时的时间内部署。 如果在该目标之后带宽仍然超出,则服务器将保持另一个小时,等到不再需要时,服务器将被移除。
如果有人已经部署了这样一个系统,或者可以提供一些援助,这将是非常感谢!
1.如何确定多个实例的带宽使用情况?
2.当给定的服务器只有一个小时(我可以在这里使用代理服务器),我怎样才能避免DNScaching问题?
3.确保将文件快速部署到每个新部署的服务器的最佳方法是什么?
4.使用像这样的dynamic集群,我该如何支持FTP(我不喜欢使用FTP,但有些项目可能需要它)。
我正在使用Amazon EC2,但是这个build议可能适用于Rackspace或其他提供商:
我如何确定跨多个实例的带宽使用情况? 指标,我build议安装监控服务器与仙人掌,Ganglia和Nagios来衡量带宽,CPU,内存等
当给定服务器只有一个小时(我可以在这里使用代理服务器)时,如何避免DNScaching问题? 将负载平衡置于代理服务器之后。 如果您的提供者没有他自己的解决scheme,您可以使用HAproxy或nginx来执行负载平衡。
确保将文件快速部署到每个新部署的服务器的最佳方法是什么? 我正在使用rsync,工作正常,但我仍然在寻找其他解决scheme。
使用像这样的dynamic集群,我该如何支持FTP(我不喜欢使用FTP,但有些项目可能需要它)。 您的提供商应该提供一种方法来创buildIP地址和端口的访问列表(Amazon允许通过其API创buildACL)。
以下是我对类似问题的看法: VPS解决scheme可以匹配云可扩展性和可靠性