本頁說明如何建立 AlloyDB for PostgreSQL 私人服務存取權所需的虛擬私有雲 (VPC) IP 位址範圍。如要瞭解 AlloyDB 如何使用私人服務存取權,讓內部資源彼此通訊,請參閱「關於私人服務存取權」。
如要在與 AlloyDB 叢集位於相同Google Cloud 專案的虛擬私有雲 (VPC) 網路中建立私有服務存取設定,請執行下列兩項作業:
- 在虛擬私有雲網路中建立分配的 IP 位址範圍。 
- 在虛擬私有雲網路與基礎 Google Cloud 虛擬私有雲網路之間建立私人連線。 您也可以設定私人服務連線,將 AlloyDB 叢集連線至位於其他Google Cloud 專案的資源。如要這麼做,您必須使用共用虛擬私有雲合併這兩個專案的虛擬私有雲網路。 
事前準備
- 您使用的 Google Cloud 專案必須已啟用 AlloyDB 存取權。
- 您必須在使用的 Google Cloud 專案中擁有下列其中一個 IAM 角色:
      - roles/alloydb.admin(AlloyDB 管理員預先定義的 IAM 角色)
- roles/owner(擁有者基本 IAM 角色)
- roles/editor(編輯者基本 IAM 角色)
 如果您不具備上述任一角色,請與機構管理員聯絡,並要求存取權。 
- 如要建立私人服務存取設定,您也必須具備下列 IAM 權限:
  - compute.networks.list
- compute.addresses.create
- compute.addresses.list
- servicenetworking.services.addPeering
 
建立虛擬私有雲 IP 位址範圍
主控台
- 前往「VPC networks」(VPC 網路) 頁面。 
- 選取 AlloyDB 和 VPC 網路所在的專案。 
- 按一下要用於私人服務存取權的虛擬私有雲網路名稱。 
- 在「虛擬私有雲網路詳細資料」頁面中,捲動瀏覽分頁標籤清單,找到並點選「私人服務存取權」分頁標籤。 
- 在「Private service access」(私人服務存取) 分頁中,按一下「Allocated IP ranges for services」(已分配的服務 IP 範圍) 分頁標籤。 
- 按一下「Allocate IP range」(分配 IP 範圍)。 
- 在「Name」(名稱) 和「Description」(說明) 欄位中,輸入已分配範圍的名稱和說明。 
- 為分配範圍指定「IP range」(IP 範圍) 值: - 如要指定 IP 位址範圍,請按一下「自訂」,然後輸入 CIDR 區塊,例如 - 192.168.0.0/16。- 為 AlloyDB 提供充足的位址空間,建議前置字元長度為 - 16或更短。
- 如要指定前置字串長度並讓 Google 選取可用範圍,請按照下列步驟操作: - 按一下「自動」。 
- 請以純數字形式輸入前置字元長度,例如 - 16。
 
 
- 按一下 [Allocate] (分配),建立已分配範圍。 
- 在「Private service access」(私人服務存取) 分頁中,按一下「Private connections to services」(私人服務連線) 分頁標籤。 
- 按一下 [Create connection] (建立連線),在網路與服務生產端之間建立私人連線。 
- 確認 Google Cloud Platform 是已連結服務的生產者。 
- 在「Assigned allocation」(已指派的分配範圍) 部分,選取您先前建立的已分配 IP 範圍。 
- 按一下 [Connect] (連線) 建立連線。 
gcloud
如要使用 gcloud CLI,您可以安裝及初始化 Google Cloud CLI,也可以使用 Cloud Shell。
- 使用 - gcloud config set指令,將預設專案設為 AlloyDB 和 VPC 網路所在的專案。- gcloud config set project PROJECT_ID- 將 - PROJECT_ID替換為 AlloyDB 和 VPC 網路所在的專案 ID。
- 使用 - gcloud compute addresses create指令建立已分配的 IP 位址範圍。- 為 AlloyDB 提供足夠的位址空間,建議前置長度為 - 16以下。- 如要指定位址範圍與前置字串長度 (子網路遮罩),請使用 - --addresses和- --prefix-length標記。例如,如要分配 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- 更改下列內容: - RESERVED_RANGE_NAME:分配範圍的名稱,例如- my-allocated-range
- DESCRIPTION:範圍的說明,例如- allocated for my-service
- VPC_NETWORK:虛擬私有雲網路的名稱,例如- my-vpc-network。如果是共用虛擬私有雲網路,請設為虛擬私有雲網路的完整路徑,例如- projects/cymbal-project/global/networks/shared-vpc-network。
 
- 如要單純指定前置字串長度 (子網路遮罩),請使用 - --prefix-length標記。如果省略位址範圍,Google Cloud 會自動選取您 VPC 網路中未使用的位址範圍。- 下列範例會以 - 16位元前置字串長度選取未使用的 IP 位址範圍:- gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="DESCRIPTION" \ --network=VPC_NETWORK
 - 下列範例會建立與 Google 的私人連線,讓 - default虛擬私有雲網路中的 VM 執行個體可以透過私人服務存取權與支援該功能的 Google 服務連線。- gcloud compute addresses create google-managed-services-default \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --description="peering range for Google" \ --network=default
- 使用 - gcloud services vpc-peerings connect指令建立私人連線。- gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK- 更改下列內容: - RESERVED_RANGE_NAME:您建立的已分配 IP 位址範圍名稱
- VPC_NETWORK:虛擬私有雲網路名稱
 - 這個指令會啟動長期執行作業並傳回作業名稱。 
- 確認作業是否已經成功完成。 - gcloud services vpc-peerings operations describe --name=OPERATION_NAME- 將 - OPERATION_NAME替換為先前步驟傳回的作業名稱。