本頁說明如何設定網路環境,以便在虛擬私有雲網路中使用私人集區。如果您不熟悉私人集區,請參閱「私人集區總覽」。
瞭解網路設定選項
私人集區會託管在 Google 擁有的虛擬私有雲網路中,也就是服務生產者網路。設定私有集區時,您可以選擇使用服務生產端網路,也可以在服務生產端網路與包含資源的虛擬私有雲網路之間,設定私人連線。
根據貴機構的需求,選擇下列其中一種網路設定方案:
單獨使用服務供應商網路:如有下列情形,請使用這個選項:
- 您並非要讓建構存取私人網路中的資源
- 您希望可設定機器類型和大小
這是建立私人集區的預設網路選項,不需要任何網路設定。如有意採用這個選項,請繼續建立私人集區。
在服務供應商網路與虛擬私有雲網路之間設定私人連線:私人連線提供內部 IP 位址,可讓虛擬私有雲網路中的 VM 執行個體和私人集區進行專屬通訊。如果符合以下描述,請使用這個選項:
- 您希望建構作業存取虛擬私有雲網路中的資源
- 您希望可設定機器類型和大小
在虛擬私有雲網路與服務供應商網路之間設定私人連線
您必須具有現有的 VPC 網路,可用來連線至服務生產端網路。
如要使用本指南提供的指令列範例,請安裝及設定 Google Cloud CLI。
啟用 API:
控制台
Enable the Cloud Build and the Service Networking APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud
啟用 Cloud Build 和 Service Networking API:
gcloud services enable cloudbuild.googleapis.com servicenetworking.googleapis.com-
為確保 具備設定私人連線的必要權限,請要求管理員在虛擬私有雲網路所在的 Google Cloud 專案中,將 Compute Engine 網路管理員 (
roles/compute.networkAdmin) IAM 角色授予 的服務帳戶。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。 在虛擬私有雲網路中,分配具名的內部 IP 範圍:
您在此指定的 IP 範圍會受到虛擬私有雲網路中定義的防火牆規則限制。
Cloud Build 會保留 IP 範圍
192.168.10.0/24和172.17.0.0/16,供 Docker 橋接網路使用。為專案中的資源分配 IP 範圍時,如果 Cloud Build 建構工具要存取這些資源,建議選取192.168.10.0/24和172.17.0.0/16以外的範圍。舉例來說,由於重疊,Cloud Build
gke-deploy建構工具無法存取 Google Kubernetes Engine 控制層位址範圍192.168.10.96/28。控制台
前往 Google Cloud 控制台的「VPC networks」(VPC 網路) 頁面。
選取要連線至私人集區虛擬私有雲網路的虛擬私有雲網路。
選取「私人服務存取」分頁標籤。
在「私人服務連線」分頁中,選取「已分配的服務 IP 範圍」分頁標籤。
按一下「Allocate IP range」(分配 IP 範圍)。
輸入已分配範圍的「Name」(名稱) 與「Description」(說明)。
為分配範圍指定「IP range」(IP 範圍):
- 如要指定 IP 位址範圍,請選取「自訂」,然後輸入 CIDR 區塊。
- 如要指定前置字串長度並讓 Google 選取可用範圍,請選取「Automatic」(自動),然後輸入前置字串長度。前置字串長度必須小於或等於
/24,例如/22、/21等。
按一下 [Allocate] (分配),建立已分配範圍。
gcloud
如要指定位址範圍與前置字串長度 (子網路遮罩),請使用
addresses和prefix-length標記。前置長度必須為 /24 或更短,例如 /22、/21 等。舉例來說,如要分配 CIDR 區塊192.168.0.0/16,請將位址指定為192.168.0.0,並將前置字串長度指定為16。gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --addresses=192.168.0.0 \ --prefix-length=16 \ --description=DESCRIPTION \ --network=VPC_NETWORK如要單純指定前置字串長度 (子網路遮罩),請直接使用
prefix-length標記。如果省略位址範圍, Google Cloud會自動選取虛擬私有雲網路中未使用的位址範圍。下列範例會以16位元前置字串長度選取未使用的 IP 位址範圍。gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description=DESCRIPTION \ --network=VPC_NETWORK將指令中的預留位置值替換為下列值:
RESERVED_RANGE_NAME:分配的範圍名稱,例如my-allocated-range。DESCRIPTION:範圍的說明,例如allocated for my-service。VPC_NETWORK:虛擬私有雲網路的名稱,例如my-vpc-network。
在服務供應商網路與您的虛擬私有雲網路之間建立私人連線:
控制台
前往 Google Cloud 控制台的「VPC networks」(VPC 網路) 頁面。
選取要連線至私人集區虛擬私有雲網路的虛擬私有雲網路。
選取「私人服務存取」分頁標籤。
在「Private service access」(私人服務連線) 分頁中,選取「Private connections to services」(私人服務連線) 分頁標籤。
按一下「建立連線」,在網路與服務生產端網路之間建立私人連線。
在「Assigned allocation」(已指派的分配範圍) 中,選取您在上一個步驟中建立的分配範圍。
按一下 [Connect] (連線) 建立連線。
gcloud
建立私人連線:
gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=ALLOCATED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID將指令中的預留位置值替換為下列值:
ALLOCATED_RANGE_NAME:您在上一個步驟中建立的分配範圍名稱。VPC_NETWORK:虛擬私有雲網路的名稱。PROJECT_ID:虛擬私有雲網路所在專案的 ID。
這個指令會啟動長期執行作業並傳回作業名稱。
確認作業是否成功,並將
OPERATION_NAME替換為先前步驟傳回的作業名稱。gcloud services vpc-peerings operations describe \ --name=OPERATION_NAME
[選用:共用虛擬私有雲情境]。如果您使用的是共用虛擬私有雲,請在主專案中建立分配的 IP 範圍和私人連線。這些作業通常必須由主專案中的網路管理員執行。主專案設定完成後,服務專案中的 VM 執行個體就可使用私人連線與服務供應商網路連線。代管虛擬私有雲連線的專案,以及包含私人集區的專案,必須屬於同一個機構。
[選用:使用防火牆規則]。如果您要在虛擬私有雲網路中建立輸入防火牆規則,請在輸入規則的來源篩選器中,指定您在此處分配的相同 IP 範圍。
後續步驟
- 瞭解如何建立及管理私人集區。