AWS App2Container 和 .NET 工作负载

课程概览

模块 1:准备指南

 学习模块

概览

App2Container 徽章表明您对 AWS App2Container(A2C)现代化工具的精通程度。此准备指南分主题逐一解释了您需要了解哪些内容才能通过评测,并提供了可供您查看的资源。您还应该将该工具与自己的应用程序或 AWS 研讨会结合使用,获得实践经验。

准备就绪后,前往“模块 2”参加评测考试。

用途

AWS App2Container(A2C)可帮助您对现有应用程序进行容器化并将其迁移到 AWS。A2C 是一种命令行工具,利用此工具,您可以直接迁移在本地数据中心或虚拟机上运行的应用程序,并在由 Amazon Elastic Container Service(Amazon ECS)、Amazon Elastic Kubernetes Service(Amazon EKS)或 AWS App Runner 托管的容器中运行这些应用程序。

信息图:App2Container
A2C 用户指南:什么是 AWS App2Container?
Hello App2Container

优势

借助 App2Container,您可以节省基础设施成本和训练成本,加快实现现代化,并在不更改代码的情况下实现应用程序容器化。

AWS App2Container 产品详情页面

使用案例

A2C 的使用案例如下:

  • 维护传统应用程序并实现成本效益
  • 实现应用程序预置自动化
  • 构建和部署容器

AWS App2Container 产品详情页面 – 使用案例

支持的应用程序

App2Container 支持基于 Linux 的 Java 应用程序、基于 Windows 的 ASP.NET(.NET Framework)和基于 Linux 的 ASP.NET Core 应用程序。

  1. .NET Framework ASP.NET IIS Web 应用程序可以在 Amazon ECS 或 Amazon EKS 上的 Windows 容器中运行。
  2. 现代化 .NET Web 应用程序可以在 AWS App Runner、Amazon ECS 或 Amazon EKS 上的 Linux 容器中运行。
  3. Java 应用程序可以在 AWS App Runner、Amazon ECS 或 Amazon EKS 上 的 Linux 容器中运行。

A2C 用户指南:您可以使用 AWS App2Container 容器化的应用程序

流程

App2Container 的 4 步使用流程如下:

  1. 发现和分析:创建应用程序清单并分析运行时系统依赖关系
  2. 提取和容器化:提取有依赖关系的应用程序并创建 Docker 映像。
  3. 创建部署构件:生成 Amazon ECS 任务和 Kubernetes 容器组(pod)定义,并创建 CI/CD 管道。
  4. 部署到 AWS:在 Amazon ECR 中存储该映像,然后部署到 Amazon ECS 或 Amazon EKS。

AWS App2Container 产品详情页面 – 工作原理
A2C 用户指南:App2Container 的工作原理

功能

您应该了解以下功能:

  1. 应用程序清单:App2Container 会识别虚拟机中运行的受支持的 ASP.NET 和 Java 应用程序,以生成您环境中所有应用程序的全面清单。
  2. 详细依赖关系分析:App2Container 会分析正在运行的应用程序并识别依赖关系,包括已知的协作流程和网络端口依赖关系。
  3. 无缝部署:App2Container 会与 ECR、ECS 和 EKS 等各种 AWS 服务集成,遵循 AWS 针对安全性和可扩展性的最佳实践,为容器化应用程序生成 ECS 任务定义和 Kubernetes 部署 YAML。
  4. 与自动化管道的内置集成:App2Container 会为 Amazon DevOps(例如 CodeBuild 和 CodeDeploy)创建 CI/CD 管道,以构建和部署容器。
  5. 自动化应用程序预置:App2Container 会生成 CloudFormation 模板,用于配置所需的计算、网络和安全基础设施,以便在 AWS 中无缝部署容器化应用程序。
  6. 对多个来源的各种应用程序进行现代化改造:App2Container 可以容器化在本地、虚拟机、Amazon EC2 或其他云中运行的应用程序。

App2Container 功能

命令

您应该了解不同的 app2container 命令及其选项。

  1. app2container analyze 用于分析指定的应用程序并生成报告。
  2. app2container containerize 用于为您的应用程序创建 Docker 容器映像。
  3. app2container extract 用于为指定的应用程序生成应用程序存档。
  4. app2container generate app-deployment 用于生成所需的构件,以便在 AWS 中部署您的应用程序容器。
  5. app2container generate pipeline 用于生成所需的构件,以便使用 CodePipeline、Jenkins 或 Microsoft Azure DevOps 服务来创建 CI/CD 管道。
  6. app2container help 用于列出 App2Container 命令,并按照这些命令通常的运行阶段对其进行分组。
  7. app2container init 用于为 App2Container 执行一次性初始化任务。
  8. app2container inventory 用于记录应用程序服务器上运行的所有 Java 或 .NET 流程(Linux)或者所有 IIS 网站和 Windows 服务(Windows)。
  9. app2container remote analyze 用于分析目标应用程序服务器上的指定应用程序并生成报告。
  10. app2container remote configure 在 Worker 设备上运行,用以配置在应用程序服务器上运行远程工作流所需的连接。
  11. app2container remote extract 在 Worker 设备上运行,用以为目标应用程序服务器上的指定应用程序生成应用程序存档。
  12. app2container remote inventory 在 Worker 设备上运行,用以检索指定应用程序服务器上运行的所有 Java 或 .NET 流程(Linux)或所有 IIS 网站和 Windows 服务(Windows)的清单。
  13. app2container upgrade 用于升级您现有的 App2Container 安装。
  14. app2container upload-support-bundle 用于安全地将 App2Container 日志和支持构件上传给 AWS App2Container 支持团队,协助进行故障排除。

A2C 用户指南:App2Container 命令参考

实践经验

您应该在使用 App2Container 容器化一个或多个应用程序并将其部署到 AWS 方面具有经验。如果您没有可用的应用程序,可以使用下面的研讨会。

“借助 AWS App2Container 实现现代化”研讨会:容器化您的 .NET 应用程序

 AWS 使用经验

新手或中级

 .NET 使用经验

中级

 所需时间

最多 3 个小时,具体取决于以前的经验

 所需费用

10 美元

 使用的服务

Amazon ECS 和 AWS Fargate、Amazon Elastic Container Registry(ECR)、Amazon DynamoDB、Amazon VPC

 上次更新日期

2022 年 4 月 28 日

此页内容对您是否有帮助?

模块

此教程分为以下模块。您可以根据自己的经验和准备情况全面学习各个模块,也可以略读和复习。

  1. 准备指南(3 小时)。
  2. 技能评测(16 个问题,不计时):评测您在针对 .NET 工作负载的 AWS App2Container 工具方面的技能。