下云后省大发了!一年节省1000万!
“离开云计算”,自去年10月下旬提出这个打算后,DHH一直在马不停蹄地实现这个目标。
近日,他发布一条博文,给出了更具体的目标:入秋前就可实现“云退出”目标。根据初步计算,这样的话,五年内节省大约700万美元的服务器费用,而且运维团队的规模也不会有太大变化。
一、裸机:一年只需12万
如此豪情源自于这样一个契机:DHH所在的公司37signals在与一家企业Kubernetes供应商商进行了一次短暂的迂回之后,他们开始自己构建的工具,并在几周前成功地将第一个小型应用程序移出了云计算。
粗略的计算是这样的:2022年,我们在云上花费了320万美元。其中不到一百万是在S3中存储8 PB的文件,并在多个地区完全复制。因此,其他一切都需要花费约230万美元:应用服务器、缓存服务器、数据库服务器、搜索服务器等。这是我们计划在2023年将预算归零的部分。然后我们将担心2024年从S3退出8PB。
经过深思熟虑、多次基准测试,加上对AMD新的Zen4芯片与第4代NVMe驱动器的结合表现出的惊人速度,可以说,DHH表示,公司差不多准备好向Dell下订单了,大约60万美元。
目前仍在精确调整所需的配置,但最终会在每个数据中心订购8台运行双64核CPU的机器(每台机器总共256个vCPU。此外,还需要为两个数据中心,分别添加大约2000 vCPU,因此将会有4000 vCPU用于性能和冗余。
在云时代,花60万美元购买一堆硬件可能听起来很不值,甚至有些吃亏。但如果你在保守的五年内分期偿还,每年只需12万美元!而且,DHH补充道,别忘了这些机器中有很多即便七年以后也能继续运行。
二、机架安装也很省
当然,光服务器还不够,服务器只是盒子。它们还必须连接到电源和带宽。目前DHH的做法是,通过Deft,每月在两个数据中心之间的八个专用机架上花费约6万美元。同时,公司还特意调配了多余的空间,这样我们就可以在现有机架中安装所有这些新服务器,而不需要更多空间或电源。因此,这方面算下来,支出会保持在每年72万美元左右。
整体算下来,每年需要花费总计84万美元。带宽、功率,还有摊销计划为五年的服务器。相比之下,37Signals在云计算的开销则近三倍,为230万美元。
而且,这样做的好处在于,公司将拥有更快的硬件、更多的内核、更便宜的NVMe存储,以及以极低的成本进行扩展的空间(只要每个DC仍能容纳四个机架)。
任何具有稳定工作负载的中等规模SaaS企业和更高级别的企业,DHH建议需要将云服务器的租赁费用,和自己购买服务器的方案进行比较,如果没有做考量,那将会犯严重的财务错误。“我建议你先给戴尔打电话,然后再给Deft打电话。获取一些真实世界的数字,做决定吧!”DHH如是说。
三、被证伪的质疑
有人质疑DHH这种将硬件成本和托管硬件的成本进行比较的做法。
这是一个奇怪的数学:将硬件成本与托管硬件成本进行比较。“我不是云供应商的托儿,但230万美元不仅仅是‘带宽、功率和裸机’。您可以获得身份访问管理、用户控制台、CLI、免费Terraform插件(开发和维护成本不低)、计费报告、灵活分配现货实例以应对峰值(系统从不面临峰值吗?)以及其他许多功能。”
具体展开,例如,如何确保从这些裸机访问远程S3服务器?如果您计划托管S3集群,那么这不在84万美元的账单中。
另一个例子,DHH另一篇博文《Why we're leaving the cloud》中提到使用AWS关系数据库(RDS)和ES。托管数据库是一回事;操作数据库则是另一回事,而且更昂贵。他是否将备份文件存储在/tmp fyles系统的tarball中?如果没有,谁开发和维护该解决方案?
他不可能没有考虑过应对这一现实,或者他认为平台的“创建和运营”成本将低于150万美元/年。(经笔者查证:事实是,其实有关存储这块的费用,HDD已经考虑在内了,继续沿用云托管存储方案。)
当然,公有云自然也会有好处,一位朋友说出了数据中心被不可抗力毁于一旦的故事。
“在我工作的一个地方,我们的办公室数据中心遭到雷击。至少可以说是一团糟。而上云则不同。大约4年前,当Azure出现问题时,美国西南部数据中心(US Southwest data center)将Azure的其余部分带走,而它在崩溃时,我们没有丢失任何数据,也不必进行消防演习来修复任何问题。”
另一方面,如果停机时间不是非常关键,并且不需要扩展和其他云功能,那么自托管成本可能会低得多。
四、三点启发
每次有人发布这些关于离开云后节省了多少成本的信息时,他们无外乎采取这些措施:
要么使用不利用任何云平台功能的系统设计。
要么将自行管理的工资、停机、机会成本,而且将复杂性和开发之间的摩擦视为免费的,因为很难量化所有这些信息。
但此次云账单爆表到下云的实践之所以得到圈内关注,带来了三点启发。
1.云暴露的问题
云弹性扩展有些不给力。假设一个“吃瓜”事故突然发生,突然有500万人想立即访问网站,云的扩展速度会非常缓慢。在真实的突然高负载场景中,规模扩大简直像一个谎言。
一位评论者提到自己公司使用的K8s集群,需要很长时间来扩展可用的节点数量,即EC2实例。它们的运行开销大约为10个空闲节点(并且总是会少一个CPU,或者少1GB RAM……),但一旦它们满了,例如,当一个很高的负载进入时,则需要2-5分钟才能扩展。
这位吐槽说:“我真的不知道什么是好云了。它的规模不快,安装不容易,也不便宜。你唯一能节省的就是购买硬件等前期费用。”
正如另一位在扩展方面感到头疼的朋友所言,在不同的现场活动中,云厂商要么为不同的客户机重新分配能力不足的服务器,要么在活动中达到上限并失败,这是一个持续存在的问题。
再一个就是服务态度问题。“当活动产生故障向客服反馈后,他们的结论是,不是配置问题,也不是扩展问题,而是客户端的问题,他们太频繁发出请求了~”
2.私有云的实践参考
关于Hey的下云迁移、可能节省的成本以及可能产生的额外成本,有很多讨论。我认为这可能是一个很好的长期案例研究,相信对于云原生的落地,未来如何根据公司实际情况进行取舍,有了更进一步的实践参考。
因为巨头总是少数的,大多数公司可能会考虑在这两个领域进行投资——购买裸机以获得固定负载,然后使用云来实现可变负载和冗余。
当然,并不是所有的私有云都能省钱。一位人士指出,我们尝试使用自己的私有云。这不值得。当我研究AWS生态系统时,我发现保留一些基础设施并采用混合模式是我公司的最佳解决方案。比如,在云中归档内容更轻松些,同时减少了本地服务器的维护时间。尤其是当一个旧的基础设施到处运行RAID6时。
也有这样一种观点,虽然AWS、Azure等云服务解决方案并不完美,但专业化之所以有效,是因为大规模的系统往往更便宜。
3.价值主张的探讨
有人士分析,DHH还没有将在这个项目上浪费的人力资源计算在内,其实这个项目所占用的资源本可以用来构建更实际的差异化功能。
但反驳者则认为,这一点有些避重就轻,因为这种观点忽略了劳动力资本的价值。如果他们把这些钱花在了改善公司的劳动环境和待遇上,而不是为了一个没有明显更好的服务水平的云厂商而烧掉这些钱,那么即便他们为内部积累丰富经验而烧掉了700万美元或更多,也是一个合理的价值主张。为一项专项服务而付费,还是为提升内部经验和能力买单,你说哪个划算?
我告诉你msdn版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!