QuickStart: 部署ASP。 NET适用于 Elastic Beanstalk - AWS Elastic Beanstalk

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

QuickStart: 部署ASP。 NET适用于 Elastic Beanstalk

本 QuickStart 教程将引导您完成创建的过程ASP。 NET应用程序并将其部署到 AWS Elastic Beanstalk 环境中。

注意

本 QuickStart 教程仅用于演示目的。请勿将本教程中创建的应用程序用于生产流量。

你的 AWS 账户

如果您还不是 AWS 客户,则需要创建一个 AWS 帐户。注册后,您就可以访问 Elastic Beanstalk AWS 和其他所需的服务。

如果您已经有一个 AWS 帐户,则可以继续前进先决条件

注册获取 AWS 账户

如果您没有 AWS 账户,请完成以下步骤来创建一个。

报名参加 AWS 账户
  1. 打开https://portal.aws.amazon.com/billing/注册。

  2. 按照屏幕上的说明进行操作。

    在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。

    当您注册时 AWS 账户,就会创建AWS 账户根用户一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

AWS 注册过程完成后会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/ 并选择我的账户来查看当前的账户活动并管理您的账户。

创建具有管理访问权限的用户

注册后,请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center,启用并创建管理用户,这样您就不会使用 root 用户执行日常任务。

保护你的 AWS 账户根用户
  1. 选择 Root 用户并输入您的 AWS 账户 电子邮件地址,以账户所有者的身份登录。AWS Management Console在下一页上,输入您的密码。

    要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的以根用户身份登录

  2. 为您的 root 用户开启多重身份验证 (MFA)。

    有关说明,请参阅《用户指南》中的 “为 AWS 账户 root 用户(控制台)启用虚拟MFA设备” IAM。

创建具有管理访问权限的用户
  1. 启用 “IAM身份中心”。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的启用 AWS IAM Identity Center

  2. 在 IAM Identity Center 中,向用户授予管理访问权限。

    有关使用 IAM Identity Center 目录 作为身份源的教程,请参阅《用户指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户访问权限

以具有管理访问权限的用户身份登录
将访问权限分配给其他用户
  1. 在 IAM Identity Center 中,创建一个遵循应用最低权限权限的最佳实践的权限集。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的创建权限集

  2. 将用户分配到一个组,然后为该组分配单点登录访问权限。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的添加组

先决条件

本 QuickStart 教程将引导你使用 Visual Studio 创建 “Hello World” 应用程序并将其部署到 Elastic Beanstalk 环境中。 AWS Toolkit for Visual Studio

Visual Studio

要下载和安装 Visual Studio,请按照 Visual Studio 下载页面上的说明进行操作。此示例使用 Visual Studio 2022。在 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应用程序
  1. 启动视觉工作室。在 “文件” 菜单中,选择 “新建”,然后选择 “项目”。

  2. 将显示 “创建新项目” 对话框。选择ASP。 NET网络应用程序 (. NET框架),然后选择 “下一步”。

  3. 在 “配置您的新项目” 对话框中,输入eb-aspnet您的项目名称。从 “框架” 下拉菜单中选择。 NET框架 4.8,然后选择 “创建”。

    记下项目目录。在此示例中,项目目录为C:\Users\Administrator\source\repos\eb-aspnet\eb-aspnet

  4. 新建一个ASP。 NET将显示 “Web 应用程序” 对话框。选择模板。接下来选择创建

    此时,你已经创建了一个空的ASP。 NET使用 Visual Studio 的网络应用程序项目。接下来,我们将创建一个 Web 表单,该表单将用作的入口点ASP。 NET网络应用程序。

  5. 从 “项目” 菜单中选择 “添加新项目”。在 “添加新项目” 页面上,选择 “Web 表单” 并将其命名Default.aspx。接下来选择添加

  6. 将以下内容添加到 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应用程序
  1. 解决方案资源管理器中,右键单击您的应用程序,然后选择发布到 AWS Elastic Beanstalk

  2. 为您的新 Elastic Beanstalk 应用程序和环境选择一个名称。

  3. 此后,您可以继续使用 Elastic Beanstalk 提供的默认设置,也可以根据自己的喜好修改任何选项和设置。

  4. 在 “审阅” 页面上,选择 “部署”。这将打包你的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。

终止环境
  1. AWS Explorer 中,展开 Elastic Beanstalk 节点和应用程序节点。右键单击应用程序环境,选择 Terminate Environment(终止环境)。

  2. 当系统提示时,选择以确认要终止该环境。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 控制台启动示例应用程序。有关详细步骤,请参阅本指南入门一章中的创建示例应用程序