

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Elastic Beanstalk Web 伺服器環境
<a name="concepts-webserver"></a>

下圖顯示 Web 伺服器環境層的範例 Elastic Beanstalk 架構，並解釋這類環境層內的元件如何共同運作。

![\[AWS Elastic Beanstalk Web 伺服器層架構圖。\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/images/aeb-architecture2.png)


環境是應用程式的核心。在圖表中，環境會顯示在最上方的實線內。當您建立環境時，Elastic Beanstalk 會佈建執行應用程式所需的資源。為環境建立 AWS 的資源包括一個彈性負載平衡器 （圖表中的 ELB)、Auto Scaling 群組，以及一或多個 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。

每個環境都具備指向負載平衡器的 CNAME (URL)。本環境即具備 URL (如 `myapp.us-west-2.elasticbeanstalk.com`)。此 URL 會使用 CNAME 記錄，在 [Amazon Route 53](https://aws.amazon.com/route53/) 中獲得一個 Elastic Load Balancing URL 別名 (像是 `abcdef-123456.us-west-2.elb.amazonaws.com`)。[Amazon Route 53](https://aws.amazon.com/route53/) 是一種可用性高、可擴展性強的網域名稱系統 (DNS) Web 服務。其能夠安全可靠的路由至您的基礎設施。您向 DNS 供應商註冊的網域名稱，會將請求轉送至 CNAME。

負載平衡器位於 Amazon EC2 執行個體前方，屬於 Auto Scaling 群組的一部分。Amazon EC2 Auto Scaling 會自動啟動額外的 Amazon EC2 執行個體，以容納您的應用程式增加的負載。若您的應用程式負載減少，Amazon EC2 Auto Scaling 會停止執行個體，但永遠會保留至少一個執行個體繼續執行。

執行於 Amazon EC2 執行個體的軟體堆疊，依*容器類型*而異。容器類型會定義用於該環境的基礎設施拓撲和軟體堆疊。例如，搭配 Apache Tomcat 容器的 Elastic Beanstalk 環境，會使用 Amazon Linux 作業系統、Apache Web 伺服器和 Apache Tomcat 軟體。如需支援的容器類型清單，請參閱 [支援 Elastic Beanstalk 的平台](concepts.platforms.md)。執行您應用程式的各個 Amazon EC2 執行個體，都會使用這些容器類型之一。此外，名為「主機管理員 (HM)」**的軟體元件，會執行於各個 Amazon EC2 執行個體。主機管理員負責下列事項：
+ 部署應用程式
+ 彙整事件和指標供主控台、API 或命令列進行擷取
+ 產生執行個體層級事件
+ 監控應用程式日誌檔案是否出現重要錯誤
+ 監控應用程式伺服器
+ 修補執行個體元件
+ 輪動應用程式的日誌檔案，並將其發佈至 Amazon S3

主機管理員會報告指標、錯誤和事件，以及伺服器執行個體狀態，這些可透過 Elastic Beanstalk 主控台、API 和 CLI 取得。

圖中的 Amazon EC2 執行個體均屬於同一「安全群組」**。安全群組會定義您的執行個體的防火牆規則。Elastic Beanstalk 預設會定義安全群組，讓所有人都可使用連接埠 80 (HTTP) 進行連線。您可定義多個安全群組。例如，您可為您的資料庫伺服器定義一個安全群組。如需有關 Amazon EC2 安全群組及其設定方式供 Elastic Beanstalk 應用程式使用的詳細資訊，請參閱[EC2 安全群組](using-features.managing.ec2.console.md#using-features.managing.ec2.securitygroups)。