写点什么

每个月在云上“狂烧”180 万,Ruby On Rails 之父:我们要直接买硬件!

  • 2023-01-18
    北京
  • 本文字数:3904 字

    阅读完需:约 13 分钟

每个月在云上“狂烧”180万,Ruby On Rails 之父:我们要直接买硬件!

2022 年 10 月,运营项目管理平台 Basecamp 背后的 37Signals 公司首席技术官兼 Ruby On Rails 之父 David Heinemeier Hansson 发文表示将要“下云”。近日,37Signals 官博发文总结了自己在 2022 年的云支出情况。

 

这是一个得令人瞩目的云账单,该公司 2022 年在云上的支出费用大约为 320.15 万美元(约合人民币 2170 万元),即每月 26.67 万美元(约合 180 万元人民币)。其中大部分支出(75.99 万美元)花在了 Amazon Web Services 的 EC2 和 EKS 服务。

“恐怖“的云账单

 

现在的 37Signals 主要经营两款产品:Basecamp 和 HEY,这也是他们的核心产品,对应的客户规模和收入水平也是最高的。另外,他们还运行着不少遗留服务,包括 Basecamp Classic、Basecamp 2、Highrise、Backpack、Campfire、Writeboard,甚至是 Ta-da List。这些服务已经不再继续出售,但仍有几万甚至几十万用户在用,利润贡献在数百万美元上下。对此,37Signals 表示“打算永久提供支持,直到互联网不复存在。”

 

上述的不少应用程序并非运行在云端。以规模最大的应用程序 Basecamp 为例,它的最新版本和之前的 Basecamp 2 几乎都运行在 37Signals 的自有服务器上,对应应用本体、数据库和缓存服务器。在这些服务上,只有搜索(OpenSearch)、文件存储(S3)和 CDN 服务(CloudFront)由云端提供。

 

HEY 则基本完全依赖于云服务(除了某些电子邮件和图像处理服务,这部分由其自有硬件支持)。在 HEY 当中,37Signals 通过 AWS EKS 在 Kubernetes 集群上运行完整的 Rails 应用程序,借助 Aurora RDS 建立 MySQL 数据库服务器,在 Elasticache 上运行 Redis,还通过 OpenSearch 实现搜索服务。另外,37Signals 的其他遗留应用程序也都运行在 EKS 上,数据库用的则是 RDS。

 

“2022 年全年,我们的所有云服务总开销为 3,201,564 美元,每月是 266,797 美元。吓不吓人!”37Signals SRE 工程师 Fernando Álvarez 在博文里说道。

 

下面,我们看下 37Signals 的详细开销:

 

  • 单看 HEY,纯用于生产工作负载的全年开销为 106.6 万美元(合每月 8.88 万美元)。这一项服务的成本来源可参考下图:



  • 至于其他各独立服务,37Signals 2022 全年为所有应用程序数据库在 RDS 上花费了约 47.3 万美元(合每月 3.9 万美元)。这还不包括最新的 Basecamp 和较早的 Basecamp 2 版本,它们用的自有硬件。所以其中大部分还是来自 HEY,全年数据库支出为 35.59 万美元(合每月 2.96 万美元),其余部分就是支持其他遗留服务的开销了。

 

  • 至于 OpenSearch,37Signals 主要用来托管应用程序搜索集群和日志记录管道中的索引存储,全年共花掉 51.99 万美元(合每月 4.33 万美元)。Basecamp 和 Basecamp 2 也在使用这项云服务,所以其中大部分成本就来自这两者,外加 HEY 和 Basecamp Classic。

 

  • 亚马逊云科技的 Kubernetes 服务 EC2 和 EKS,在 2022 年内共花掉 75.99 万美元(合每月 6.33 美元)。其中大部分用作 HEY 的生产和登台环境,总计 27.23 万美元(合每月 2.26 万美元),其余的用于其他遗留应用程序。但同样地,Basecamp 和 Basecamp 2 不在其中。

 

  • 37Signals 在 Elasticache 身上花掉了 12.38 万美元(合每月 1.03 万美元)。其中最大占比再次来自 HEY,它要借助这项服务来获取 Redis 支持的缓存。

 

  • 最后,37Signals 在 S3 上存储了约 8 PB 的文件,2022 年内总开销高达 90.78 万美元(合每月 7.56 万美元)。Hansson 透露,这是单笔花费最贵的项目。值得注意的是,37Signals 使用了双区域副本策略来避免 AWS 整个区域及其中各可用区的突发故障。为了交付这些文件和其他静态资产,其 2022 年在 CloudFront CDN 服务身上花掉了 66742 美元(合每月 5562 美元)。

 

实际上,37Signals 为了将巨额支出削减至 320 万美元,做出大量努力。运营团队开展一项审慎的成本核查计划,每月上报并跟踪。公司还通过预留实例和长期使用承诺等方式签订了长期协议,借此享受更低的定价优惠。“但即便如此,我们在 2022 年内还是花掉了如此恐怖的云服务支出!”

 

新的”省钱计划”:购买硬件

 

在新的一年,37Signals 表示,计划把大量服务和依赖项从云端转移到内部硬件上,借此大幅削减这笔费用。但这个公司并不打算亲自运营数据中心,而是与 Deft 合作租赁其机架空间、带宽、供电和托管服务。

 

“虽然按我们的业务规模计算,这样的支出同样不低,但已经远优于公有云上的花费。”Álvarez 说道。

 

虽然还没有详细的账单出来,但 Hansson 在推特上将这一成本与购买戴尔包含 288 个 vCPU 的服务器所需的支出进行了对比:

 

第一组,R6525 有 256GB 内存、3TB NVM、2x10G 网络、2 倍 AMD EPYC 7513。第二组除了是 2x AMD EPYC 7443 之外,其他都相同。所以 288 vCPU、15 TB NVM、1.3TB RAM,3 年每个月只要 1287 美元!

 


37signals 表示,新方案并不会给带来太多额外的运营负担,他们不需要在数据中心架设和部署硬件或者线缆。所有设备都可以从戴尔那边直接订购,发往 Deft 数据中心,等到服务器显示在线后即可直接使用。

 

可以看出,37signals 在“下云”上表现出了非常大的决心。

 

正如 Hansson 当时所说,云计算在两种极端情况下大有裨益:其一是应用程序极其简单且流量很低的情况,这时选择完全托管服务能摆脱大部分复杂性要素;其二是负载波动几乎毫无规律可言、大家不知道该部署多少服务器的情况,这时上云是最好的选择。但如今 37signals 已经不适用于上述两种情况。“Basecamp 多年的商业模式跟自有硬件都能良好协同,业务的增长轨迹也有很好的可预测性。”

 

事实上,虽然近年来云计算加速增长,但企业并没有放弃本地数据中心,很多企业继续依赖传统数据中心来处理其关键任务工作负载。

 

根据Uptime Institute 2022 年的研究,只有 36% 的组织会将关键任务工作负载放入公共云中。虽然这一比例高于 2019 年的 26%,但企业越来越担心公共云服务的可见性和弹性。2022 年,超过四分之一 (26%) 的公司表示,出于此类担忧,他们不会将关键任务工作负载放到公有云上,这一比例高于 2019 年的 22%。

 

企业在延长硬件的使用周期

 

那么,企业总是想要最新、最好的技术来为其数据中心提供动力吗? 实际上并不是。

 

根据 Uptime Institute 的研究,硬件更新周期在普遍延长而非缩短。在其 2020 年数据中心调查中,最常见的更新间隔时间为五年,而 2015 年时为三年。这表明在相对较短的时间内就发生了重大转变。根据Uptime的说法,五年或更长时间的硬件生命周期正在成为常态。

 


是什么推动了这种延长效应?Uptime Institute 表示,数据中心硬件的电源使用效率 (PUE) 的下降削弱了更频繁更新服务器的主要动力。平均 PUE 从 2007 年的 2.5 暴跌至 2014 年的 1.67,但此后改善停滞不前,当前平均 PUA 为 1.55。

 

注:PUE = 数据中心总能耗/IT 设备能耗,其中数据中心总能耗包括 IT 设备能耗和制冷、配电等系统的能耗,其值大于 1,越接近 1 表明非 IT 设备耗能越少,即能效水平越好。

 

随着效率提高的放缓,企业对昂贵的硬件进行更换的经济动机也在放缓。摩尔定律带来的回报越来越少。

 

 

“正是这种每瓦特性能的翻倍,为增加计算能力同时通过硬件更新提高效率提供了重要机会。但在过去五年中,英特尔(以及直接竞争对手 AMD)要保持改进的步伐变得更加困难。这就提出了一个问题:我们是否还能从最近几代和即将到来的几代中央处理器中看到这些改进?否则,硬件更新的理由将被削弱。”

 

Uptime Institute 2020 数据中心报告


PUE 是更新周期延长的因素之一,还有一些其他的因素:

 

  • 硬件即服务:供应商越来越喜欢将他们的硬件产品捆绑在订阅模式中。某种程度上,他们正在响应客户的需求。但当技术格局变化如此之快时,谁愿意锁定所有的资本支出呢?

  • 提高硬件利用率:超大规模(hyperscalers)已经证明商品硬件足以运行工业级工作负载。关键在于应用正确的软件层来充分利用可用硬件。中型和企业 CIO 密切关注着这些发展。

  • 预算限制:新 IT 设备的商业用途总是受到审查,毫无疑问,疫情的发生将优先事项进行了重新排列。随着远程工作成为常态,各种规模的企业都重新审视了对专有硬件的需求。针对云优先工作负载的服务和咨询支出也越来越多。

 

当然,硬件供应商仍然希望缩短硬件升级周期。以戴尔为例,该公司在 2019 年委托Forrester 发布的一份报告中警告说,不及时升级设备会带来机会成本。“老化的基础设施和进展有限的 SDDC(软件定义的数据中心)使用,阻碍了 IT 组织满足业务需求。”

 

但硬件使用者正在主动延长使用周期。比如微软目前在其庞大的数据中心产品组合中运营着 400 万台服务器(并且还在增加)。微软首席财务官 Amy Hood 最近宣布该公司将其服务器的使用寿命延长至六年,而在此之前的更新周期为四年。

 

Hood 表示,通过对软件的投资、服务器和网络设备运营效率的提高以及技术进步,微软能够将其服务器的使用寿命再延长两年。因此,该公司估计 2023 财年第一季度可节省 11 亿美元,整个财政年度总计可节省 37 亿美元。

 

另外,为实现其循环经济实践的承诺,从现在到 2030 年,微软的目标是将其数据中心的电子垃圾通过维修管理、回收再利用等方式降低 90%。这种维修和再利用的趋势不仅会进一步延长硬件更新的时间范围,还将支持二手数据中心设备市场的扩张。

 

结束语

 

在企业不断追求“降本增效”,而云成本不断上升的情况下,“下云”采用传统硬件设备成为一些企业的选择。但真要下云的话,企业需要考虑是否像 37Signals 一样业务可预测、没有意外的流量涌入,同时也要算好自己的账,比如要更换的设备价值多少,如何收回部分投资以抵消升级的前期成本,哪些设备可以在内部重新部署、哪些可以退役等。

 

世界上没有完美的解决方案,企业还是要做好评估后,根据自身业务需要进行选择。

 

参考链接:

https://dev.37signals.com/our-cloud-spend-in-2022/

https://horizontechnology.com/news/data-center-hardware-refresh-cycles/

2023-01-18 14:167292

评论

发布
暂无评论
发现更多内容

小令观点 | 让全球身份更可信:电子护照的前世今生

令牌云数字身份

数字身份 护照 电子护照 全球护照

Linux 磁盘管理

向阳逐梦

11月月更 Linux系统 Linux磁盘管理

python利用open3d可视化npy文件

Studying_swz

Python 11月月更

深入浅出学习透析Nginx服务器的基本原理和配置指南「Keepalive性能分析实战篇」

洛神灬殇

nginx keep-alive 11月日更

阿里P9架构师终于把毕生心血而成的分布式高可用算法笔记开源了

小二,上酒上酒

Java 编程 分布式 算法 编程开发

Java 字符串 split 的一个反直觉陷阱

mylxsw

Java 字符串 基础 陷阱

MySQL 数据库索引技术原理初探

mylxsw

MySQL 数据库 索引 B树

架构--模块六作业

李某人

架构训练营

终于有好心的人把高性能MySQL「第三版」电子版分享出来了

小二,上酒上酒

Java MySQL 编程 计算机

花一周时间,啃完这套京东架构师独家微服务笔记,成功面进字节

小二,上酒上酒

Java 负载均衡 编程 架构 SpringCloud

耗时3个月啃烂了这份Redis技术笔记,我成功上岸进了字节

程序知音

Java 数据库 redis java架构 后端技术

MongoDB 新手入门 - CRUD

mylxsw

mongo database 入门教程

集合:元素之间不允许重复

乔乔

11月月更

佛萨奇MetaForce原力联盟系统开发(源码搭建)

l8l259l3365

啃完这35个Java技术栈,冲刺大厂offer

小二,上酒上酒

Java 编程 JVM 技术栈 编程开发

阿里P8大牛刷算法的正确姿态!女朋友再也不用担心我刷不动力扣了

小二,上酒上酒

Java 编程 算法 LeetCode

吃透互联网必问的100道Spring全家桶高频真题,金九银十稳了

小二,上酒上酒

Java spring 编程 springboot SpringCloud

分布式技术难学?谷歌大神首发纯手撸ZK+Dubbo笔记,网友看完直呼NB

程序知音

Java zookeeper 分布式 java架构 后端技术

Alien Skin Exposure2023最新版下载

茶色酒

Alien Skin Exposure

混沌工程之ChaosBlade利刃出鞘

柠檬汁Code(binbin0325)

混沌工程 故障注入 ChaosBlade Chaos Mesh

架构实战训练营模块6作业

atcgnu

GitHub标星1.6W+的570页JVM垃圾回收文档,助我boss直聘狂拿offer

小二,上酒上酒

Java JVM 垃圾回收 性能调优

终于拿到了阿里P8架构师分享的JCF和JUC源码分析与实现笔记java岗

小二,上酒上酒

Java 源码 JUC JCF

阿里P8架构师强推java程序员人手一套116页JVM吊打面试官专属秘籍

小二,上酒上酒

Java 编程 JVM 开发 计算机

Sentinel Go-揭秘[流量控制]的实现原理

柠檬汁Code(binbin0325)

源码 sentinel 熔断 限流 冷启动

架构误区系列7:删除+更新的缓存刷新机制

agnostic

缓存

金九银十结束了,各大公司Java后端开发真题汇总,明年再战

小二,上酒上酒

Java MySQL 编程 分布式 算法

熬夜也要肝完的阿里内部面试官手册,吃透直接拿下大厂心仪offer

小二,上酒上酒

Java 数据库 架构 分布式 高并发

MongoDB 新手入门 - Aggregation

mylxsw

mongo database 入门教程

你敢信?清华毕业大佬用了一个坦克大战项目就讲完了23种设计模式

小二,上酒上酒

Java 编程 设计模式 马士兵 编程开发

阿里高工内产的 SpringBoot 保姆级笔记,面面俱到,太全了

程序知音

Java spring springboot java架构 后端技术

每个月在云上“狂烧”180万,Ruby On Rails 之父:我们要直接买硬件!_语言 & 开发_褚杏娟_InfoQ精选文章