AWS re:Invent技术诉求深度解析

本文记录了作者在AWS re:Invent会议上对亚马逊提出的多项技术改进建议,涵盖跨可用区带宽定价、EBS存储架构、CHERI安全实例等核心云技术议题,展现了资深开发者对云计算基础设施的深刻见解。

我的re:Invent诉求

作为AWS Hero,我获得了免费参加AWS re:Invent会议的机会。虽然我很少对多数演讲感兴趣——往年我参加过一些"高级"演讲,但其内容都没有超出已发布的文档范围——但我发现这确实是与亚马逊员工交流的绝佳机会。

虽然我确信我的许多要求会被归为"Colin真奇怪"的类别,但我知道亚马逊有时确实会关注——至少在我找到合适的沟通对象时是这样。鉴于今年我有很多诉求,而且我知道一些亚马逊员工(甚至非亚马逊员工)可能会感兴趣,我觉得不妨在这里发布它们。

希望在re:Invent见到更多亚马逊开源开发者

我期待周三能与一些Valkey开发者会面,但很失望没有Firecracker开发者参会。亚马逊有政策规定工程师除非要发表演讲,否则不参加re:Invent(我希望能普遍改变这一政策),但对开源开发者来说,参加会议绝对必要——这是我们接触潜在贡献者的方式。如果你的开源团队不参加会议,无论你在代码上使用什么许可证,都不是真正在做开源。

降低跨可用区带宽定价

我甚至不太关心成本问题;但担心避免跨可用区带宽导致人们设计了糟糕的系统。亚马逊"良好架构框架"中的一条指导原则是将工作负载部署到多个位置,亚马逊特别指出使用单个可用区是个问题——但对跨可用区带宽的担忧(即使这些担忧最终被证明是多余的!)正在阻碍人们遵循这一指导原则。

机架级EBS存储

我不知道亚马逊数据中心是如何设置的,但访问"SSD"EBS卷的磁盘I/O延迟强烈表明它们与访问它们的EC2实例相距甚远。在延迟范围的另一端,某些EC2实例类型直接在其硬件上附加了SSD,I/O性能显著更好——但耐久性较低(如果实例宕机,数据就会丢失)且缺乏弹性(每个实例类型都有固定数量的磁盘)。

让EBS存储在与EC2节点相同的机架上可用,将提供一个中间点,允许比跨数据中心I/O的光速延迟更低,同时在卷大小方面允许一定的灵活性。用户必须接受"为我在与此实例相同的机架上配置卷"的请求可能会返回"抱歉,该机架上的所有磁盘已满";但至少在实例启动时,可以通过搜索具有足够机架本地磁盘的机架来满足请求。

支持CHERI的实例

这是我长期以来的愿望清单项目,我知道短期内不会实现;但我知道亚马逊(和其他云服务商)拥有用于研究目的的Morello板。CHERI在安全方面具有巨大优势,哪个云服务商率先推进这方面,将在竞争中遥遥领先。

Marketplace支持"待定"或"计划中"的发布

当我在AWS Marketplace中添加新的FreeBSD版本时,它们首先经过审批流程,然后被复制到所有EC2区域;完成后,Marketplace会用新版本更新"产品"列表,并向所有当前用户发送电子邮件通知新版本。这通常意味着亚马逊发送宣布新FreeBSD版本的电子邮件比我发送官方FreeBSD发布公告要早几天。

我不想等待之后再向Marketplace添加新版本,因为时间线不可预测——通常是几个小时,但有时是一天或更长时间——所以我希望能够告知Marketplace即将发布的FreeBSD版本,让他们准备好一切,但不要更新网站或发送电子邮件,直到我准备好发送我们的公告(我们通常允许几天时间让镜像和云同步)。

除了这些,我还有一些由于所要求事项的性质而无法写出来的请求。不过我还有一个可以写出来的请求——不是对AWS,而是对re:Invent的一个赞助商。我遇到了一些Zoom的人,并提到每次我从我的(FreeBSD)笔记本电脑加入通话时,Zoom网站都试图让我打开Zoom客户端,只有在反复失败后才提供"在您的网络浏览器中打开会议"。既然我的网络浏览器的用户代理字符串包含"FreeBSD",他们应该能够检测到没有Zoom客户端,并直接在我的网络浏览器中打开会议。值得称赞的是,他们立即理解了我的抱怨,甚至提出研究是否可以将他们的Linux客户端移植到FreeBSD。

我不知道是否或何时可能得到这些中的任何一项,但我愿意认为我已经说服了人们,我的要求至少是有些合理的。也许在他们和其他无疑会读到这篇文章的亚马逊员工之间,我至少能得到愿望清单上的一些东西。

为了透明起见:除了给我(和其他AWS Heroes)提供免费的re:Invent入场和差旅外,亚马逊还在赞助我的FreeBSD工作。他们支付的大约一半是EC2特定的东西;另一半是FreeBSD发布工程。没有他们的支持,许多重要特性就不会出现在FreeBSD 14.2-RELEASE中;感谢亚马逊。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计