关键字: [Amazon Web Services re:Invent 2023, Buy With Prime, Multi-Tenant Services, Best Practices, Tenant Isolation, Observability, Microservices]
本文字数: 1600, 阅读完需: 8 分钟
视频
如视频不能正常播放,请前往bilibili观看本视频。>> https://www.bilibili.com/video/BV1Ru4y1g7hn
导读
本论坛提供了 Amazon 如何为其多租户软件即服务(SaaS)产品 Buy with Prime 实现卓越运营的真实世界示例。探索 Buy with Prime 如何在部署管道中自动化租户隔离验证,并通过提高跨供应的微服务和租户的可观察性,最大限度地提高效率。实际了解现代 SaaS 管理的功能。
演讲精华
以下是小编为您整理的本次演讲的精华,共1300字,阅读时间大约是6分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。
主题为“实际操作中的SaaS运营:通过Prime购买”的会议主要分享了Prime团队在运用亚马逊云科技进行多租户服务运营方面所积累的最佳实践。演讲的目标是为亚马逊云科技用户提供实际性的收获,使他们能够将这些经验应用到自身环境中。
该会议由在亚马逊工作超过11年的Buy With Prime团队的主要工程师David Ramos启动。他曾参与过诸如Fire Phone、Alexa和Audible等项目,这些项目使用了亚马逊云科技的服务,如SageMaker和Lambda。他被亚马逊在亚马逊云科技上的多租户服务的技术愿景和方法所吸引,从而加入了Buy With Prime团队。作为Prime会员,他也喜欢在各种地方使用Prime的功能。
David首先概述了Buy With Prime这一来自亚马逊的SaaS产品。这项服务允许数百万Prime会员直接在商家的在线商店购物,享受快速、免费配送、简单结账和无烦恼的退货等值得信赖的Prime体验。商家可以通过在其网站上安装JavaScript代码片段或使用Shopify应用程序来连接他们的店铺来集成Buy With Prime。这对Prime会员和商家来说都是双赢局面,因为会员可以享受到福利,而商家可以在其网站上建立忠诚度并提高转化率。平均而言,使用Buy With Prime时,商家的转化率可以提高25%。
接着,他提供了一个关于架构的高层次视图,展示了如何利用亚马逊云科技服务,如Lambda、API Gateway、DynamoDB等。这是一个基于微服务的设计,独立团队负责快速迭代。每个微服务管理自己的亚马逊云科技帐户,每个帐户都有多个商户资源,这使得一致性、安全和配置成为可能。
对于Buy With Prime来说,保持信任需要实现多租户和严格的租户资源隔离。控制面基于DynamoDB构建,用于存储每个租户的元数据,而数据面基于Amazon Aurora处理业务数据。账户ID和租户ID提供了使用IAM角色和安全策略进行访问控制的边界。在演讲中,演讲者将展示如何使用亚马逊云科技工具(如IAM访问分析器)来自动验证这种隔离。
大卫向众人介绍了亚马逊云科技的高级解决方案架构师琼·杨。她表示,她曾先加入亚马逊云科技,后又加入了Prime会员购物团队。令她惊讶的是,他们已经采用了亚马逊云科技的Well-Architected框架的最佳实践,如使用CDK等工具。她认为这对其他在亚马逊云科技上构建SaaS解决方案的架构师和开发者来说是非常有益的。一个关键原则是确保听众在离开时能够实施可操作的成果,而不仅仅是理解概念。
她提醒众人关注亚马逊云科技的Well-Architected框架,该框架提供了关于如何高效满足业务需求的指导,同时避免了过多的运营负担。Prime会员购物团队专注于使用亚马逊云科技的服务(如CodePipeline、CodeBuild)来自动执行任务并持续改进,以避免重复问题。作为一个在2022年开始运营的年轻公司,他们的目标是成为商人的有弹性的基础设施,同时将安全性作为首要任务。
除了一般的运营卓越之外,SaaS提供商还面临额外的挑战。他们需要在不同租户之间具有可见性,以确保一致的质量并根据使用模式进行优化。将所有这些放在一起,就需要管理大量的内容。Prime会员购物团队在管道中嵌入租户隔离检查,以确保信心,并使用CDK在整个账户中标准化可观察性的配置。
琼接着概述了Prime会员购物在亚马逊云科技CodePipeline中的CI/CD流程。在源代码更改后,构建阶段会使用CodeBuild运行单元测试和静态分析。如果成功,部署将转移到专注于验证的预生产alpha、beta和gamma环境。Gamma是最接近生产的环境,通过CloudWatch进行监控,并使用亚马逊云科技Synthetics进行合成测试。
自动化租户隔离验证在安全集成测试中进行。琼解释了如何通过模拟未授权访问尝试和有效场景来测试运行器的高级别概念。例如,当使用非白名单账户或使用错误的租户ID时,访问被拒绝。而当使用正确的账户和匹配的租户ID时,访问被允许。
她强调了实现自己的测试运行器的关键考虑因素:要了解自己的租户隔离边界,并将其纳入IAM角色和策略中;涵盖所有数据源,如DynamoDB表和维度。
测试所有适用的操作,如创建、读取、更新和删除。作为一个起点,Joan分享了一个链接到他们的开源测试运行器,该运行器假设一个角色并尝试访问DynamoDB表。观众可以通过结合自己的特定IAM角色、资源和场景在此基础上构建。并将此验证嵌入到他们的管道中,以便在部署到生产环境之前建立信心。
接下来,Joan邀请了Jimin Song,她是Buy With Prime的解决方案架构师,她来讨论可观察性。Jimin首先承认,许多来自软件即服务公司的观众都在基于亚马逊云科技构建,他们经常问的问题是使用什么指标和工具来监控。虽然Buy With Prime的具体细节可能不会直接适用,但她专注于解释他们所做的选择的背后原因,以提供更广泛的指导。
她概述了两大关键观测挑战:
-
更多的资源意味着更多的指标,这可能导致疲劳,因为你试图平等监控一切。需要关注关键指标。
-
微服务和多租户增加了跨账户跟踪依赖关系的复杂性。
为了解决这些问题,Buy With Prime使用了专为特定需求定制的CloudWatch仪表盘。这有助于关注关键问题并加速理解。此外,他们利用CDK来标准化并强制执行使用亚马逊云科技服务的团队之间一致的观测配置。
Jimin展示了Buy With Prime使用的一些量身定制的仪表盘:
-
关键系统摘要,包括可用性、延迟和流量。用于常规运营审查,以快速传达状态。
-
所有服务的可用性跟踪,包括目标和历史数据。可用性是根据请求数量而非简单的正常运行时间来计算的,以更准确地反映用户体验。
-
购物者体验指标,如结账可用性,分为每个步骤以确定问题。
这些仪表盘的数据来自微服务本身,因为它们需要有效地管理其服务。然而,Buy With Prime如何确保每个团队在收集正确的一致的指标?这就是CDK发挥作用的地方。
监控CDK由四个部分组成:仪表板、指标、警报和日志记录。它定义了所有团队通过创建服务仪器最佳实践的集中存储库来利用的标准。Jimin展示了CDK如何整合建议的指标,如API网关和Lambda等资源的代码片段。它还根据触发SNS和SQS等服务中自动化工单提交和升级的SLA配置警报。预构建的CloudWatch日志Insights查询和贡献者Insights规则加速了调查速度。
采用CDK避免了重复和分散的努力,节省了50个工程年的努力。它提供了关键观测数据被捕获并在Buy With Prime在亚马逊云科技上的复杂多租户架构中高效利用的信心。
总的来说,主要收获包括:
-
通过使用亚马逊云科技服务的自动化管道测试验证租户隔离。Buy With Prime共享了一个开源测试运行器,以帮助团队开始。
-
关注关键指标,并利用CDK强制执行一致的标准,从而消除亚马逊云科技上的重复工作。Buy With Prime开源了一个用于观测的示例CDK。
主讲人实现了他们的目标,即传授现实世界的最佳实践和有形资源,以便观众可以改进自己在亚马逊云科技上的软件即服务运营卓越。他们慷慨地分享他们的学习成果,旨在不仅帮助与会者,还帮助更广泛的工程社区在亚马逊云科技平台上构建安全且可扩展的多租户服务。
下面是一些演讲现场的精彩瞬间:
大卫·拉莫斯在亚马逊云科技举行的re:Invent上向观众介绍了他的共同演讲者琼·约恩和吉米·金。
在这次演讲中,他回顾了三人过去11年在亚马逊的工作经历,包括参与诸如Alexa和Prime购物等创新机器学习项目。
亚马逊云科技的领导者们分享了他们如何将亚马逊内部的最佳实践应用于客户,从而激发客户采用这些做法。
为了验证代码功能并模拟生产环境,By Prime的预生产环境分为Alpha、Beta和Gamma三个阶段。
在进行IAM策略时,请务必注意租户隔离边界并将之作为资源和条件纳入考虑。
领导者们还描述了亚马逊云科技是如何与一个多元化的利益相关者群体定期进行运营指标审查会议,以便更好地了解关键事件和服务。
总结
大卫·拉莫斯(David Ramos)介绍了一种名为“Prime会员直接购买”的服务,该服务允许数百万Prime会员直接在商家网上购物,享受快速发货、轻松结账和无烦恼的退货服务。商家可以将此服务集成到其网站中以提高转化率。该架构采用了微服务方法,以提高开发人员的效率和快速功能迭代。关键方面在于多重租户,即每个服务都在每个账户之间隔离租户资源。租户ID会跟踪跨服务的活动。
胡安·杨探讨了“Prime会员直接购买”如何在管道中验证租户隔离的问题。测试运行者会通过模拟角色访问资源来检查权限。具有不正确账户或租户ID的负面情况将被拒绝访问。具有正确凭据的成功案例则可以通过。胡安还提供了实现自动租户隔离检查的示例代码。
吉米金解释了如何利用亚马逊云科技(Amazon Web Services)的CDK来实现“Prime会员直接购买”的可观察性。CDK提供监控结构,以跨服务标准化指标、仪表板、警报和日志。这增强了跨账户和租户的可视性。吉米展示了一些用于指标、警报、日志和贡献者洞察的代码片段。开源CDK提供了示例Web应用程序、仪表板和可观察性配置。
总的来说,“Prime会员直接购买”通过CDK实现了健壮的租户隔离验证和一致的可观察性。开源项目提供了模仿这些最佳实践的起点。关键收获是通过自动化和标准化在规模上产生了信心。
演讲原文
https://blog.csdn.net/just2gooo/article/details/134795247
想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!
2023亚马逊云科技re:Invent全球大会 - 官方网站
点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!
点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!
即刻注册亚马逊云科技账户,开启云端之旅!
【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”
亚马逊云科技是谁?
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。