迁移词汇表 - Amazon Elastic Beanstalk
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

迁移词汇表

本词汇表提供了与 IIS、Elastic Beanstalk 以及 IIS 应用程序迁移到 Elastic Beanstalk 相关的关键术语和概念的定义。

Windows、IIS 和.NET 条款

IIS

互联网信息服务,微软开发的用于Windows Server的网络服务器软件。IIS 托管网站、Web 应用程序和 Web 服务,为运行 ASP.NET 和其他 Web 技术提供了一个平台。在迁移到 Elastic Beanstalk 期间,IIS 站点及其配置会被打包并部署到云中的 Windows 服务器实例。 Amazon

支持 IIS 7.0 及更高版本进行迁移,Windows Server 2016 或更高版本上的 IIS 10.0 提供了最兼容的环境。

.NET 框架

微软开发的软件开发平台,用于构建和运行 Windows 应用程序。它提供了一个名为框架类库 (FCL) 的大型类库,并支持多种编程语言之间的语言互操作性。

迁移到 Elastic Beanstalk 时,基于.NET 框架构建的应用程序将继续在云环境中的相同版本的框架上运行。Elastic Beanstalk 在其 Windows 服务器平台上支持多个.NET 框架版本 (4.x)。

.NET 内核

.NET Framework 的跨平台开源继任者,旨在更加模块化和轻量化。.NET Core(现在简称.NET 5 及更高版本)使开发人员能够构建在 Windows、Linux 和 macOS 上运行的应用程序。

将基于.NET Core 构建的应用程序迁移到 Elastic Beanstalk 时,您可以根据应用程序的要求和依赖关系在 Windows 服务器平台或基于 Linux 的平台之间进行选择。

公共语言运行时 (CLR)

.NET 框架的虚拟机组件,用于管理.NET 程序的执行。CLR 提供诸如内存管理、类型安全、异常处理、垃圾收集和线程管理等服务。

迁移到 Elastic Beanstalk 时,相应的 CLR 版本将在你选择的 Windows Server 平台上自动可用,从而确保与应用程序要求兼容。

站点

IIS 中的逻辑容器,表示 Web 应用程序或服务,由 IP 地址、端口和主机标头的唯一绑定标识。每个 IIS 站点都有自己的应用程序池、绑定和配置设置,并且可以包含一个或多个应用程序。

应用程序

IIS 站点内的一组内容和代码文件,用于处理对特定 URL 空间的请求。IIS 中的应用程序可以有自己的配置设置,这些设置通常存储在web.config文件中。

迁移到 Elastic Beanstalk 时,应用程序会保留其路径结构和配置设置。迁移过程可确保嵌套应用程序在云环境中保持其层次结构和 URL 路径。

ApplicationPool

一项 IIS 功能,可隔离 Web 应用程序以实现更好的安全性、可靠性和性能管理。应用程序池定义应用程序的运行时环境,包括.NET Framework 版本、管道模式和身份设置。

VirtualDirectory

IIS 中的一种目录映射,允许从网站根目录之外的位置提供内容。虚拟目录使您能够跨不同的物理位置组织内容,同时向用户提供统一的 URL 结构。

迁移到 Elastic Beanstalk 时,会保留虚拟目录及其路径映射。该eb migrate命令在云环境中创建必要的目录结构和配置,以保持相同的 URL 路径。

ARR

应用程序请求路由,一种 IIS 扩展,可为 Web 服务器提供负载平衡和代理功能。ARR 支持基于 URL 的路由、HTTP 请求转发和跨多个服务器的负载分配。

在迁移到 Elastic Beanstalk 期间,通过在实例上安装 ARR EC2 功能和配置适当的路由规则,可以保留 ARR 配置。对于复杂的路由方案,迁移过程也可以利用 Application Load Balancer 规则来实现类似的功能。

网址重写

一个 IIS 模块,可在请求到达 Web 应用程序之前 URLs 根据定义的规则对其进行修改。URL 重写支持基于模式和条件的 URL 操作、重定向和内容传送。

迁移到 Elastic Beanstalk 时,文件web.config中的 URL 重写规则会尽可能转换为 ALB 路由规则,或者保留在实例上的 IIS 配置中。 EC2 这可确保 URL 模式和重定向在云环境中继续按预期运行。

msdeploy.exe

用于将 Web 应用程序和网站部署到 IIS 服务器的命令行工具。也称为 Web Deploy,它提供了一种打包、同步和部署 Web 应用程序、网站和服务器配置的方法。

在迁移到 Elastic Beanstalk 期间,该eb migrate命令使用 Web Deploy(3.6 或更高版本)来打包您的应用程序。必须将此工具安装在源服务器上,迁移过程才能正常运行。

物理路径

存储 IIS 站点或应用程序内容文件的实际文件系统位置。物理路径可以指向 IIS 服务器可以访问的本地目录、网络共享或其他存储位置。

在迁移到 Elastic Beanstalk 期间,物理路径会映射到您环境中实例 EC2 上的相应位置。迁移过程保留了内容结构,同时确保所有文件都正确部署到云环境中。

应用程序主机.config

IIS 的根配置文件,用于定义服务器范围的设置,并包含所有站点、应用程序和虚拟目录的配置。此文件位于%windir%\System32\inetsrv\config目录中,用于控制 IIS 服务器的整体行为。

迁移到 Elastic Beanstalk 时,会从中提取相关applicationHost.config设置并将其应用于环境中实例 EC2 上的 IIS 配置。这样可以确保在迁移期间保留服务器范围的设置。

网络配置

ASP.NET 应用程序中使用的基于 XML 的配置文件,用于控制应用程序或目录级别的应用程序设置、安全性和行为。 web.config文件可以包含身份验证、授权、会话状态、编译和自定义应用程序参数的设置。

在迁移到 Elastic B web.config eanstalk 期间,文件会保留并与您的应用程序一起部署。迁移过程可确保特定于应用程序的配置在云环境中继续按预期运行。

DefaultDocument

一项 IIS 功能,当用户在不指定文件名的情况下请求目录时,它会指定要使用的默认文件。默认情况下,默认文档处于启用状态,IIS 7 将文件中的以下默认文档applicationHost.config文件定义为服务器范围的默认文档:Default.htm、Default.asp、Index.htm、Index.html、Iisstart.htm

迁移到 Elastic Beanstalk 时,默认文档设置将保留在实例的 IIS 配置中,从而确保 EC2 在云环境中以一致的方式处理目录请求。

System.web 服务器

web.config或中的配置部分applicationHost.config,其中包含模块、处理程序和其他服务器行为的 IIS 特定设置。本节控制 IIS 如何处理请求、管理模块和配置服务器功能。

在迁移到 Elastic Beanstalk 期间,System.WebServer 配置将保留在应用程序的文件中,并web.config应用于环境中实例上的 IIS 安装。 EC2 这可确保在云环境中保持特定于 IIS 的行为。

Elastic Beanstalk 术语

平台

操作系统、编程语言运行时、Web 服务器、应用服务器和 Elastic Beanstalk 组件的组合,用于定义运行应用程序的软件堆栈。

对于 Windows 迁移,Elastic Beanstalk 提供了基于 Windows Server 2016、2019 和 2022 的平台,包括 IIS 和各种.NET 框架版本,以确保与您的源环境兼容。

SolutionStack

Elastic Beanstalk 中的一种预定义平台配置,用于指定运行应用程序所需的操作系统、运行时和其他组件。在概念上与平台相同,可以互换用于操作环境。

在迁移过程中,该eb migrate命令会根据源环境的配置选择适当的解决方案堆栈,从而确保与 IIS 应用程序的兼容性。

CreateEnvironment

一个 Elastic Beanstalk API 操作,用于创建用于托管应用程序版本的新环境。eb migrate命令使用此 API 为您迁移的应用程序配置必要的 Amazon 资源。

迁移过程会根据您的源 IIS 环境配置相应的环境参数,包括实例类型、环境变量和选项设置。

CreateApplicationVersion

一个 Elastic Beanstalk API 操作,用于根据存储在 Amazon S3 中的源包创建新的应用程序版本。该eb migrate命令使用此 API 将你打包的 IIS 应用程序注册为 Elastic Beanstalk 中的一个版本。

在迁移过程中,您的应用程序文件和配置会被打包、上传到 Amazon S3,并在部署之前注册为应用程序版本。

DescribeEvents

一个 Elastic Beanstalk API 操作,用于检索环境的事件列表,包括部署、配置更改和操作问题。该eb migrate命令使用此 API 来监控您的迁移进度。

您还可以在迁移后使用eb events命令来查看您的环境的事件历史记录。

DescribeEnvironmentHealth

一个 Elastic Beanstalk API 操作,用于提供有关实例和环境其他组件的详细运行状况信息。此 API 用于在部署后验证迁移应用程序的运行状况。

迁移后,您可以使用eb health命令检查环境的状态并确定需要注意的任何问题。

健康D

Elastic Beanstalk 中的一种监控代理,用于收集环境中实例的指标、监控日志和报告运行 EC2 状况。HealthD 为您迁移的应用程序提供了增强的运行状况报告。

迁移后,HealthD 会监控应用程序的性能、资源利用率和请求成功率,从而全面了解您的环境的运行状况。

捆绑日志

Elastic Beanstalk 中的一项功能,用于压缩实例中的日志 EC2 并将其上传到 Amazon S3 以进行集中存储和分析。此功能可帮助您解决已迁移应用程序的问题。

迁移后,您可以使用eb logs命令从您的环境中检索和查看日志。

aws-windows-deployment-manifest.json

描述软件包或应用程序的内容、依赖关系和配置的文件。此清单是在迁移过程中生成的,用于定义应如何在 Elastic Beanstalk 上部署您的 IIS 应用程序。

自定义清单部分

其中的一个部分aws-windows-deployment-manifest.json,提供对应用程序部署的自定义控制。本节包含在部署过程中执行的 PowerShell脚本和命令。

在迁移过程中,会生成自定义清单部分来处理 IIS 配置的特定方面,例如虚拟目录设置、权限管理和应用程序池配置。

EB CLI

一种命令行工具,提供用于创建、配置和管理 Elastic Beanstalk 应用程序和环境的命令。EB CLI 包含专门用于将 IIS 应用程序迁移到 Elastic Beanstalk 的eb migrate命令。

迁移后,您可以继续使用 EB CLI 来管理您的环境、部署更新、监控运行状况和执行其他管理任务。

选项设置

用于定义 Elastic Beanstalk 如何在您的环境中配置 Amazon 和配置资源的配置值。选项设置按命名空间进行组织,这些命名空间代表环境的不同组件,例如负载均衡器、实例和环境进程。

在迁移过程中,该eb migrate命令会根据您的 IIS 配置生成相应的选项设置,以确保您的云环境与源环境的功能相匹配。有关更多信息,请参阅《Elastic Beanstalk 开发者指南》中的配置选项

aws: elbv2: listener: default

应用程序负载均衡器上默认侦听器的 Elastic Beanstalk 配置命名空间。在迁移过程中,将根据您的 IIS 站点绑定配置此命名空间,以确保正确的流量路由。

默认侦听器通常处理端口 80 上的 HTTP 流量,然后根据路由规则将这些流量转发到您的应用程序实例。

aws: elbv2: listener: listener_port

应用程序负载均衡器上特定侦听器端口的 Elastic Beanstalk 配置命名空间。此命名空间用于为迁移的应用程序配置其他侦听器,例如端口 443 上的 HTTPS。

在迁移过程中,将基于 IIS 站点的端口绑定创建监听器,从而确保您的应用程序在与源环境相同的端口上仍可访问。

aws: elbv2: listenerRule: rule_name

一个 Elastic Beanstalk 配置命名空间,用于为应用程序负载均衡器监听器定义路由规则。这些规则决定如何根据路径模式或主机标头将传入的请求路由到不同的目标组。

在迁移过程中,将创建监听器规则以匹配您的 IIS 应用程序的 URL 结构,从而确保将请求路由到正确的应用程序路径。

aws: elasticbeanstalk: 环境:进程:默认

环境中默认进程的 Elastic Beanstalk 配置命名空间。此命名空间定义了默认 Web 应用程序进程的配置方式,包括运行状况检查设置、端口映射和代理设置。

在迁移过程中,将根据主 IIS 站点的设置配置默认进程,从而确保适当的运行状况监控和请求处理。

aws: elasticbeanstalk: 环境:进程:process_name

环境中特定命名进程的 Elastic Beanstalk 配置命名空间。此命名空间允许您定义具有不同配置的多个进程,类似于在 IIS 中拥有多个应用程序池。

在迁移过程中,可能会创建其他进程来表示与源环境不同的站点绑定。

注意

有关本主题中描述的某些术语的更多信息,请参阅以下资源:

Python 术语

pip

Python 的软件包安装程序,用于安装和管理用 Python 编写的软件包。EB CLI 是使用 pip 安装和更新的。

在迁移过程中,pip 用于在源服务器上安装 EB CLI 包及其依赖关系,从而提供迁移所需的工具。

pypi

Python Package Index,第三方 Python 软件包的官方存储库,pip 从中检索和安装软件包。EB CLI 及其依赖项托管在 PyPI 上。

安装用于迁移的 EB CLI 时,pip 会连接到 PyPI 以下载和安装必要的软件包。

virtualenv

一种用于创建隔离的 Python 环境的工具,允许不同的项目在没有冲突的情况下拥有自己的依赖关系和包。建议在安装 EB CLI 时使用 virtualenv,以避免与其他 Python 应用程序发生冲突。

在安装 EB CLI 之前创建虚拟环境可确保迁移工具拥有一个干净、隔离的环境,并具有正确的依赖关系。

pywin32

一组 Python 扩展,提供对许多 Windows 的访问权限 APIs,允许与 Windows 操作系统及其组件进行交互。在迁移期间,EB CLI 使用 pywin32 与 Windows 特定的功能进行交互。

在迁移过程中,pywin32 用于访问 IIS 配置、Windows 注册表设置以及正确打包和迁移应用程序所需的其他系统信息。

pythonnet

一个允许 Python 代码与.NET 框架和.NET 核心应用程序交互的软件包。这种集成允许 EB CLI 在迁移过程中使用.NET 组件。

在分析和打包应用程序以部署到 Elastic Beanstalk 时,迁移过程可能会使用 pythonnet 与.NET 程序集和组件进行交互。