View a markdown version of this page

什么是 AWS Elastic Beanstalk? - AWS Elastic Beanstalk

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

什么是 AWS Elastic Beanstalk?

借助 Elastic Beanstalk,您可以在各种支持的 AWS 平台上将 Web 应用程序部署到云中。构建和部署应用程序。Elastic Beanstalk 预置亚马逊 EC2 实例或 EKS 集群,配置负载平衡,设置运行状况监控,动态扩展您的环境。

Elastic Beanstalk 提供两种模式:标准模式和集群模式。Beanstalk Standard 直接在 Amazon EC2 上运行应用程序,在运行较小或更少的应用程序时具有很高的性价比,并且支持 Windows 应用程序。Beanstalk Cluster 在 Amazon EKS 上运行应用程序,支持更快的部署、更快的自动扩展、运行多个环境时的资源利用率以及托管集成。 OpenTelemetry

下图描绘了两个 Beanstalk 标准环境:一个 Web 服务器环境和一个工作环境。

示意图显示了 Elastic Beanstalk 应用程序与环境之间的关系。 web/worker

下图描绘了两个 Beanstalk 集群环境共享一个 EKS 集群。

一个 Elastic Beanstalk 应用程序的两个 Beanstalk 集群环境共享一个服务运营的亚马逊 EKS 集群,因为它们位于同一个 AWS 账户中,使用相同的 VPC 子网集。每个环境都有可选的应用程序负载均衡器和隔离的应用程序副本。亚马逊 EKS 自动模式提供共享节点容量。

支持的平台

Elastic Beanstalk 支持使用 Go、Java、.NET、PHP Node.js、Python 和 Ruby 开发的应用程序。Elastic Beanstalk 还支持 Docker 容器,您可以选择自己的编程语言和应用程序依赖项。当您部署应用程序时,Elastic Beanstalk 会构建所选支持的平台版本,并在您的 AWS 账户中预置一个或多个 AWS 资源来运行您的应用程序。在 Beanstalk 集群模式下,不涉及任何平台;您需要提供容器镜像或来源,让 Elastic Beanstalk 构建成一个容器镜像或源代码。

您可以通过 Elastic Beanstalk 控制台、()、官方 GitHub 操作或 EB CLI AWS Command Line Interface (专为 Elastic Beanstalk 设计的高级命令行工具AWS CLI)与 Elastic Beanstalk 进行交互。您还可以使用 AWS CloudFormation (CloudFormation) 或通过提供商使用 Terraform 将环境定义为基础架构即 AWS 代码。

您可以直接从 Elastic Beanstalk Web 界面(控制台)执行大多数部署任务,例如更改扩展配置或监控应用程序。

有关如何使用 Elastic Beanstalk 部署示例 Web 应用程序的更多信息,请参阅了解如何开始使用 Elastic Beanstalk。

应用程序部署工作流程

要使用 Elastic Beanstalk,您需要创建一个应用程序,然后将应用程序源包上传到 Elastic Beanstalk。接下来,您提供有关应用程序的信息,然后 Elastic Beanstalk 会自动启动环境并创建和配置运行代码所需的 AWS 资源。

创建并部署应用程序,再启动环境后,即可管理环境并部署新应用程序版本。可通过 Elastic Beanstalk 控制台、API 或命令行界面查看有关应用程序的信息(包括指标、事件和环境状态)。

下图说明了 Elastic Beanstalk 的工作流程:

Elastic Beanstalk 工作流。

定价

Elastic Beanstalk 不收取额外费用。您只需为应用程序消耗的底层 AWS 资源付费。有关定价的详细信息,请参阅 Elastic Beanstalk 服务详细信息页面。

后续步骤

我们建议您先阅读教程(入门教程),以便开始使用 Elastic Beanstalk。本教程会逐步引导您创建、查看和更新示例 Elastic Beanstalk 应用程序。