使用 AWS Transit Gateway 自動化區域間對等互連的設定 - AWS 方案指引

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

使用 AWS Transit Gateway 自動化區域間對等互連的設定

由 Ram Kandaswamy (AWS) 建立

Summary

AWS Transit Gateway 透過中央中樞連接虛擬私有雲端 (VPCs) 和內部部署網路。Transit Gateway 流量一律保留在全球 Amazon Web Services (AWS) 骨幹上,不會周遊公有網際網路,這可減少威脅向量,例如常見的入侵和分散式拒絕服務 (DDoS) 攻擊。

如果您需要在兩個或多個 AWS 區域之間通訊,您可以使用區域間傳輸閘道對等互連,在不同區域中的傳輸閘道之間建立對等互連。不過,使用 Transit Gateway 手動設定區域間對等互連可能是具有多個步驟的耗時程序。此模式提供自動化程序,透過使用程式碼來執行對等互連來移除這些手動步驟。如果您必須在多區域組織設定期間重複設定多個區域和 AWS 帳戶,則可以使用此方法。

此模式使用 AWS CloudFormation 堆疊,其中包含 Amazon CloudWatch Logs 中的 AWS Step Functions 工作流程、AWS Lambda 函數、AWS Identity and Access Management (IAM) 角色和日誌群組。然後,您可以啟動 Step Functions 執行,並為傳輸閘道建立區域間對等互連。若要手動設定區域間對等互連,請參閱使用 AWS Transit Gateway 在不同 AWS 區域中的對等 VPCs

先決條件和限制

先決條件

AWS 區域和限制

  • 只有特定 AWS 區域支援區域間對等互連。如需支援區域間對等互連的區域完整清單,請參閱 AWS Transit Gateway FAQs

  • 在連接的範本程式碼中,請求者區域假設為 us-east-2,接受者區域假設為 us-west-2。如果您想要設定不同的區域,您必須在所有 Python 檔案中編輯這些值。若要實作涉及兩個以上區域的更複雜設定,您可以變更 Step Function,將區域做為參數傳遞至 Lambda 函數,並為每個組合執行函數。

架構

Step Functions 狀態機器使用 Lambda 函數為傳輸閘道建立對等連線。

圖表顯示具有下列步驟的工作流程:

  1. 使用者建立 AWS CloudFormation 堆疊。

  2. AWS CloudFormation 會建立使用 Lambda 函數的 Step Functions 狀態機器。如需詳細資訊,請參閱 AWS Step Functions Step Functions 文件中的建立使用 Lambda 的 Step Functions 狀態機器

  3. Step Functions 呼叫 Lambda 函數進行對等互連。 

  4. Lambda 函數會在傳輸閘道之間建立對等連線。

  5. Step Functions 會呼叫 Lambda 函數來修改路由表。

  6. Lambda 函數透過新增 VPCs 的無類別網域間路由 (CIDR) 區塊來修改路由表。

Step Functions 工作流程

Step Functions 工作流程可呼叫 Lambda 函數來修改傳輸閘道對等的路由表。

圖表顯示下列 Step Functions 工作流程:

  1. Step Functions 工作流程會呼叫傳輸閘道對等的 Lambda 函數。 

  2. 有一個計時器呼叫要等待一分鐘。

  3. 對等狀態會擷取並傳送至條件區塊。區塊負責循環。 

  4. 如果不符合成功條件,工作流程會編碼為進入計時器階段。 

  5. 如果符合成功條件,則會呼叫 Lambda 函數來修改路由表。在此呼叫之後,Step Functions 工作流程會結束。

工具

  • AWS CloudFormation – AWS CloudFormation 是一項服務,可協助您建立 AWS 資源的模型和設定。

  • Amazon CloudWatch Logs – CloudWatch Logs 可協助您集中所有系統、應用程式和 AWS 服務的日誌。

  • AWS Identity and Access Management (IAM) – IAM 是一種 Web 服務,可安全地控制對 AWS 服務的存取。

  • AWS Lambda – Lambda 會在高可用性運算基礎設施上執行您的程式碼,並執行運算資源的所有管理。

  • AWS Step Functions – Step Functions 可讓您輕鬆地將分散式應用程式的元件協調為視覺化工作流程中的一系列步驟。 

史詩

任務描述所需的技能

將連接的檔案上傳至 S3 儲存貯體。

登入 AWS 管理主控台,開啟 Amazon S3 主控台,然後將 modify-transit-gateway-routes.zippeer-transit-gateway.zipget-transit-gateway-peering-status.zip 檔案 (已連接) 上傳到您的 S3 儲存貯體。

一般 AWS

建立 AWS CloudFormation 堆疊。

執行下列命令,使用 transit-gateway-peering.json 檔案 (已連接) 建立 AWS CloudFormation 堆疊:

aws cloudformation create-stack --stack-name myteststack --template-body file://sampletemplate.json

AWS CloudFormation 堆疊會建立 Step Functions 工作流程、Lambda 函數、IAM 角色和 CloudWatch 日誌群組。

請確定 AWS CloudFormation 範本參考的 S3 儲存貯體包含您先前上傳的檔案。

注意

您也可以使用 AWS CloudFormation 主控台建立堆疊。如需詳細資訊,請參閱 AWS CloudFormation 文件中的在 AWS CloudFormation 主控台上建立堆疊。 AWS CloudFormation

DevOps 工程師

在 Step Functions 中啟動新的執行。

開啟 Step Functions 主控台並啟動新的執行。Step Functions 會呼叫 Lambda 函數,並為傳輸閘道建立對等連線。您不需要輸入 JSON 檔案。確認附件可用,且連線類型為對等

如需詳細資訊,請參閱 AWS Step Functions 文件中的從 AWS Step Functions 入門開始新的執行

DevOps 工程師,一般 AWS

驗證路由表中的路由。

在傳輸閘道之間建立區域間對等互連。路由表會以對等區域 VPC 的 IPv4 CIDR 區塊範圍更新。 

開啟 Amazon VPC 主控台,然後在對應至傳輸閘道連接的路由表中選擇關聯索引標籤。驗證對等區域的 VPC CIDR 區塊範圍。 

如需詳細步驟和說明,請參閱 Amazon VPC 文件中的關聯傳輸閘道路由表

網路管理員

相關資源

附件

若要存取與本文件相關聯的其他內容,請解壓縮下列檔案: attachment.zip