我们有一台服务器(4GB RAM,两个 4 核 Intel Xeon E5420)执行以下任务:
我们预计在接下来的几周内会有大量(多达数十万)用户涌入。我的上司担心我们当前的设置可能无法处理负载,并正在考虑转向云托管 - 但是,我不相信这会有所帮助。根据我对云计算的理解,虚拟化不会有太大帮助,除非我们可以将工作负载分摊到多台机器上(除非它们的单个服务器比我们的服务器强大得多)。他们提供 MySQL 集群,但是后端脚本只是读取/写入几行中的一些值,并且不执行任何计算密集型 SQL 查询,所以我再次不确定 MySQL 集群与 Apache/ PHP 开销 + MySQL 网络延迟。至于网站,
那么,云托管会给我们带来任何好处吗?
当前的虚拟化将一台大型物理服务器拆分为较小的虚拟服务器。但是是否可以将多台物理服务器组合成一台虚拟服务器?
更新:我们有几个不同的系统,它们需要自己的服务器来执行 CPU 密集型作业。我们试图做的是创建 2 个虚拟服务器,分布在 6-8 个较小容量的服务器上。我们研究的虚拟化软件需要 1 台大型物理服务器,并将其切成 2-3 台较小容量的服务器。
我们还在研究动态增加虚拟服务器的 CPU,以便在其中一个使用较少容量时我们可以使用全部 CPU 容量。
这个想法是乌托邦式的吗?
有人可以向我解释“在云中安装 Ubuntu”是什么意思吗?
这与在任何托管公司注册 VPS 有何不同?
真正试图了解这意味着什么以及它与普通网络托管有何不同。
我的一个客户每月收取大约 1400 美元的托管费用。然而,该网站每天平均只有大约 200 次点击,并且不提供大文件或视频。
它由http://www.engineyard.com/托管,我查看了账单和“标准支持标准 CPU 超大实例使用”功能,每月 833 美元加上无数其他订单项。我不知道如何为这样一个小网站提供服务可能会产生如此巨大的成本——有人对此有任何经验/想法吗?
更新:
另外什么是“标准支持标准 CPU 超大实例使用”,究竟是什么?
我的 SaaS 应用程序需要每晚的 cron 作业来运行、分析数据库、发送电子邮件和执行一些数据库维护工作。此作业不能由用户操作触发。
几乎每个“云”托管解决方案都在这点上犹豫不决,以至于他们告诉我“我们不能这样做”。
我在Go Daddy上有一台 Windows 云服务器。他们给了我 3 个公共 IP 地址和每台机器一个私有 IP 地址。而且我知道要获得更多公共 IP 地址,我必须致电 Go Daddy。
如何将更多私有 IP 地址添加到单台计算机 ( Windows Server 2008 )。
目前,我/我们运行一个 SaaS Web 应用程序,其中每个订阅者除了自己的数据库之外,还有自己的应用程序物理实例。该设置将每个 Web 应用程序实例部署在两个不同的 IIS 机器上,以实现负载平衡和冗余(例如,这些机器的 Windows 更新安装时间相隔 12 小时)。数据库在两台不同的 SQL Server 2012 机器上使用 AlwaysOn 进行镜像以确保正常运行。我不使用 SQL Server 群集(因为它不提供存储级故障转移:我们没有共享存储盒)。
因为它是 Windows 设置,这意味着有两个域控制器(我们作弊:它们都是 Mac Minis,每个 17W,这使我们的 colo 电源成本保持在较低水平)。
最后还有一个 Exchange 服务器(邮箱、集线器传输和客户端访问)。其中一个 SQL Server 还兼作 Exchange 集线器传输。
我们的四分之一机架主机托管(包括电源和对等/传输)的运行成本约为每月 700 美元,而 SPLA 许可每月的运行成本约为 150 美元,因此每月总计 850 美元。然后是难以量化的管理成本,但我估计我每周花几个小时检查服务器:查看事件日志等。
我不断受到关于“云”有多棒的广告和编造的新闻报道的轰炸。
早在 2008 年,当云起飞时,我正在阅读有关适当的“云”服务,例如 Google AppEngine,您在其中使用 Python 编写 Google 的 API,这就是它们如何跨服务器扩展您的应用程序,并使用他们的数据库提供商扩展存储. 简单到可以理解。
然后出现了 Amazon,我了解 Amazon Storage 的工作原理,但我不确定 Amazon Compute 的工作原理:Web 应用程序页面不需要太多 CPU 时间来计算,无论如何您如何量化使用情况?
最后,RackSpace 开始行动了,现在我真的很困惑。
RackSpace 以“每小时 0.70 美元”的价格宣传“云”SQL Server 2012,根据他们的宣传方式,我认为“小时”是指 CPU 时间、IO 阻塞时间、可能是传输数据所花费的时间的总和,因此对于低-强度应用程序那么便宜吗? …
我一直在尝试研究这个主题,但没有找到任何建议在迁移到云框架时安装 Redis 和 ElasticSearch 等服务的地方。
我目前正在 2 个静态服务器上运行 Symfony2 应用程序——一个运行 MySQL,另一个是面向公众的 Web 服务器,它也运行着 Redis 和 ElasticSearch。这两个服务器都是虚拟化的,但就目前无法复制而言它们是静态的(各个方面仍然依赖于本地文件系统)。
目标是迁移到 AWS 并使用自动扩展来根据需要启动和终止 Web 服务器,但我不清楚应该在每个 EC2 实例上放置什么。他们应该只负责单一职责吗?即为 Web 服务器、Redis 和 ElasticSearch 设置单独的实例,最有可能为 MySQL 设置一个 RDS 实例,并且只在 Web 服务器上设置自动缩放?
我不认为必须在短期内扩展 ElasticSearch 服务器,因为它只是驱动搜索功能,但 Redis 可能需要在某个时候进行复制 - 但这应该手动完成吗?我不确定这如何自动完成,因为据我所知,每个实例都需要配置为了解它的主/从。我很感激这方面的建议。
我在这里的时候还有一个简单的问题 - 当 X 个 Web 服务器当前处于活动状态时,我如何能够部署代码更改?我正在使用 Capifony 部署脚本(Capistrano 的 Symfony2 版本),我认为它可以通过指定一组:domain地址来轻松处理多个服务器……但是当 Web 服务器的数量可能会有所不同时,应该如何处理?
任何人都知道一种可扩展地监视电子邮件警报的方法吗?
对于我的许多现场服务,我让他们通过电子邮件告诉我关键任务的成功(和失败)。我将成功通过电子邮件发送给它的原因是有时失败的本质是服务无法通过电子邮件发送失败警报。
不幸的是,这不能扩展,我现在收到了太多警报,我并没有真正监控它们,但我无法在失败时发出警报,因为这在过去太不可靠了。
理想情况下,我想要的是云服务(或邮箱),类似于 Pingdom,我也可以发送/转发这些警报,当它收到失败警报或缺少成功警报时,它会通过电子邮件/短信给我。
谁有想法?
我们目前正处于为我们的电子商务业务建立一个“主”数据库的研究阶段,该数据库将集中所有数据,包括产品信息、供应商信息、Magento 信息、亚马逊等......我们已经研究了“物理硬件”(两台 RAID 5 机器,主/从,从硬盘备份 - 和一个单独的应用程序服务器)......或者我们可以做一个“基于云的”系统。
问题的核心是,在云上复制有什么好处吗?云的全部意义在于可扩展性和“无硬件停机时间”,因此不会因硬件故障而丢失数据。在基于云的系统上发生的数据丢失(如果有的话)将是基于软件的。话虽如此,作为基于软件的问题会导致数据丢失,这个问题很可能会被复制,对吗?因此,我们有 2 台具有相同损坏数据的机器?
我们正在尝试分析任一解决方案的成本/收益。当然,如果在云上复制没有任何好处,那么云必须提供的好处超过硬件解决方案。但是,如果云上的复制解决方案是更好的选择,那么硬件解决方案的成本将大大降低,包括物理管理时间。
有没有人在这里有任何经验或见解?
cloud ×10
hosting ×3
mysql ×2
alerts ×1
cron ×1
deployment ×1
email ×1
godaddy ×1
ip ×1
logging ×1
monitoring ×1
rackspace ×1
redis ×1
replication ×1
ubuntu ×1
vmware-esxi ×1
windows ×1