本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
第 3 阶段:基于 Wave 的实现
基于波浪的实施阶段侧重于选择 AWS 微服务来取代传统系统的特定功能,然后分批实现这些服务。以下建议可以帮助您确定先对哪些功能进行现代化改造的优先顺序,然后逐步将更改部署到生产中。
重要
在实施以下任何浪潮小组之前,请务必咨询主要利益相关者并获得其批准。建议在创建这些组时使用迭代方法,而不是仅仅依赖能力矩阵的评分标准。
重点关注领域
根据依赖项数量、业务优先级和复杂程度,使用一系列优先级标准将功能分为三个实施阶段
选择可提供与传统 IT 系统相同功能的云原生 AWS 微服务
配置设置所选 AWS 微服务所需的基础 AWS 基础设施
一波又一波地逐步推出生产变更
第 1 步:根据依赖项数量、业务优先级和复杂程度来组织权能
使用关键利益相关者的意见以及能力矩阵中的加权分数,将遗留系统的能力分为以下三个主要组:
注意
大多数实现还需要使用许多子波组。本指南仅出于示例目的概述了三个主要波浪组。
第 1 波能力
依赖项数量 | 无或非常低 |
业务优先级 | 低 |
复杂性 | 低 |
第 2 波功能
依赖项数量 | 从低到中 |
业务优先级 | 从低到中 |
复杂性 | 中 |
第 3 波能力
依赖项数量 | 高 |
业务优先级 | 中到高 |
复杂性 | 中到高 |
第 2 步:选择 AWS 微服务以取代传统 IT 系统的功能
与主要利益相关者协调,使用迭代流程来审查并最终确定要实现现代化的功能顺序。然后,选择 AWS 微服务来取代传统 IT 系统的功能。
以下是 AWS 微服务的一些示例,这些微服务通常可用于替换属于每个浪潮组的功能:
第 1 波 AWS 微服务示例
AWS Lambda
Amazon Simple Queue Service(Amazon SQS)
Amazon Simple Notification Service (Amazon SNS)
Amazon API Gateway
注意
通过使用扼杀迁移模式,可以将 Wave 1 功能与最少的 AWS 基础服务集成。有关更多信息,请参阅 AWS 博客上的使用扼杀模式无缝迁移本地传统工作负载
第 2 波 AWS 微服务示例
基于 AWS Step Functions 的工作流程
适合用途的数据库(迁移到 Aurora PostgreSQL)
AWS SaaS 工厂
注意
第 2 波功能通常涉及一定程度的数据库现代化,例如迁移到兼容 PostgreSQL 的数据库。要维护混合云解决方案,通常还需要将旧数据库与新的云原生数据库同步。
第 3 波 AWS 微服务示例
AWS Fargate
实时推荐引擎,例如亚马逊 Textract、Amazon Comprehend、Amazon Rekognition 和亚马逊模型 SageMaker
可扩展的数据湖,例如亚马逊简单存储服务 (Amazon S3) Service 和 AWS Lake Formation
专门构建的亚马逊分析服务,例如亚马逊 Athena、亚马逊 EMR、亚马逊 OpenSearch 服务、亚马逊 Kinesis 和亚马逊 Redshift
无缝数据移动服务,例如 AWS Glue 和 AWS App Mesh
注意
Wave 3 功能通常具有大量依赖关系,通常需要与其他微服务集成。这些属性使得 Wave 3 功能很适合被基于容器的微服务所取代。
步骤 3:配置设置所选 AWS 微服务所需的基础 AWS 基础设施
与主要利益相关者一起审查并最终确定基于云的目标架构后,配置设置所选的 AWS 微服务所需的 AWS 基础设施。
基础 AWS 基础设施资源示例
AWS Control Tower
和着陆区 AWS Or
ganizations 组织单位和服务控制政策 (SCPs) Amazon API Gateway
APIs AWS 数据库服务,例如亚马逊关系数据库服务 (Amazon RDS)
Amazon CloudWatch
控制面板和警报 亚马逊简单通知服务 (Amazon SNS) Simple Notification S
ervice 主题和订阅 Amazon Cognito
和用户池
第 4 步:在波浪中实现更改
在测试环境中按顺序实现每个波组。当每个波组准备好投入生产时,请测试系统的功能并调试测试环境中的所有问题。然后,逐步切断对生产环境的更改。
以下是对通常与实现每个波浪组相关的任务类型的高级描述:
第 1 波实现
创建无服务器 Lambda 函数
将 Lambda 函数与 API Gateway 服务集成
使用 Amazon Cognito、IAM、Okta 和 Ping Identity 等工具配置身份验证和授权系统
对于混合云架构,请使用服务网格(例如 AWS App Mes
h)设置代理层。
第 2 波实现
配置 AWS App Mesh,包括您的服务网格、虚拟服务、节点、路由和代理
在 AWS Fargate 或亚马逊 Elastic Kubernetes Service(亚马逊 EKS)中设置容器
将代理层与前端系统集成
第 3 波实现
完成复杂的数据迁移和集成
实施涉及多个微服务的最复杂的工作流程