本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
QuickStart: 部署ASP。 NET适用于 Elastic Beanstalk
本 QuickStart 教程将引导您完成创建的过程ASP。 NET应用程序并将其部署到 AWS Elastic Beanstalk 环境中。
注意
本 QuickStart 教程仅用于演示目的。请勿将本教程中创建的应用程序用于生产流量。
Sections
你的 AWS 账户
如果您还不是 AWS 客户,则需要创建一个 AWS 帐户。注册后,您就可以访问 Elastic Beanstalk AWS 和其他所需的服务。
如果您已经有一个 AWS 帐户,则可以继续前进先决条件 。
注册获取 AWS 账户
如果您没有 AWS 账户,请完成以下步骤来创建一个。
报名参加 AWS 账户
按照屏幕上的说明进行操作。
在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。
当您注册时 AWS 账户,就会创建AWS 账户根用户一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务。
AWS 注册过程完成后会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/
创建具有管理访问权限的用户
注册后,请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center,启用并创建管理用户,这样您就不会使用 root 用户执行日常任务。
保护你的 AWS 账户根用户
-
选择 Root 用户并输入您的 AWS 账户 电子邮件地址,以账户所有者的身份登录。AWS Management Console
在下一页上,输入您的密码。 要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的以根用户身份登录。
-
为您的 root 用户开启多重身份验证 (MFA)。
有关说明,请参阅《用户指南》中的 “为 AWS 账户 root 用户(控制台)启用虚拟MFA设备” IAM。
创建具有管理访问权限的用户
-
启用 “IAM身份中心”。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的启用 AWS IAM Identity Center。
-
在 IAM Identity Center 中,向用户授予管理访问权限。
有关使用 IAM Identity Center 目录 作为身份源的教程,请参阅《用户指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户访问权限。
以具有管理访问权限的用户身份登录
-
要使用您的 Ident IAM ity Center 用户登录URL,请使用您在创建 Ident IAM ity Center 用户时发送到您的电子邮件地址的登录信息。
有关使用 Ident IAM ity Center 用户登录的帮助,请参阅《AWS 登录 用户指南》中的登录 AWS 访问门户。
先决条件
本 QuickStart 教程将引导你使用 Visual Studio 创建 “Hello World” 应用程序并将其部署到 Elastic Beanstalk 环境中。 AWS Toolkit for Visual Studio
Visual Studio
要下载和安装 Visual Studio,请按照 Visual Studio 下载页面
-
在 “工作负载” 选项卡上,选择ASP。 NET和网络开发。
-
在 “单个组件” 选项卡上,选择。 NET框架 4.8 开发工具和. NET框架项目和项模板。
AWS Toolkit for Visual Studio
要下载和设置, AWS Toolkit for Visual Studio 请按照《 AWS Toolkit for Visual Studio 用户指南》的 “入门” 主题中的说明进行操作。
步骤 1:创建一个ASP. NET应用程序
接下来,创建一个要部署到 Elastic Beanstalk 环境的应用程序。我们将创建一个 “Hello World” ASP。 NET网络应用程序。
创建ASP. NET应用程序
-
启动视觉工作室。在 “文件” 菜单中,选择 “新建”,然后选择 “项目”。
-
将显示 “创建新项目” 对话框。选择ASP。 NET网络应用程序 (. NET框架),然后选择 “下一步”。
-
在 “配置您的新项目” 对话框中,输入
eb-aspnet
您的项目名称。从 “框架” 下拉菜单中选择。 NET框架 4.8,然后选择 “创建”。记下项目目录。在此示例中,项目目录为
C:\Users\Administrator\source\repos\eb-aspnet\eb-aspnet
。 -
新建一个ASP。 NET将显示 “Web 应用程序” 对话框。选择空模板。接下来选择创建。
此时,你已经创建了一个空的ASP。 NET使用 Visual Studio 的网络应用程序项目。接下来,我们将创建一个 Web 表单,该表单将用作的入口点ASP。 NET网络应用程序。
-
从 “项目” 菜单中选择 “添加新项目”。在 “添加新项目” 页面上,选择 “Web 表单” 并将其命名
Default.aspx
。接下来选择添加。 -
将以下内容添加到
Default.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="eb_aspnet.Default" %> <!DOCTYPE html> <html xmlns="https://www.w3.org/1999/xhtml"> <head runat="server"> <title>Hello Elastic Beanstalk!</title> </head> <body> <form id="body" runat="server"> <div> Hello Elastic Beanstalk! This is an ASP.NET on Windows Server application. </div> </form> </body> </html>
步骤 2:在本地运行应用程序
在 Visual Studio 中,从 “调试” 菜单中选择 “开始调试”,在本地运行应用程序。页面应显示 “你好 Elastic Beanstalk!这是一个ASP. NET在 Windows 服务器应用程序上。”
步骤 3:部署你的ASP. NET使用应用程序 AWS Toolkit for Visual Studio
按照以下步骤创建 Elastic Beanstalk 环境并将您的新应用程序部署到该环境中。
创建环境并部署您的ASP. NET应用程序
-
在解决方案资源管理器中,右键单击您的应用程序,然后选择发布到 AWS Elastic Beanstalk。
-
为您的新 Elastic Beanstalk 应用程序和环境选择一个名称。
-
此后,您可以继续使用 Elastic Beanstalk 提供的默认设置,也可以根据自己的喜好修改任何选项和设置。
-
在 “审阅” 页面上,选择 “部署”。这将打包你的ASP. NETWeb 应用程序并将其部署到 Elastic Beanstalk。
Elastic Beanstalk 创建您的环境大约需要五分钟。Elastic Beanstalk 部署功能将监控您的环境,直到部署了新代码的环境变得可用为止。在 Env: <
environment name
> 选项卡上,您将看到环境的状态。
第 4 步:在 Elastic Beanstalk 上运行你的应用程序
创建环境的过程完成后,Env: < environment name
> 选项卡会显示有关您的环境和应用程序的信息,包括URL用于启动应用程序的域。在此选项卡URL上选择此选项卡或将其复制并粘贴到您的网络浏览器中。
恭喜您!您已经部署了ASP. NET使用 Elastic Beanstalk 申请!
第 5 步:清理
使用完应用程序后,可以在中终止您的环境 AWS Toolkit for Visual Studio。
终止环境
-
在 AWS Explorer 中,展开 Elastic Beanstalk 节点和应用程序节点。右键单击应用程序环境,选择 Terminate Environment(终止环境)。
-
当系统提示时,选择是以确认要终止该环境。Elastic Beanstalk 需要几分钟才能 AWS 终止在环境中运行的资源。
AWS 您的应用程序的资源
您刚刚创建了一个单实例应用程序。它是一个简单的示例应用程序,只有一个EC2实例,因此不需要负载平衡或 auto Scaling。对于单实例应用程序,Elastic Beanstalk 会创建以下资源: AWS
-
EC2实例 — 配置为在您选择的平台上运行 Web 应用程序的 Amazon EC2 虚拟机。
各平台运行一组不同的软件、配置文件和脚本以支持特定的语言版本、框架、Web 容器或其组合。大多数平台使用 Apache 或 nginx 作为在 Web 应用程序前处理 Web 流量的反向代理,向其转发请求、提供静态资产以及生成访问和错误日志。
-
实例安全组 — 配置为允许端口 80 上的传入流量的 Amazon EC2 安全组。此资源允许来自负载均衡器的HTTP流量到达运行您的 Web 应用程序的EC2实例。默认情况下,其他端口不允许流量进入。
-
Amazon S3 存储桶 – 使用 Elastic Beanstalk 时创建的源代码、日志和其他构件的存储位置。
-
Amazon CloudWatch CloudWatch 警报 — 两个警报,用于监控您环境中实例的负载,并在负载过高或过低时触发。警报触发后,您的 Auto Scaling 组会扩展或收缩以进行响应。
-
AWS CloudFormation 堆栈 — Elastic AWS CloudFormation Beanstalk 用于在您的环境中启动资源并传播配置更改。这些资源在您可通过 AWS CloudFormation 控制台
查看的模板中定义。 -
域名-以以下形式路由到您的 Web 应用程序的域名
subdomain
.region
.elasticbeanstalk.com。
Elastic Beanstalk 管理所有这些资源。当您终止环境时,Elastic Beanstalk 会终止其包含的所有资源。
后续步骤
有了运行应用程序的环境以后,您随时可以部署新的应用程序版本或不同的应用程序。部署新应用程序版本的速度非常快,因为它不需要预置或重启EC2实例。您还可以使用 Elastic Beanstalk 控制台探索您的新环境。有关详细步骤,请参阅本指南 “入门” 一章中的 “探索您的环境”。
尝试更多教程
如果您想尝试其他包含不同示例应用程序的教程,请参阅QuickStart 对于。 NETWindows 上的 Core。
部署一两个示例应用程序并准备好开始开发和运行之后ASP。 NET本地应用程序,请参阅 设置 .NET 开发环境
使用 Elastic Beanstalk 控制台进行部署
您也可以使用 Elastic Beanstalk 控制台启动示例应用程序。有关详细步骤,请参阅本指南入门一章中的创建示例应用程序。