搭配 Amazon Virtual Private Cloud 使用 CodeDeploy - AWS CodeDeploy

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

搭配 Amazon Virtual Private Cloud 使用 CodeDeploy

如果您使用 Amazon Virtual Private Cloud (Amazon VPC) 託管 AWS 資源,您可以在 VPC 和 CodeDeploy 之間建立私有連線。您可以使用此連線,讓 CodeDeploy 與 VPC 上的資源通訊,而無需透過公有網際網路。

Amazon VPC 是一項 AWS 服務,可用來在您定義的虛擬網路中啟動 AWS 資源。您可利用 VPC 來控制您的網路設定,例如 IP 地址範圍、子網路、路由表和網路閘道。透過 VPC 端點,VPC AWS 和服務之間的路由由 AWS 網路處理,您可以使用 IAM 政策來控制對服務資源的存取。

若要將 VPC 連線至 CodeDeploy,請定義 CodeDeploy 的介面 VPC 端點。界面端點是具有私有 IP 地址的彈性網路界面,可做為目的地為支援 AWS 服務之流量的進入點。端點為 CodeDeploy 提供可靠、可擴展的連線,而不需要網際網路閘道、網路位址轉譯 (NAT) 執行個體或 VPN 連線。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的什麼是 Amazon VPC

介面 VPC 端點採用 AWS PrivateLink技術,該 AWS 技術可使用具有私有 IP 地址的彈性網路介面,在 AWS 服務之間進行私有通訊。如需詳細資訊,請參閱AWS PrivateLink

下列步驟適用於 Amazon VPC 的使用者。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的入門

可用性

CodeDeploy 有兩個 VPC 端點:一個用於 CodeDeploy 代理程式操作,另一個用於 CodeDeploy API 操作。下表顯示每個端點支援的 AWS 區域。

如需詳細資訊,以及 FIPS 端點的詳細資訊,請參閱AWS CodeDeploy 端點和配額

區域名稱 區域代碼 代理程式端點 API 端點 FIPS 相容區域?

美國東部 (維吉尼亞北部)

us-east-1

美國東部 (俄亥俄)

us-east-2

美國西部 (加利佛尼亞北部)

us-west-1

美國西部 (奧勒岡)

us-west-2

Africa (Cape Town)

af-south-1

亞太區域 (香港)

ap-east-1

亞太區域 (海德拉巴)

ap-south-2

亞太區域 (雅加達)

ap-southeast-3

亞太區域 (墨爾本)

ap-southeast-4

亞太區域 (孟買)

ap-south-1

亞太區域 (大阪)

ap-northeast-3

亞太區域 (首爾)

ap-northeast-2

亞太區域 (新加坡)

ap-southeast-1

亞太區域 (雪梨)

ap-southeast-2

亞太區域 (東京)

ap-northeast-1

加拿大 (中部)

ca-central-1

中國 (北京)

cn-north-1

中國 (寧夏)

cn-northwest-1

歐洲 (法蘭克福)

eu-central-1

歐洲 (愛爾蘭)

eu-west-1

歐洲 (倫敦)

eu-west-2

歐洲 (米蘭)

eu-south-1

Europe (Paris)

eu-west-3

歐洲 (西班牙)

eu-south-2

Europe (Stockholm)

eu-north-1

歐洲 (蘇黎世)

eu-central-2

以色列 (特拉維夫)

il-central-1

Middle East (Bahrain)

me-south-1

中東 (阿拉伯聯合大公國)

me-central-1

南美洲 (聖保羅)

sa-east-1

AWS GovCloud (美國東部)

us-gov-east-1

AWS GovCloud (美國西部)

us-gov-west-1

為 CodeDeploy 建立 VPC 端點

若要開始搭配 VPC 使用 CodeDeploy,請為 CodeDeploy 建立介面 VPC 端點。CodeDeploy 需要代理程式 Git 操作和 CodeDeploy API 操作的個別端點。根據您的商業需求,您可能需要建立多個 VPC 端點。當您為 CodeDeploy 建立 VPC 端點時,請選擇AWS 服務,然後在服務名稱中選擇下列選項:

  • com.amazonaws.region.codedeploy:如果您想要為 CodeDeploy API 操作建立 VPC 端點,請選擇此選項。例如,如果您的使用者使用 AWS CLI、CodeDeploy API 或 AWS SDKs 與 CodeDeploy 互動,例如 CreateApplication、 和 等操作GetDeployment,請選擇此選項ListDeploymentGroups

  • com.amazonaws.region.codedeploy-fips:如果您想要為 FIPS 端點的 CodeDeploy API 操作建立 VPC 端點,請選擇此選項。

  • com.amazonaws.region.codedeploy-commands-secure:如果您想要為 CodeDeploy 代理程式操作建立 VPC 端點,請選擇此選項。您也需要在true代理程式組態檔案中:enable_auth_policy:將 設定為 ,並連接必要的許可。如需詳細資訊,請參閱設定 CodeDeploy 代理程式和 IAM 許可

如果您使用 Lambda 或 ECS 部署,則只需要為 com.amazonaws.region.codedeploy 建立 VPC 端點。使用 Amazon EC2 部署的客戶需要 com.amazonaws.region.codedeploycom.amazonaws.region.codedeploy-commands-secure 的 VPC 端點。

設定 CodeDeploy 代理程式和 IAM 許可

若要搭配 CodeDeploy 使用 Amazon VPC 端點,您必須在 EC2 或內部部署執行個體上的代理程式組態檔案中:enable_auth_policy:true將 的值設定為 。如需代理程式組態檔案的詳細資訊,請參閱 CodeDeploy 代理程式組態參考

您還必須將下列 IAM 許可新增至 Amazon EC2 執行個體描述檔 (如果您使用的是 Amazon EC2 執行個體) 或 IAM 使用者或角色 (如果您使用的是內部部署執行個體)。

{ "Statement": [ { "Action": [ "codedeploy-commands-secure:GetDeploymentSpecification", "codedeploy-commands-secure:PollHostCommand", "codedeploy-commands-secure:PutHostCommandAcknowledgement", "codedeploy-commands-secure:PutHostCommandComplete" ], "Effect": "Allow", "Resource": "*" } ] }

如需詳細資訊,請參閱 Amazon VPC 使用者指南中的建立界面端點