亚马逊AWS官方博客

参加 Graviton 挑战,迁移您的工作负载!

从今天开始,我们邀请您参加 Graviton 挑战,并将您的应用程序迁移到 Amazon Graviton2 上运行。这项挑战面向个人开发人员和小型团队,基于已经完成迁移的客户的体验。它提供了一个由八个大约四小时的区块组成的框架,用于准备、移植、优化并最终将应用程序部署到 Graviton2 实例上。您的应用程序可在 Graviton2 上运行,并获享更高的性价比,以及更多回馈。完成挑战者将获得丰厚的奖品和赠品!

Amazon Graviton2Amazon Web Services 开发,是基于 Arm64 架构的定制处理器。常用的 Linux 操作系统均支持该处理器,包括 Amazon Linux 2、Red Hat Enterprise Linux、SUSE Linux Enterprise Server 和 Ubuntu。与基于第五代 x86 的 Amazon Elastic Compute Cloud (Amazon EC2) 实例类型相比,Graviton2 实例类型的成本降低了 20%。总体而言,已将应用程序迁移到 Graviton2 的客户通常可以见证众多工作负载的性价比提高多达 40%,包括应用程序服务器、基于容器的应用程序、微服务、缓存队列、数据分析、视频编码、电子设计自动化、游戏、开源数据库等。

在深入探讨此挑战之前,请查看以下来自 Amazon Web Services 首席宣传官 Jeff Barr 和 EC2 副总裁 Dave Brown 的有趣介绍视频。正如 Jeff 在视频中提到的那样:同样的工作负载,可获得相同或更好的性能,性价比提高多达 40%!

在您完成挑战后,我们将邀请您分享您的采用之旅并参加比赛。如果您在社交媒体上发布标签为 #ITookTheGravitonChallenge 的帖子,您将获得一件 T 恤。若想获得连帽衫,请在帖子中包含一个短视频。

要参加比赛,您需要制作一段 5 至 10 分钟的视频,介绍您的项目和已完成迁移的应用程序、您需要克服的任何困难以及实现的性价比优势。

所有有效的参赛作品都将获得 500 USD 的 Amazon Web Services 服务抵扣金(仅限 500 个名额)。评委小组将对参赛作品进行评估,并颁发六个类别的额外奖品。所有类别的获奖者将获得 Amazon re:Invent 2021 会议通行证、机票和酒店(颁给获奖公司的一名代表),获奖者将能够在大会上与 Graviton2 团队的高级成员会面。以下是各类别奖项的其他奖品:

  • 最佳采用奖 – 大型企业
    面向拥有 1000 多名员工的公司,基于性能提升、总成本节省、工作负载上运行的实例数量以及迁移工作负载所用的时间(越快越好)。获奖者还将有机会出席会议。
  • 最佳采用奖 – 中小型企业
    面向拥有 100 至 1000 名员工的公司,基于性能提升、总成本节省、工作负载在其上运行的实例数量以及迁移工作负载所用的时间(越快越好)。获奖者还将有机会出席会议。
  • 最佳采用奖 – 初创公司
    面向少于 100 名员工的公司,基于性能提升、总成本节省、工作负载在其上运行的实例数量以及迁移工作负载所用的时间(越快越好)。获奖者还将有机会出席会议。
  • 最佳新工作负载采用奖
    授予初次使用 EC2 的工作负载(从本地或其他云迁移到 Graviton2),基于性能提升、总成本节省、工作负载在其上运行的实例数量以及迁移工作负载所用的时间(越快越好)。获奖者还将有机会参加视频或书面案例研究。
  • 最具影响力采用奖
    根据提供的有关工作负载/应用程序功能的详细信息,授予具有最大社会影响力的工作负载。此类别的应用程序涉及可持续发展、医疗保健和生命科学、环境保护、学习/教育、司法/公平等领域。获奖者还将有机会参加视频或书面案例研究。
  • 最具创意采用奖
    此类别的应用程序为客户解决了独特的问题,开发了新的使用案例,或者具有突破性。该奖项将基于工作负载描述、性价比提升和总成本节省。获奖者还将有机会参加视频或书面案例研究。

参赛作品提交通道将于 6 月 22 日开放,8 月 31 日关闭。获奖者名单将于 2021 年 10 月 1 日公布。

确定要迁移的工作负载
现在您已了解 Graviton2 的功能,您可能迫不及待想要开始并确定要处理的工作负载,参与挑战。理想的工作负载是已在 Linux 上运行并使用开源组件的工作负载。这意味着您将拥有对每个组件的源代码的完全访问权限,并可以轻松进行任何必要的更改。如果您没有完全基于开源的现有 Linux 工作负载,当然也可以迁移其他工作负载。由独立软件供应商 (ISV) 和 Amazon Web Services 服务组成的强大生态系统现已支持 Graviton2。但是,如果您使用的是不支持 Arm64/Graviton2 的供应商提供的软件,请联系 Graviton 挑战 Slack 频道以获取支持。

挑战涉及哪些方面?
挑战包括在四天内执行八个步骤(您不必在连续四天内完成挑战)。如果您需要 Graviton2 专家的帮助,可以使用专门的 Slack 频道,您可以注册以接收包含有用提示和指南的电子邮件。除了 Slack 支持和支持电子邮件之外,您还可获得 25 USD 的 Amazon Web Services 服务抵扣金,用于支付参加挑战所需的费用。基于 Graviton2 的突发 T4g 实例还提供免费试用(可在 2021 年 12 月 31 日之前使用),可用于对您的工作负载进行资格认定。

您可以从 Graviton 挑战页面下载完整的白皮书,这里提供了流程概要。

第 1 天: 学习和探索
第一天您将了解 Graviton2 然后评估您选择的工作负载。我建议您首先查看 2020 Amazon Web Services re:Invent 大会内容,深入了解由 Amazon Graviton2 处理器提供支持的 EC2 实例。在您应对挑战时,Amazon Graviton GitHub 存储库入门将成为有用的参考。

评估涉及确定应用程序的依赖关系和要求。与所有准备工作一样,现阶段的工作越彻底,就越有可能取得成功。因此,请勿在这项任务上有丝毫懈怠!

第 2 天: 制定计划并开始移植
第二天,您将创建一个 Graviton2 环境。您可以将 EC2 虚拟机实例与 Amazon Web Services 提供的映像结合使用,也可以构建自己的自定义映像。或者,您也可以选择容器路径,因为 Amazon Elastic Container Service (Amazon ECS)Amazon Elastic Kubernetes Service (EKS) 都支持基于 Graviton2 的实例。

创建环境后,您将引导启动应用程序。GitHub 入门指南包含各种语言的入门信息。如果您的应用程序使用 Java、Python、Node.js、.NET 或其他高级语言,那么可按原样运行,或者只需要极少的更改。其他语言(如 C、C++ 或 Go)需要针对 64 位 Arm 构架进行编译。有关更多信息,请参阅 GitHub 指南

第 3 天: 调试和优化
现在应用程序已在 Graviton2 环境中运行,是时候测试和验证其功能了。当您拥有功能齐全的应用程序时,可以测试性能并将其与 x86-64 环境进行比较。如果您没有获得预期的性能,请联系您的客户团队,或者通过 Graviton 挑战 Slack 频道获得支持。我们可帮助分析和解决任何潜在的性能差距。

第 4 天: 更新基础设施并开始部署
提交之日来临! 您将更新基础设施以添加基于 Graviton2 的实例,然后开始部署。我们建议您使用 Canary 或蓝绿部署,以便将部分流量重定向到新环境。在您方便的时候,您可以转换所有流量。

此时,您可以庆祝完成挑战,使用 #ITookTheGravitonChallenge 标签在社交媒体上发布帖子,分享您的成功,并考虑参加比赛。请记住,参赛作品提交通道将在 2021 年 8 月 31 日关闭。

立即开始挑战!
现在您已经了解了挑战和奖励的一些细节,接下来是时候启动您的(迁移)引擎了。从 Graviton 挑战登录页面下载白皮书,熟悉详细信息,然后开始吧! 如果您决定参加比赛,那我先祝您好运!

脚注
作为 Amazon Web Services 的 .NET Developer Advocate,如果我没有提到这个挑战同样适用于使用 .NET Core 或 .NET 5 及更高版本的 .NET 应用程序,那么这将是我的失职! 事实上,.NET 5 包括特定于 ARM64 的优化。有关我的同事发现在 Amazon Graviton2 上运行的 .NET 应用程序的性能改进的信息,请参阅 Powering .NET 5 with Amazon Graviton2: Benchmarks 博客文章Graviton2 上还有一个用于 .NET 5 的实验。我邀请您在 aws-graviton-getting-started GitHub 存储库中查看 .NET 的入门资料并开始迁移。

– Steve