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

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

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

由拉姆·康達斯瓦米(AWS)創建

環境:生產

技術:網路;混合雲

AWS 服務:AWS Transit Gateway;AWS Step Functions;AWS Lambda

Summary

AWS Transit Gateway 透過中央集線器連接虛擬私有雲 (VPC) 和現場部署網路。Transit Gateway 流量始終保留在全球 Amazon Web Services (AWS) 骨幹網上,而且不會周遊公用網際網路,進而減少常見漏洞攻擊和分散式拒絕服務 (DDoS) 攻擊等威脅媒介。

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

此模式使用 AWS CloudFormation 堆疊,其中包括 AWS Step Functions 工作流程、AWS Lambda 函數、AWS Identity and Access Management (IAM) 角色,以及 Amazon CloudWatch 日誌中的日誌群組。然後,您可以開始執行 Step Functions,並為傳輸閘道建立區域間對等連線。

先決條件和限制

先決條件

  • 作用中的 AWS 帳戶

  • 現有的 Amazon Simple Storage Service (Amazon S3) 存儲桶。

  • 運輸閘道,在請求者區域和接受器區域中創建和配置。請求者區域是產生對等請求的地方,且接受區域接受對等請求。如需這方面的詳細資訊,請參閱 Amazon VPC 文件中的建立和接受 VPC 對等連線

  • VPC,安裝和配置在接受器和請求者區域。如需建立 VPC 的步驟,請參閱 Amazon VPC 說明文件中的從 Amazon VPC 入門建立 VPC。

  • VPC 必須使用標addToTransitGateway籤和true值。

  • 根據您的需求設定 VPC 的安全性群組和網路存取控制清單 (ACL)。如需此相關資訊,請參閱 Amazon VPC 說明文件中的 VPC 和網路 ACL 的安全群組。

AWS 區域和限制

  • 只有特定 AWS 區域支援區域間對等。如需支援區域間對等的區域完整清單,請參閱 AWS Transit Gateway 常見問答集。

  • 在附加的示例代碼中,請求者區域被假定為us-east-2,並假定接受器區域為。us-west-2如果要配置不同的區域,則必須在所有 Python 文件中編輯這些值。若要實作涉及兩個以上區域的更複雜的設定,您可以變更步驟函數,將區域做為參數傳遞至 Lambda 函數,然後針對每個組合執行函數。

架構

該圖顯示了具有以下步驟的工作流程:

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

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

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

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

  5. Step Functions 數調用 Lambda 函數進行路由表修改。

  6. Lambda 函數會新增 VPC 的無類別網域間路由 (CIDR) 區塊來修改路由資料表。

Step Functions 工作流

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

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

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

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

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

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

工具

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

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

  • AWS Identity and Access Management (IAM) — IAM 是一種用於安全控制 AWS 服務存取的 Web 服務。

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

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

史诗

任務描述所需技能
將附加的檔案上傳到 S3 儲存貯體。

登入 AWS 管理主控台,開啟 Amazon S3 主控台,然後將modify-transit-gateway-routes.zippeer-transit-gateway.zip、和get-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 主控台上建立堆疊

DevOps 工程師
在 Step Functions 中啟動新的執行。

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

如需詳細資訊,請參閱 AWS 步驟函數文件中的 AWS 步驟函數開始使用 AWS 步驟函數的開始新執行

DevOps 工程師,一般 AWS
驗證路由表中的路由。

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

開啟 Amazon VPC 主控台,然後在路由表中選擇與傳輸閘道附件對應的「關聯」索引標籤。確認對等區域的 VPC CIDR 區塊範圍。 

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

網路管理員

相關資源

附件

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