NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

上云“被坑”十年终放弃,寒冬里第一轮“下云潮”要来了?

  • 2022-10-20
    北京
  • 本文字数:3742 字

    阅读完需:约 12 分钟

上云“被坑”十年终放弃,寒冬里第一轮“下云潮”要来了?

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

 

2022-10-20 15:0013575

评论 3 条评论

发布
用户头像
说了半天都没说到重点,一派胡言
2022-10-26 09:29 · 北京
回复
用户头像
片面了, 还有一种情况, 就是公有云位于世界各地, 可以方便公司将业务拓展到全球; 另外使用公有云也会容易满足各地的政策法规要求.
2022-10-20 17:14 · 上海
回复
这种世界各地的数据延时和数据中心的挑战是个客观困难
2022-10-25 01:22 · 广东
回复
没有更多了
发现更多内容

如何进行用户故事估算——Ethan分享观后感

Bruce Talk

敏捷 随笔 Agile User Story Product Owner

MacBook的隐藏功能

IT蜗壳-Tango

10月月更

10. python入门速通教程之类、继承类、类中的特殊方法

梦想橡皮擦

10月月更

SpringBoot 实战:优雅的使用枚举参数(原理篇)

看山

Java Spring Boot Effective Spring 10月月更

别被vector最后一个元素erase错误

良知犹存

c++

一文带你盘点“微服务”中的技术点

Simon郎

微服务 Spring Cloud spring cloud alibaba java

模块九毕业设计

以吻封笺

【SpringCloud技术专题】「Hystrix源码」分析故障切换的运作流程

洛神灬殇

源码分析 SpringCloud Hystrix 熔断器 10月月更

产品经理如何采集需求?

石云升

产品经理 需求分析 10月月更

在开源项目或工作项目中使用git建立fork仓库

良知犹存

git

敬畏用户

FunTester

软件测试 测试 用户 FunTester 用户思维

OpenCV学习(二):环境搭建

轻口味

OpenCV图像处理 10月月更

stm32-HAL使用stop模式后DMA初始化的问题

良知犹存

stm32

容器 & 服务:Kubernetes API Server访问问题

程序员架构进阶

架构 Kubernetes 容器 Helm Charts 10月月更

stm32-HAL使用usart发送中断判断发送标志库问题

良知犹存

stm32

012云原生之微服务

穿过生命散发芬芳

云原生 10月月更

数据库优化之explain 的使用和常用的SQL优化或索引优化

Regan Yue

数据库 数据库优化 Regan Yue 10月月更

半年时间,拍摄8省市10个案例,我们见到了这样的智能中国

脑极体

Android使用adb工具及root权限完成手机抓包

杨清强

adb

技术公众号小白互助网络

Felix

GitHub 微信公众号 自媒体

架构实战营模块九作业-毕业设计

子豪sirius

架构实战营

模块9

脉动

模块九作业:设计电商秒杀系统

Felix

架构实战营 - 模块九作业

思梦乐

Linux开发coredump文件分析实战分享

良知犹存

Linux

业务中台数据一致性方案

慕枫技术笔记

后端 引航计划

马拉车算法,其实并不难!!!

秦怀杂货店

数据结构 算法 LeetCode

微博评论高性能高可用计算架构

白开水又一杯

#架构实战营

Ember Data 之记录操作:创建、更新和删除

devpoint

store ember.js 10月月更

5款良心工具,专治各种流氓顽固软件!

Jackpop

设计千万级学生管理系统的考试试卷存储方案

Rabbit

上云“被坑”十年终放弃,寒冬里第一轮“下云潮”要来了?_文化 & 方法_褚杏娟_InfoQ精选文章