Basecamp 是 37signals 旗下一款流行的基于云服务的项目管理软件,其用户囊括了来自五大洲的 166 个国家的超 75,000 个组织。Basecamp 的上云历程已经超过十年,而且其前两年发布的产品 HEY 也一直在云端运行。不过近日,Basecamp & HEY 联合创始人 David Heinemeier Hansson 发文表示将要“下云”。
“我们用过亚马逊云科技、也用过谷歌云,试过裸虚拟机、也体验了 Kubernetes 容器编排。我们知道云能提供哪些功能,其中大部分都有实际应用。现在我们终于得出结论:对于像我们这样一家增长稳定的中型企业来说,租赁基础设施资源总体上看是笔糟糕的买卖。云服务商做出的降低复杂性、控制运营成本等承诺从来就没能实现,所以我们正在筹划脱离云端、重归本地。”
“从未适用于 Basecamp”
高昂的云成本
“云计算在两种极端情况下确实大有裨益,但只有其中一种跟我们有关。”Hansson 解释道,首先是应用程序极其简单且流量很低的情况,这时选择完全托管服务确实能摆脱大部分复杂性要素。
Heroku 就是这样起步的,同是 PaaS 提供商的 Render 则证明这条路完全行得通。从零客户到少部分客户,云基础设施既是个良好的起点,也能在一段时期内帮助企业稳稳前行。但随着使用量的增加,账单也会水涨船高,并最终来到某个必须做出改变的时间节点。
另一种就是负载波动几乎毫无规律可言。具体来讲,负载运行期间经常出现剧烈震荡或者高耸的峰值,但基准资源需求却只相当于峰值的一小部分。面对这种情况,大家确实不知道该部署 10 台服务器、还是 100 台服务器。于是乎,上云就是最好的选择。
“我们在发布 HEY 的时候也属于这种情况。当时,突然有 30 万用户挤在三周之内注册试用我们的服务,这一规模远远大于我们预测的 6 个月 3 万用户。”Hansson 说道。
但 Hansson 表示,“这两种情况都不再适用于今天的我们,也从未适用于 Basecamp。所以如果继续坚持在云端运行,我们相当于既用不上云服务的亮点,又要承担几乎荒谬的夸张溢价。这就像明明住得离地震带很远,却要花四分之一的房屋总价买保险一样。如果真能遇上大灾害,那这钱花得确实有道理。可问题是并没有,这完全是在浪费资源。”
Hansson 以 HEY 为例解释道,公司每年需要为亚马逊的数据库(RDS)和搜索(ES)服务支付超 50 万美元。“确实,在为成千上万客户处理电子邮件时,肯定得分析和存储大量数据。但结合价格来看,这样的状态还是让我觉得很荒谬。大家知道每年 50 万美元预算能买到多少台功能强大的服务器吗?”
“按需计算“并没有更先进
“那样你就得自己管理服务器了。云服务多简单,省下的可都是劳动力成本!”面对可能到来的质疑,Hansson 先发制人:这么说的人肯定没尝试过在云端运行 HEY 或者 Basecamp 这类大规模服务。有些环节确实更简单,但有些环节反而更复杂。而且总体来讲,我还没听说过像我们这种体量的组织能单靠上云,就大幅削减自己的运营团队和日常开销。
作为经营者,Hansson 表示“云厂商的营销手段确实高明”。讨论的另一方总有话说,比如“你至少不用自己打理那么多基础设施设备”或者“基础设施服务构成你的核心竞争力”之类。面对这些直击灵魂的发问,云似乎再次闪耀起夺目的光芒,让每个考虑运行自有服务器的决策者都像是活在上个时代的老顽固。
但 Hansson 也指出,与此同时,亚马逊凭借租赁服务器赚取着惊人的利润。尽管一直在做容量和服务升级,但 AWS 的利润率仍然接近 30%(总营收 62.2 亿美元,利润为 18.5 亿美元)。而且随着该公司表示“计划在未来将服务器的使用寿命由四年延长至五年,并将网络设备的使用寿命由五年延长至六年”,利润比例势必还会进一步上升。
“我对亚马逊靠云业务赚钱没有意见,毕竟租计算设备本来就不便宜。只是云服务总喜欢搞一大堆专业术语,比如‘按需计算’,听起来很酷,感觉比‘租计算机’整整领先了一个世纪。但二者好像并没什么本质区别。”
Hansson 进一步指出,“而且这不只是成本问题,更关乎我们未来要如何运营整个互联网。令人震惊的是,云计算这一堪称人类社会奇观的产物,居然只能运行在少数几家巨头厂商的基础设施当中。如果 AWS 的某个主区域出现故障,似乎会有近半数网站随之离线。DARPA 当初规划互联网的时候,恐怕也想不到会有这样的结果。”
基于以上原因,37signals 觉得有必要带来点不一样的声音。Hansson 表示,Basecamp 多年的商业模式跟自有硬件都能良好协同,业务的增长轨迹也有很好的可预测性。而且即使是用了亚马逊或者谷歌云,也还是得设置专业员工才能操作服务商那边的设备。“相信不只我们,还有很多企业都面临着类似的情况。”
“而要想让互联网回归那片成本更低、去中心化度更高的净土之前,我们先得学会从云服务商的那套营销话术中脱离出来。在云计算普及之前,大家都在运行自有服务器,其实连不少号称云优势的功能也完全可以用在本地设施当中。所以千万别被云宣传蒙蔽了双眼,运行自有设施其实没那么可怕。当初我们就是这样一步步走了,才有了如今繁荣兴盛的互联网时代。”Hansson 说道。
Hansson 的决定也引发了开发者们的讨论。其中“降低复杂性、控制运营成本等承诺从来就没实现”这一点也戳中了开发者们敏感的神经。
“仪表板是一个迷宫,许多非常常见的用例都要求您协调部署多个名称奇怪的产品。当云计算在 10 多年前刚出现时,复杂性是可以被原谅的,但从那时起,确实并没有变得更容易使用。”Reddit 账户名为“50653”的开发者道对某云产品吐槽道,“我不会推荐裸机服务器,但我认为中小型公司应该考虑这个云产品的替代品,其中大多数都更容易使用。”
开发者“mwassler”对此表示赞同。“我认为我对这个产品相当了解,有时我用它帮助我所在地区的小公司,我无法告诉你我经常进入某人的仪表盘,他们每个月花费数千美元来托管一些每天收到几千个请求的服务……拥有开发公司的人将他们的登录信息提供给没有经验的开发者,让他们去做任何想做的事情,然后他们进入那里就变得疯狂。我见过有人多年来运行默认大小的实例,但这些实例没有提供流量,某些开发人员只是在某天准备了一些。”
还有开发者评论道,“IT 一直存在集中化(入站)和分发(出站)的循环。服务提供商怎么会每 5~10 年卖给你同样的东西呢。”
没有“下云”成功的 GitLab
实际上,Basecamp 并非第一家想要“下云”的企业。GitLab 在2016年底时候就表示计划要“下云”,不过团队“在收到数百条充满建议和警告的评论和邮件后,最后还是决定将 GitLab.com 保留在云端。
GitLab 对存储需求较高,因此当时建了一个 CephFS 集群来解决 NFS 的容量和性能问题。但在将大量项目、用户和 CI 工件加载到 CephFS 上运行一段时间后,GitLab 发现,CephFS 为了正常运行需要非常快速地读写很多东西,因此其对底层基础设施的性能有非常高的要求。如果其中一台主机延迟写入日志,则队列的其余部分将单独等待该操作,整个文件系统将被阻塞。
另一方面,CephFS 还遵从 CAP 定理,因此会放弃可用性以换取一致性。如果对系统施加很大压力,那么它会产生热点。例如高负载时,在托管 GitLab CE 存储库的机器集群中,所有读取和写入最终会间出现在同一个位置。GitLab 认为,由于 GitLab 将系统托管在没有 IO 延迟最低 SLA 的云上,这个问题被放大了。
GitLab 当时的 OSD 日志延迟
GitLab 这一计划发出来后也引发了社区的热烈讨论,大家纷纷就 GitLab 面临的问题进行了探讨,GitLab 首席执行官 Sid Sijbrandij 也认真听取了社区的意见。
Sid 还与一位将多家公司从云端带到裸机领域的人士进行了长谈,他得到的建议是:除非绝对需要,否则不要这么做,即使是将自定义为提供托管服务的公司也不应该这样做。正确处理硬件需要的专业知识庞大、昂贵且难以获得,这意味着要雇佣服务器、网络、备份、安全、电力等方面的专家。
“这与我们董事会成员看到的其他公司情况相似,上述工作花费了他们 70%的工程量。对我们来说,首要任务是制作一个大多数人自己托管的出色工具。我们不能让托管主导我们的组织。”Sid 表示。
最后,GitLab 决定将所有存储分散到多个 NFS 分片(NFS shard),并删除了堆栈中的 CephFS,同时创建了Gitaly,这样就不必依赖 NFS 实现横向扩展,并可以通过缓存来加速 Git 访问。
结束语
在过去的五年中,云计算行业蓬勃发展,加上很多企业在疫情之初开始进行数字化转型,云计算更是“风生水起”。但由于市场动荡、对潜在经济衰退的担忧,企业承担着越来越大的财务和运营压力。据悉,苹果公司每月花在亚马逊云计算上的费用就超过了 3000 万美元。
因此,在人人都讲降本增效的今天,高昂的云计算成本能否带来同样高的回报也成为企业重要的考量。但现实可能是,云计算可能并未给大多数企业带来想象中的收益。
Wanclouds 研究显示,81% 的 IT 管理者表示,随着成本飙升和市场下行,他们的最高管理层已经指示他们要减少或不承担额外的云支出。根据调研结果,39% 的人已经决定将大量的云消耗和高性能工作负载迁移或留在本地,还有 29% 的人表示在 2022 年上半年由于价格贵而更换了公有云厂商。
未来,各种各样的压力是否会逼迫企业开始纷纷“下云”?我们对此也将持续关注。
参考链接:
https://world.hey.com/dhh/why-we-re-leaving-the-cloud-654b47e0
https://about.gitlab.com/blog/2016/11/10/why-choose-bare-metal/?
https://www.infoq.cn/news/mMtEqAXuvF7Weml1GROL
评论 3 条评论