本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Elastic Beanstalk 网络服务器环境
下图显示了一个 Web 服务器环境层的示例 Elastic Beanstalk 架构,并显示了这种环境层中各个组件协同工作的方式。
![AWS Elastic Beanstalk Web 服务器层架构图。](images/aeb-architecture2.png)
环境是应用程序的核心。在图中,环境显示在顶层实线内。创建环境时,Elastic Beanstalk 会预配置运行应用程序所需的资源。 AWS 为环境创建的资源包括一个弹性负载均衡器(ELB如图所示)、一个 Auto Scaling 组和一个或多个亚马逊弹性计算云 (AmazonEC2) 实例。
每个环境都有指向负载均衡器的 CNAME (URL)。环境有一个URL,比如myapp.us-west-2.elasticbeanstalk.com
。在 Amazon Rou URL te 53abcdef-123456.us-west-2.elb.amazonaws.com
gURL(类似于)。CNAMEAmazon Route 53
负载均衡器位于 Amazon EC2 实例的前面,这些实例是 Auto Scaling 组的一部分。Amazon A EC2 uto Scaling 会自动启动额外的亚马逊EC2实例,以适应应用程序不断增加的负载。如果您的应用程序负载减少,Amazon A EC2 uto Scaling 会停止实例,但始终让至少一个实例保持运行。
在 Amazon EC2 实例上运行的软件堆栈取决于容器类型。容器类型定义的是将在该环境中使用的基础设施拓扑和软件栈。例如,包含 Apache Tomcat 容器的 Elastic Beanstalk 环境使用 Amazon Linux 操作系统、Apache Web 服务器和 Apache Tomcat 软件。有关所支持的容器类型的列表,请参阅 Elastic Beanstalk 支持的平台。运行您的应用程序的每个 Amazon EC2 实例都使用其中一种容器类型。此外,每个 Amazon EC2 实例上都运行一个名为主机管理器 (HM) 的软件组件。主机管理器负责以下内容:
-
部署应用程序
-
聚合事件和指标,以便通过控制台API、或命令行进行检索
-
生成实例级事件
-
监控应用程序日志文件中是否有关键错误
-
监控应用程序服务器
-
修补实例组件
-
交替您的应用程序日志文件,并将它们发布到 Amazon S3
主机管理器报告指标、错误和事件以及服务器实例状态,这些指标可通过 Elastic Beanstal APIs k 控制台获得,以及。CLIs
图中显示的 Amazon EC2 实例属于一个安全组。安全组定义实例的防火墙规则。默认情况下,Elastic Beanstalk 会定义一个安全组,该组允许所有人使用端口 80 () 进行连接。HTTP您可以定义一个以上的安全组。例如,您可以为您的数据库服务器定义一个安全组。有关亚马逊EC2安全组以及如何为您的 Elastic Beanstalk 应用程序配置安全组的更多信息,请参阅。安全组