在 a 中運行堆棧 VPC - AWS OpsWorks

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

在 a 中運行堆棧 VPC

重要

所以此 AWS OpsWorks Stacks 服務於 2024 年 5 月 26 日終止使用壽命,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載移轉至其他解決方案。如果您對移轉有任何疑問,請聯絡 AWS Support 團隊上 AWS Re: 郵寄或透過 AWS 高級 Support

您可以透過在虛擬私有雲 (VPC) 中建立堆疊執行個體,來控制使用者對堆疊執行個體的存取。例如,您可能不想讓使用者直接存取您堆疊的應用程式伺服器或資料庫,而要求所有公有流量都經由 Elastic Load Balancer 導引。

在 a 中運行堆棧的基本過程VPC是:

  1. 使用 Amazon VPC 主控台建立適當設定 VPCAPI,或 AWS CloudFormation 範本。

  2. 在建立堆疊時指定 VPC ID。

  3. 在適當子網路中,啟動堆疊的執行個體。

下面簡要描述了如何VPCs工作 AWS OpsWorks 堆疊。

重要

如果您使用VPC端點功能,請注意,堆疊中的每個執行個體都必須能夠從 Amazon Simple Storage Service (Amazon S3) 完成以下動作:

  • 安裝執行個體代理程式。

  • 安裝 Ruby 這類資產。

  • 上傳 Chef 執行日誌。

  • 擷取堆疊命令。

若要啟用這些動作,您必須確保堆疊的執行個體可以存取下列符合堆疊區域的儲存貯體。否則,上述動作將會失敗。

對於廚師 12 Linux 和廚師 12.2 視窗,桶如下。

代理程式儲存貯體 資產儲存貯體 日誌儲存貯體 DNA鏟斗
  • opsworks-instance-agent-sa-東方 -1

  • opsworks-instance-agent-ap-向南 1

  • opsworks-instance-agent-ap-東北 -1

  • opsworks-instance-agent-ap-東北 -2

  • opsworks-instance-agent-ap-東南部 -1

  • opsworks-instance-agent-ap-東南部 -2

  • opsworks-instance-agent-ca-中央 -1

  • opsworks-instance-agent-eu-中央 -1

  • opsworks-instance-agent-eu-西部 -1

  • opsworks-instance-agent-eu-西部 -2

  • opsworks-instance-agent-eu-西部 -3

  • opsworks-instance-agent-us-東方 -1

  • opsworks-instance-agent-us-東方 -2

  • opsworks-instance-agent-us-西部 -1

  • opsworks-instance-agent-us-西部 -2

  • opsworks-instance-assets-us-東方 -2

  • opsworks-instance-assets-us-東方 -1

  • opsworks-instance-assets-ap-向南 1

  • opsworks-instance-assets-ap-東北 -1

  • opsworks-instance-assets-ap-東北 -2

  • opsworks-instance-assets-ap-東南部 -1

  • opsworks-instance-assets-ap-東南部 -2

  • opsworks-instance-assets-ca-中央 -1

  • opsworks-instance-assets-eu-中央 -1

  • opsworks-instance-assets-eu-西部 -1

  • opsworks-instance-assets-eu-西部 -2

  • opsworks-instance-assets-eu-西部 -3

  • opsworks-instance-assets-sa-東方 -1

  • opsworks-instance-assets-us-西部 -1

  • opsworks-instance-assets-us-西部 -2

  • opsworks-us-east-2-日誌

  • opsworks-us-east-1-日誌

  • opsworks-ap-south-1-日誌

  • opsworks-ap-northeast-1-日誌

  • opsworks-ap-northeast-2-日誌

  • opsworks-ap-southeast-1-日誌

  • opsworks-ap-southeast-2-日誌

  • opsworks-ca-central-1-日誌

  • opsworks-eu-central-1-日誌

  • opsworks-eu-west-1-日誌

  • opsworks-eu-west-2-日誌

  • opsworks-eu-west-3-日誌

  • opsworks-sa-east-1-日誌

  • opsworks-us-west-1-日誌

  • opsworks-us-west-2-日誌

  • opsworks-us-east-2-核糖核酸

  • opsworks-us-east-1-核糖核酸

  • opsworks-ap-south-1-核糖核酸

  • opsworks-ap-northeast-1-核糖核酸

  • opsworks-ap-northeast-2-核糖核酸

  • opsworks-ap-southeast-1-核糖核酸

  • opsworks-ap-southeast-2-核糖核酸

  • opsworks-ca-central-1-核糖核酸

  • opsworks-eu-central-1-核糖核酸

  • opsworks-eu-west-1-核糖核酸

  • opsworks-eu-west-2-核糖核酸

  • opsworks-eu-west-3-核糖核酸

  • opsworks-sa-east-1-核糖核酸

  • opsworks-us-west-1-核糖核酸

  • opsworks-us-west-2-核糖核酸

若是 Linux 的 Chef 11.10 和更早版本,儲存貯體如下所示。美國東部 (維吉尼亞北部) 區域以外的區域端點不支援 Chef 11.4 堆疊。

代理程式儲存貯體 資產儲存貯體 日誌儲存貯體 DNA鏟斗
  • opsworks-instance-agent-us-東方 -2

  • opsworks-instance-agent-us-東方 -1

  • opsworks-instance-agent-ap-向南 1

  • opsworks-instance-agent-ap-東北 -1

  • opsworks-instance-agent-ap-東北 -2

  • opsworks-instance-agent-ap-東南部 -1

  • opsworks-instance-agent-ap-東南部 -2

  • opsworks-instance-agent-ca-中央 -1

  • opsworks-instance-agent-eu-中央 -1

  • opsworks-instance-agent-eu-西部 -1

  • opsworks-instance-agent-eu-西部 -2

  • opsworks-instance-agent-eu-西部 -3

  • opsworks-instance-agent-us-東方 -1

  • opsworks-instance-agent-us-西部 -1

  • opsworks-instance-agent-us-西部 -2

  • opsworks-instance-assets-us-東方 -2

  • opsworks-instance-assets-us-東方 -1

  • opsworks-instance-assets-ap-向南 1

  • opsworks-instance-assets-ap-東北 -1

  • opsworks-instance-assets-ap-東北 -2

  • opsworks-instance-assets-ap-東南部 -1

  • opsworks-instance-assets-ap-東南部 -2

  • opsworks-instance-assets-ca-中央 -1

  • opsworks-instance-assets-eu-中央 -1

  • opsworks-instance-assets-eu-西部 -1

  • opsworks-instance-assets-eu-西部 -2

  • opsworks-instance-assets-eu-西部 -3

  • opsworks-instance-assets-sa-東方 -1

  • opsworks-instance-assets-us-西部 -1

  • opsworks-instance-assets-us-西部 -2

  • prod_stage-log

  • prod_stage-dna

如需詳細資訊,請參閱 VPC 端點

注意

用於 AWS OpsWorks 堆棧連接到您啟用的VPC端點,您還必須配置您的NAT或公共 IP 的路由, AWS OpsWorks 堆疊代理程式仍需要存取公用端點。

VPC基礎

如需詳細討論VPCs,請參閱 Amazon 虛擬私有雲。簡而言之,a VPC 由一或多個子網路組成,每個子網路都包含一或多個執行個體。每個子網路都有一個相關聯的路由表,以根據其目標 IP 地址指示傳出流量。

  • 根據預設,無論子網路為何,內的執行個體都VPC可以相互通訊。不過,變更網路存取控制清單 (ACLs)、安全性群組原則或使用靜態 IP 位址可能會中斷此通訊。

  • 如果子網路的執行個體可以與網際網路通訊,則這種子網路稱為「公有子網路」

  • 其執行個體只能與中的其他執行個體通訊VPC且無法直接與網際網路通訊的子網路稱為私有子網路。

AWS OpsWorks 堆疊需要設定,以便堆疊中的每個執行個體 (包括私有子網路中的執行個體) 都可以存取下列端點:VPC

  • 其中之一 AWS OpsWorks 堆疊列於的「區域 Support」一節中的服務端點開始使用 AWS OpsWorks 堆疊

  • 下列其中一個執行個體服務端點,由 AWS OpsWorks 堆棧代理。受管的客戶執行個體上執行的代理程式會與服務交換資料。

    • opsworks-instance-service. 美東 2. 亞馬遜

    • opsworks-instance-service.us-east-1.amazonaws.com

    • opsworks-instance-service. 美國西部-1. 亞馬遜

    • opsworks-instance-service.us-west-2.amazonaws.com

    • opsworks-instance-service. 阿勒南 1. 亞馬遜

    • opsworks-instance-service.pt-東北部-1. 亞馬遜

    • opsworks-instance-service.pt-東北部-2. 亞馬遜

    • opsworks-instance-service.pt-東南部-1. 亞馬遜

    • opsworks-instance-service.pt-東南部 2. 亞馬遜

    • opsworks-instance-service.ca-中央-1. 亞馬遜

    • opsworks-instance-service.eu-central-1.amazonaws.com

    • opsworks-instance-service. 歐盟-西部-1. 亞馬遜

    • opsworks-instance-service. 歐洲西部 2. 亞馬遜

    • opsworks-instance-service. 歐盟-西部-3. 亞馬遜

  • Amazon S3

  • 作業系統仰賴的任何套件儲存庫,例如 Amazon Linux 或 Ubuntu Linux 儲存庫。

  • 您的應用程式和自訂技術指南儲存庫。

有多種方法可以配置 a VPC 以提供此連接。下面是一個簡單的例子,說明如何配置 VPC AWS OpsWorks 堆棧應用服務器堆棧。

VPC diagram showing public and private subnets, NAT, load balancing, and connections to external services.

這VPC有幾個組成部分:

子網

VPC有兩個子網路,一個公用和一個私有。

  • 公用子網路包含負載平衡器和網路位址轉譯 (NAT) 裝置,可與外部位址以及私有子網路中的執行個體進行通訊。

  • 私有子網路包含應用程式伺服器,這些伺服器可以與公用子網路中的NAT和負載平衡器通訊,但無法直接與外部位址通訊。

網際網路閘道

網際網路閘道可讓具有公用 IP 位址的執行個體 (例如負載平衡器) 與VPC.

負載平衡器

Elastic Load Balancing 負載平衡器會接收來自使用者的傳入流量,將它分發至私有子網路中的應用程式伺服器,並將回應傳回給使用者。

NAT

(NAT) 裝置為應用程式伺服器提供有限的網際網路存取權,通常用於從外部儲存庫下載軟體更新等目的。全部 AWS OpsWorks 堆疊執行個體必須能夠與之通訊 AWS OpsWorks 堆疊並搭配適當的 Linux 儲存庫。處理此問題的一種方法是將具有關聯彈性 IP 地址的NAT設備放在公共子網中。然後,您可以透過路由私有子網路中執行個體的輸出流量NAT。

注意

單一NAT執行個體會在私有子網路的輸出流量中建立單一故障點。您可以透過設定一對執行個體 (如果其中VPC一個NAT執行個體發生故障時會接管彼此接管) 來提高可靠性。如需詳細資訊,請參閱 Amazon VPC NAT 執行個體的高可用性。您也可以使用NAT閘道。如需詳細資訊,請參閱 Amazon 使VPC用者指南NAT中的。

最佳VPC配置取決於您的 AWS OpsWorks 堆疊堆疊。以下是一些您可能使用特定VPC組態的範例。如需其他VPC案例的範例,請參閱使用 Amazon 的案例VPC。

使用公有子網路中的一個執行個體

如果您的單一執行個體堆疊沒有關聯的私有資源 (例如不可公開存取的 Amazon RDS 執行個體),您可以建立VPC具有一個公有子網路的執行個體,然後將執行個體放在該子網路中。如果您未使用預設值VPC,則必須讓執行個體的層指派彈性 IP 位址給執行個體。如需詳細資訊,請參閱OpsWorks 圖層基礎

使用私有資源

如果您有不應公開存取的資源,您可以建立具有一個公VPC用子網路和一個私有子網路。例如,在負載平衡的自動擴展環境中,您可以將所有 Amazon EC2 執行個體放在私有子網路中,並將負載平衡器放在公有子網路中。如此一來,Amazon EC2 執行個體就無法直接從網際網路存取;所有傳入流量都必須透過負載平衡器路由。

私有子網路會將執行個體AWS與 Amazon EC2 直接使用者存取隔離,但它們仍必須將輸出請求傳送至適當的 Linux 套件儲存庫。例如,若要允許此類要求,您可以使用具有自己彈性 IP 位址的網路位址轉譯 (NAT) 裝置,然後透過. NAT 您可以將 the 放NAT在與負載平衡器相同的公用子網路中,如前面的範例所示。

  • 如果您使用的是後端資料庫 (例如 Amazon RDS 執行個體),則可以將這些執行個體放在私有子網路中。對於 Amazon RDS 執行個體,您必須在不同的可用區域中指定至少兩個不同的子網路。

  • 如果您需要直接存取私有子網路中的執行個體 (例如,您想要用SSH來登入執行個體),您可以將防禦主機放在公用子網路中,以代理來自網際網路的要求。

將您自己的網絡擴展到 AWS

如果您想要將自己的網路延伸到雲端,也可以從您的網路直接存取網際網路VPC,您可以建立VPN閘道。如需詳細資訊,請參閱案例 3:使VPC用公用和私有子網路以及硬體VPN存取

創建VPC一個 AWS OpsWorks 堆疊堆疊

本節說明如何VPC建立 AWS OpsWorks 使用範例AWS CloudFormation範本堆疊堆疊。您可以在 OpsWorksVPCtemplates.zip 檔案中下載範本。如需有關如何手動建立與本主題中討論之VPC類似項目的詳細資訊,請參閱案例 2:VPC使用公用和私有子網路。如需如何設定路由表、安全群組等,請參閱範本範例。

注意

默認情況下, AWS OpsWorks 堆棧通過連接其CIDR範圍和可用區域來顯示子網路名稱,例如10.0.0.1/24 - us-east-1b。為了讓名稱更易讀,請為每個子網路建立標籤,方法是將 Key (索引鍵) 設定為 Name,將 Value (值) 設定為子網路名稱。 AWS OpsWorks 堆疊接著會將子網路名稱附加至預設名稱。例如,下列範例中的私有子網路具有將 Name 設定為的標籤Private,其 OpsWorks 顯示為10.0.0.1/24 us-east - 1b - Private

您可以VPC使用 AWS CloudFormation 控制台只需幾個步驟。下列程序使用範例範本VPC在美國東部 (維吉尼亞北部) 區域建立。如需有關如何使用範本VPC在其他區域建立的指示,請參閱程序後面的注意事項

若要建立 VPC
  1. 開啟 AWS CloudFormation 主控台中,選取美國東部 (維吉尼亞北部) 區域,然後選擇建立堆疊

  2. Select Template (選取範本) 頁面上,選取 Upload a template (上傳範本)瀏覽尋找您在 OpsWorksVPCtemplates.zip OpsWorksinVPC.template 檔案中下載的檔案。選擇「繼續」。

    CloudFormation 選取範本頁面

    您也可以透過開啟範AWS CloudFormation 例範本來啟動此堆疊,找出 AWS OpsWorks 堆疊VPC範本,然後選擇啟動堆疊

  3. 接受 Specify Parameters (指定參數) 頁面中的預設值,然後選擇 Continue (繼續)

  4. 在「新增標記」頁面上,建立一個標籤,並將「金鑰」設定為Name並將「」設定為VPC名稱。此標籤將使您在創建VPC時更容易識別您的 AWS OpsWorks 堆疊堆疊。

  5. 選擇 Continue (繼續),然後選擇 Close (關閉) 以啟動堆疊。

注意:您可以使用下列其VPC中一種方法在其他區域中建立。

  • 轉到在不同區域中使用模板,選擇適當的區域,找到 AWS OpsWorks 堆疊VPC範本,然後選擇 [啟動堆疊]。

  • 將範本檔案複製到您的系統中,然後在 AWS CloudFormation 主控台,然後使用「建立堆疊」精靈的「將範本上傳到 Amazon S3」選項,從系統上傳範本。

範例範本包括提供建立所需的VPC、子網路和負載平衡器IDs的輸出 AWS OpsWorks 堆疊堆疊。您可以通過選擇底部的「輸出」選項卡來查看它們 AWS CloudFormation 控制台窗口。

Stack outputs table showing VPC, subnet, and load balancer IDs for an OpsWorks-in-VPC stack.