連線至虛擬私人雲端網路

本頁說明如何使用無伺服器 VPC 存取,將標準環境中的 App Engine 服務直接連線至虛擬私有雲網路,以便存取 Compute Engine VM 執行個體、Memorystore 執行個體,以及任何其他具有內部 IP 位址的資源。

事前準備

建立無伺服器 VPC 存取連接器

如要將要求傳送至虛擬私有雲網路,並接收相應的回應,而不使用公開網際網路,則可以採用無伺服器 VPC 存取連接器。

如果連接器與虛擬私有雲網路位於相同專案,您可以透過現有子網路建立連接器,也可以建立連接器和新的子網路。

如果連接器位於服務專案中,並使用 Shared VPC 網路,則連接器和相關聯的虛擬私有雲網路會位於不同專案。如果連接器和虛擬私有雲網路位於不同專案中,則 Shared VPC 網路管理員必須「先在」Shared VPC 網路中建立連接器的子網路,您才能建立連接器,「且」必須使用現有子網路建立連接器。

如要進一步瞭解子網路需求,請參閱「連接器子網路需求」。

如要瞭解連接器處理量 (包括機器類型和資源調度),請參閱「處理量和資源調度」。

您可以使用 Google Cloud 控制台、Google Cloud CLI 或 Terraform 建立連接器。

控制台

  1. 前往「Serverless VPC Access」(無伺服器 VPC 存取) 總覽頁面。

    前往「Serverless VPC Access」(無伺服器 VPC 存取)

  2. 按一下「Create connector」(建立連接器)。

  3. 在「Name」(名稱) 欄位中,輸入連接器的名稱,並符合 Compute Engine 命名慣例,且名稱長度不得超過 21 個半形字元,連字號 (-) 算兩個半形字元。

  4. 在「Region」(區域) 欄位中,選取連接器的區域。這必須與無伺服器服務的地區相符。

    如果服務或工作位於 us-centraleurope-west 區域,請使用 us-central1europe-west1

  5. 在「Network」(網路) 欄位中,選取要附加連接器的虛擬私有雲網路。

  6. 在「Subnet」(子網路) 欄位中,選取下列其中一個選項:

    • 使用現有子網路建立連接器:在「Subnet」(子網路) 欄位中選取現有子網路。

    • 建立連接器和新的子網路:在「subnet」(子網路) 欄位中選取「Custom IP range」(自訂 IP 範圍)。然後,輸入未使用的 /28 CIDR 中的第一個位址 (例如 10.8.0.0/28),做為在連接器的虛擬私有雲網路中 Google Cloud 建立的新子網路主要 IPv4 位址範圍。請確保 IP 範圍不會與連接器虛擬私有雲網路中的任何現有路徑衝突。新子網路的名稱開頭為「aet-」前置字串。

  7. (選用) 如要設定縮放選項以進一步控管連接器,請按一下「Show Scaling Settings」(顯示縮放設定) 以顯示縮放表單。

    1. 設定連接器的執行個體數量下限和上限,或使用預設值 (下限為 2,上限為 10)。如果流量用量需要,連接器會擴充至指定上限,但「流量減少時,連接器不會縮減」。你必須使用介於 210 之間的值。
    2. 在「Instance Type」(執行個體類型) 選單中,選擇要用於連接器的機器類型,或使用預設的 e2-micro。選擇執行個體類型時,請注意右側的費用側欄,其中會顯示頻寬和費用預估值。
  8. 點選「Create」(建立)。

  9. 若連接器可供使用,其名稱旁邊會顯示一個綠色勾號。

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. gcloud 元件更新到最新版本:

    gcloud components update
  3. 確保針對您的專案啟用無伺服器 VPC 存取 API:

    gcloud services enable vpcaccess.googleapis.com
  4. 使用下列任一選項建立連接器:

    如要瞭解詳情和選用引數,請參閱 gcloud 參考資料

    • 使用現有子網路建立連接器

      gcloud compute networks vpc-access connectors create CONNECTOR_NAME \
       --region REGION \
       --subnet SUBNET_NAME \
       --subnet-project HOST_PROJECT_ID \
       --min-instances MIN \
       --max-instances MAX \
       --machine-type MACHINE_TYPE

      更改下列內容:

      • CONNECTOR_NAME:連接器的名稱,須符合 Compute Engine 命名慣例,且長度不得超過 21 個字元,連字號 (-) 算兩個字元。
      • REGION:連接器的區域,與無伺服器服務或作業的區域相符。如果您的服務或工作位於 us-centraleurope-west,請使用 us-central1europe-west1
      • SUBNET_NAME:現有子網路的名稱。
      • HOST_PROJECT_ID:Shared VPC 主機專案 ID。如果連接器和現有子網路位於同一個專案,請省略 --subnet-project 旗標。
      • MIN:連接器使用的執行個體數量下限。請使用介於 2 (預設值) 和 9 之間的整數。
      • MAX:連接器可使用的執行個體數量上限。請使用介於 310 之間的整數 (預設值)。如果連接器擴充至執行個體數量上限,「就不會縮減」
      • MACHINE_TYPE:必須是下列其中一項:f1-microe2-microe2-standard-4
    • 建立連接器和新的子網路

      gcloud compute networks vpc-access connectors create CONNECTOR_NAME \
       --region REGION \
       --network VPC_NETWORK \
       --range IP_RANGE
       --min-instances MIN \
       --max-instances MAX \
       --machine-type MACHINE_TYPE

      更改下列內容:

      • CONNECTOR_NAME:連接器的名稱,須符合 Compute Engine 命名慣例,且長度不得超過 21 個字元,連字號 (-) 算兩個字元。
      • REGION:連接器的區域,與無伺服器服務或作業的區域相符。如果您的服務或工作位於 us-centraleurope-west,請使用 us-central1europe-west1
      • VPC_NETWORK:要附加連接器的虛擬私有雲網路名稱。連接器和虛擬私有雲網路必須位於相同專案中。
      • IP_RANGE:提供一個未使用的 /28 CIDR(例如 10.8.0.0/28),作為 Google Cloud 在連接器的虛擬私有雲網路中建立之新子網路的主要 IPv4 位址範圍。請確保 IP 範圍不會與連接器虛擬私有雲網路中的任何現有路徑衝突。新子網路的名稱開頭為「aet-」前置字串。
      • MIN:連接器使用的執行個體數量下限。請使用介於 2 (預設值) 和 9 之間的整數。
      • MAX:連接器可使用的執行個體數量上限。請使用介於 310 之間的整數 (預設值)。如果連接器擴充至執行個體數量上限,「就不會縮減」
      • MACHINE_TYPE:必須是下列其中一項:f1-microe2-microe2-standard-4
  5. 先驗證您的連接器是否處於 READY 狀態,然後再使用:

    gcloud compute networks vpc-access connectors describe CONNECTOR_NAME \
    --region REGION

    更改下列內容:

    • CONNECTOR_NAME:連接器名稱,也就是您在上一個步驟中指定的名稱。
    • REGION:連接器的區域,也就是您在上一個步驟中指定的區域。

    輸出內容應包含 state: READY 這一行。

  6. Terraform

    您可以使用 Terraform 資源啟用 vpcaccess.googleapis.com API。

    resource "google_project_service" "vpcaccess-api" {
      project = var.project_id # Replace this with your project ID in quotes
      service = "vpcaccess.googleapis.com"
    }

    您可以使用 Terraform 模組建立虛擬私有雲網路和子網路,然後建立連接器。

    module "test-vpc-module" {
      source       = "terraform-google-modules/network/google"
      version      = "~> 13.0"
      project_id   = var.project_id # Replace this with your project ID in quotes
      network_name = "my-serverless-network"
      mtu          = 1460
    
      subnets = [
        {
          subnet_name   = "serverless-subnet"
          subnet_ip     = "10.10.10.0/28"
          subnet_region = "us-central1"
        }
      ]
    }
    
    module "serverless-connector" {
      source     = "terraform-google-modules/network/google//modules/vpc-serverless-connector-beta"
      version    = "~> 13.0"
      project_id = var.project_id
      vpc_connectors = [{
        name        = "central-serverless"
        region      = "us-central1"
        subnet_name = module.test-vpc-module.subnets["us-central1/serverless-subnet"].name
        # host_project_id = var.host_project_id # Specify a host_project_id for shared VPC
        machine_type  = "e2-standard-4"
        min_instances = 2
        max_instances = 7
        }
        # Uncomment to specify an ip_cidr_range
        #   , {
        #     name          = "central-serverless2"
        #     region        = "us-central1"
        #     network       = module.test-vpc-module.network_name
        #     ip_cidr_range = "10.10.11.0/28"
        #     subnet_name   = null
        #     machine_type  = "e2-standard-4"
        #     min_instances = 2
        #   max_instances = 7 }
      ]
      depends_on = [
        google_project_service.vpcaccess-api
      ]
    }

將服務設定為使用連接器

建立 Serverless VPC Access 連接器後,您必須設定 App Engine 應用程式中要連線至虛擬私有雲網路的每個服務。

如要為應用程式中的服務指定連接器:

  1. vpc_access_connector 欄位新增至服務的 app.yaml 檔案:

    vpc_access_connector:
     name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
    

    其中 PROJECT_ID 是您的 Google Cloud 專案 ID,REGION 是連接器所在的區域,CONNECTOR_NAME 則是連接器的名稱。

  2. 部署服務:

    gcloud app deploy
    

您重新部署服務後,即可傳送要求至內部 IP 位址,以存取虛擬私人雲端網路中的資源。

存取虛擬私有雲資源

服務專案中連接器所需的防火牆規則

如果您在獨立的虛擬私有雲網路中,或在 Shared VPC 網路的主專案中建立連接器, Google Cloud 會為連接器的運作建立所有必要的防火牆規則。詳情請參閱「獨立虛擬私有雲網路或 Shared VPC 主專案中的連接器防火牆規則」。

不過,如果您在服務專案中建立連接器,且連接器以主專案中的 Shared VPC 網路為目標,則必須新增防火牆規則,允許連接器從下列範圍傳輸運作所需的流量:

這些範圍是由 Cloud Run、Cloud Run 函式和 App Engine 標準環境的基礎 Google 基礎架構使用。來自這些 IP 位址的所有要求都源自 Google 基礎架構,確保每個無伺服器資源只會與所連線的連接器通訊。

您也必須允許從連接器子網路到虛擬私有雲網路中資源的流量。

如要執行這些步驟,您必須在主機專案中具備下列其中一個角色:

如要進行基本設定,請套用規則,允許連線至 Shared VPC 網路的任何服務專案中的無伺服器資源,向網路中的任何資源傳送要求。

如要套用這些規則,請在主機專案中執行下列指令:

  1. 建立防火牆規則,允許來自 Google 無伺服器基礎架構與健康狀態探測器的請求,連線至網路中的所有連接器。在這些指令中,UDP 和 TCP 通訊埠分別用於 Proxy 和 HTTP 健康狀態檢查。請勿變更指定的通訊埠。

    gcloud compute firewall-rules create serverless-to-vpc-connector \
        --allow tcp:667,udp:665-666,icmp \
        --source-ranges=35.199.224.0/19 \
        --direction=INGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK
    gcloud compute firewall-rules create vpc-connector-to-serverless \
        --allow tcp:667,udp:665-666,icmp \
        --destination-ranges=35.199.224.0/19 \
        --direction=EGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK
    gcloud compute firewall-rules create vpc-connector-health-checks \
        --allow tcp:667 \
        --source-ranges=35.191.0.0/16,35.191.192.0/18,130.211.0.0/22 \
        --direction=INGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK

    VPC_NETWORK 替換為要附加連接器的虛擬私有雲網路名稱。

  2. 在虛擬私有雲網路上建立輸入防火牆規則,允許來自以此網路為目標的連接器的要求:

    gcloud compute firewall-rules create vpc-connector-requests \
        --allow tcp,udp,icmp \
        --direction=INGRESS \
        --source-tags vpc-connector \
        --network=VPC_NETWORK

    這項規則可讓連接器存取網路中的所有資源。如要限制無伺服器環境可透過無伺服器 VPC 存取連線的資源,請參閱「限制連接器 VM 對虛擬私有雲網路資源的存取權」。

為特定連接器建立防火牆規則

按照「服務專案中連接器的必要防火牆規則」一文中的程序操作,會產生適用於「所有」連接器的防火牆規則,包括目前的連接器和日後建立的連接器。如果不想這樣做,而是只想為特定連接器建立規則,可以設定規則的適用範圍,讓規則只套用至這些連接器。

如要將規則範圍限制為特定連接器,可以使用下列其中一種機制:

  • 網路標記:每個連接器都有兩個網路標記:vpc-connectorvpc-connector-REGION-CONNECTOR_NAME。使用後者格式,將防火牆規則的範圍限制為特定連接器。
  • IP 範圍:僅適用於輸出規則,不適用於輸入規則。您可以使用連接器子網路的 IP 範圍,將防火牆規則的範圍限制為單一 VPC 連接器。

限制連接器 VM 存取虛擬私有雲網路資源

您可以使用虛擬私有雲防火牆規則防火牆政策中的規則,限制連接器對目標虛擬私有雲網路中資源的存取權。您可以使用下列任一策略來達成這些限制:

  • 建立輸入規則,目標代表您要限制連接器 VM 存取的資源,其來源代表連接器 VM。
  • 建立輸出規則,目標代表連接器 VM,目的地代表您要限制連接器 VM 存取的資源。

以下範例說明每種策略。

使用輸入規則限制存取權

選擇網路標記或 CIDR 範圍,控管虛擬私有雲網路的傳入流量。

網路標記

下列步驟說明如何建立輸入規則,根據連接器網路標記限制連接器對虛擬私有雲網路的存取權。

  1. 確認您具備插入防火牆規則的必要權限。您必須具備下列任一 Identity and Access Management (IAM) 角色:

  2. 拒絕虛擬私有雲網路的連接器流量。

    在虛擬私有雲網路中建立優先順序低於 1000 的輸入防火牆規則,拒絕來自連接器網路標記的輸入流量。這會覆寫無伺服器 VPC 存取在虛擬私有雲網路中預設建立的隱含防火牆規則。

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --source-tags=VPC_CONNECTOR_NETWORK_TAG \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --priority=PRIORITY

    更改下列內容:

    • RULE_NAME:新防火牆規則的名稱。例如:deny-vpc-connector

    • PROTOCOL:您要允許 VPC 連接器使用的一或多個通訊協定。支援的通訊協定為 tcpudp;舉例來說,tcp:80,udp 允許 TCP 流量通過通訊埠 80 和 UDP 流量。詳情請參閱 allow 旗標的說明文件。

      為確保安全和進行驗證,您也可以設定拒絕規則,封鎖下列不支援的通訊協定流量:ahallespicmpipipsctp

    • VPC_CONNECTOR_NETWORK_TAG:若您要限制所有連接器 (包括未來建立的任何連接器) 的存取,請使用通用連接器網路標記;若只要限制特定連接器的存取,則使用該連結器的專屬網路標記。

      • 通用網路標記: vpc-connector
      • 專屬網路標記: vpc-connector-REGION-CONNECTOR_NAME

        替換下列內容:

        • REGION:要限制的連接器區域
        • CONNECTOR_NAME:要限制的連接器名稱

      如要進一步瞭解連接器網路標記,請參閱「網路標記」。

    • VPC_NETWORK:虛擬私有雲網路的名稱

    • PRIORITY:介於 0 到 65535 之間的整數。例如,0 代表最高優先順序。

  3. 允許連接器流量流向應接收連接器流量的資源。

    使用 allowtarget-tags 旗標建立輸入防火牆規則,以虛擬私有雲網路中要讓 VPC 連接器存取的資源為目標。將這項規則的優先順序設為低於上一步建立的規則。

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --source-tags=VPC_CONNECTOR_NETWORK_TAG \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --target-tags=RESOURCE_TAG \
    --priority=PRIORITY

    更改下列內容:

    • RULE_NAME:新防火牆規則的名稱。例如:allow-vpc-connector-for-select-resources

    • PROTOCOL:您要允許 VPC 連接器使用的一或多個通訊協定。支援的通訊協定為 tcpudp;舉例來說,tcp:80,udp 允許 TCP 流量通過通訊埠 80 和 UDP 流量。詳情請參閱 allow 旗標的說明文件。

    • VPC_CONNECTOR_NETWORK_TAG:若您要限制所有連接器 (包括未來建立的任何連接器) 的存取,請使用通用連接器網路標記;若只要限制特定連接器的存取,則使用該連結器的專屬網路標記。這必須與您在上一個步驟中指定的網路標記相符。

      • 通用網路標記: vpc-connector
      • 專屬網路標記: vpc-connector-REGION-CONNECTOR_NAME

        替換下列內容:

        • REGION:要限制的連接器區域
        • CONNECTOR_NAME:要限制的連接器名稱

      如要進一步瞭解連接器網路標記,請參閱「網路標記」。

    • VPC_NETWORK:虛擬私有雲網路的名稱

    • RESOURCE_TAG:您希望 VPC 連接器存取的虛擬私有雲資源網路標記

    • PRIORITY:小於您在上一步中設定優先順序的整數。舉例來說,如果您將上一個步驟中建立的規則優先順序設為 990,請嘗試設為 980。

如要進一步瞭解建立防火牆規則時的必要和選用旗標,請參閱 gcloud compute firewall-rules create 說明文件

CIDR 範圍

下列步驟說明如何建立輸入規則,根據連接器的 CIDR 範圍,限制連接器對虛擬私有雲網路的存取權。

  1. 確認您具備插入防火牆規則的必要權限。您必須具備下列任一 Identity and Access Management (IAM) 角色:

  2. 拒絕虛擬私有雲網路的連接器流量。

    在虛擬私有雲網路中建立優先順序低於 1000 的輸入防火牆規則,拒絕來自連線程式 CIDR 範圍的輸入流量。這會覆寫無伺服器 VPC 存取在虛擬私有雲網路中預設建立的隱含防火牆規則。

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --source-ranges=VPC_CONNECTOR_CIDR_RANGE \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --priority=PRIORITY

    更改下列內容:

    • RULE_NAME:新防火牆規則的名稱。例如:deny-vpc-connector

    • PROTOCOL:您要允許 VPC 連接器使用的一或多個通訊協定。支援的通訊協定為 tcpudp;舉例來說,tcp:80,udp 允許 TCP 流量通過通訊埠 80 和 UDP 流量。詳情請參閱 allow 旗標的說明文件。

      為確保安全和進行驗證,您也可以設定拒絕規則,封鎖下列不支援的通訊協定流量:ahallespicmpipipsctp

    • VPC_CONNECTOR_CIDR_RANGE:要限制存取的連接器 CIDR 範圍

    • VPC_NETWORK:虛擬私有雲網路的名稱

    • PRIORITY:介於 0 到 65535 之間的整數。例如,0 代表最高優先順序。

  3. 允許連接器流量流向應接收連接器流量的資源。

    使用 allowtarget-tags 旗標建立輸入防火牆規則,以虛擬私有雲網路中要讓 VPC 連接器存取的資源為目標。將這項規則的優先順序設為低於上一步建立的規則。

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --source-ranges=VPC_CONNECTOR_CIDR_RANGE \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --target-tags=RESOURCE_TAG \
    --priority=PRIORITY

    更改下列內容:

    • RULE_NAME:新防火牆規則的名稱。例如:allow-vpc-connector-for-select-resources

    • PROTOCOL:您要允許 VPC 連接器使用的一或多個通訊協定。支援的通訊協定為 tcpudp;舉例來說,tcp:80,udp 允許 TCP 流量通過通訊埠 80 和 UDP 流量。詳情請參閱 allow 旗標的說明文件。

    • VPC_CONNECTOR_CIDR_RANGE:您要限制存取權的連接器 CIDR 範圍

    • VPC_NETWORK:虛擬私有雲網路的名稱

    • RESOURCE_TAG:您希望 VPC 連接器存取的虛擬私有雲資源網路標記

    • PRIORITY:小於您在上一步中設定優先順序的整數。舉例來說,如果您將上一個步驟中建立的規則優先順序設為 990,請嘗試設為 980。

如要進一步瞭解建立防火牆規則時的必要和選用旗標,請參閱 gcloud compute firewall-rules create 的說明文件

使用輸出規則限制存取

下列步驟說明如何建立輸出規則,以限制連接器存取權。

  1. 請確認您具備插入防火牆規則的必要權限。您必須具備下列其中一個 Identity and Access Management (IAM) 角色:

  2. 拒絕從連接器輸出的流量。

    在無伺服器 VPC 存取連接器上建立輸出防火牆規則,防止連接器將輸出流量傳送至任何目的地 (已建立的回應除外)。

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --direction=EGRESS \
    --target-tags=VPC_CONNECTOR_NETWORK_TAG \
    --network=VPC_NETWORK \
    --priority=PRIORITY

    更改下列內容:

    • RULE_NAME:新防火牆規則的名稱。例如:deny-vpc-connector

    • PROTOCOL:您要允許 VPC 連接器使用的一或多個通訊協定。支援的通訊協定為 tcpudp;舉例來說,tcp:80,udp 允許 TCP 流量通過通訊埠 80 和 UDP 流量。詳情請參閱 allow 旗標的說明文件。

      為確保安全和進行驗證,您也可以設定拒絕規則,封鎖下列不支援的通訊協定流量:ahallespicmpipipsctp

    • VPC_CONNECTOR_NETWORK_TAG:通用 VPC 連接器網路標記。如果您希望規則套用至所有現有 VPC 連接器,以及日後建立的任何 VPC 連接器,請使用這個標記。如要控管特定連接器,請使用專屬的 VPC 連接器網路標記。

    • VPC_NETWORK:虛擬私有雲網路的名稱

    • PRIORITY:介於 0 到 65535 之間的整數。例如,0 代表最高優先順序。

  3. 如果目的地位於您希望連接器存取的 CIDR 範圍內,請允許輸出流量。

    使用 allowdestination-ranges 旗標建立防火牆規則,允許連接器輸出流量前往特定目的地範圍。將目的地範圍設為虛擬私有雲網路中資源的 CIDR 範圍,讓連接器能夠存取該資源。將這項規則的優先順序設為低於上一步建立的規則。

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --destination-ranges=RESOURCE_CIDR_RANGE \
    --direction=EGRESS \
    --network=VPC_NETWORK \
    --target-tags=VPC_CONNECTOR_NETWORK_TAG \
    --priority=PRIORITY

    更改下列內容:

    • RULE_NAME:新防火牆規則的名稱。例如:allow-vpc-connector-for-select-resources

    • PROTOCOL:您要允許 VPC 連接器使用的一或多個通訊協定。支援的通訊協定為 tcpudp;舉例來說,tcp:80,udp 允許 TCP 流量通過通訊埠 80 和 UDP 流量。詳情請參閱 allow 旗標的說明文件。

    • RESOURCE_CIDR_RANGE:您要限制存取的連接器 CIDR 範圍

    • VPC_NETWORK:虛擬私有雲網路的名稱

    • VPC_CONNECTOR_NETWORK_TAG:通用 VPC 連接器網路標記。如果您希望規則套用至所有現有 VPC 連接器,以及日後建立的任何 VPC 連接器,請使用這個標記。如要控管特定連接器,請使用專屬的 VPC 連接器網路標記。若您在前一個步驟中使用的是專屬網路標記,請沿用該專屬網路標記。

    • PRIORITY:小於您在上一步中設定優先順序的整數。舉例來說,如果您將上一個步驟中建立的規則優先順序設為 990,請嘗試設為 980。

如要進一步瞭解建立防火牆規則時的必要和選用標記,請參閱 gcloud compute firewall-rules create 說明文件

管理連接器

控管服務的輸出流量

根據預設,只有傳送至內部 IP 位址和內部 DNS 名稱的要求,才會透過無伺服器虛擬私有雲存取連接器轉送。您可以在 app.yaml 檔案中指定服務的輸出設定。

輸出設定與網址擷取服務不相容。 使用 urlfetch 程式庫會忽略輸出設定,要求也不會透過無伺服器 VPC 存取連接器傳送。

如要設定 App Engine 服務的出站行為,請按照下列步驟操作:

  1. 在服務的 app.yaml 檔案中,將 egress_setting 屬性新增至 vpc_access_connector 欄位:

    vpc_access_connector:
      name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
      egress_setting: EGRESS_SETTING

    取代:

    • PROJECT_ID 替換為 Google Cloud 專案 ID
    • REGION 替換為連接器所在的區域
    • CONNECTOR_NAME 替換為連接器名稱
    • EGRESS_SETTING,並符合下列其中一項條件:
      • private-ranges-only預設值。只有對 RFC 1918RFC 6598 IP 位址範圍或內部 DNS 名稱的要求,才會轉送至您的 VPC 網路。所有其他要求都會直接轉送至網際網路。
      • all-traffic 服務的所有輸出要求都會轉送至虛擬私有雲網路。要求隨後會受到虛擬私有雲網路的防火牆、DNS 和路由規則限制。請注意,將所有輸出要求路由至 VPC 網路,會增加無伺服器 VPC 存取連接器處理的輸出量,並可能產生費用
  2. 部署服務:

    gcloud app deploy
    

中斷服務與虛擬私有雲網路的連線

如要中斷服務與虛擬私有雲網路的連線,請從 app.yaml 檔案中移除 vpc_access_connector 欄位,然後重新部署服務。

即使連接器沒有流量且已中斷連線,仍會產生費用。詳情請參閱計費。如果不再需要連接器,請務必將其刪除,以免持續計費。

更新連接器

您可以使用 Google Cloud 控制台、Google Cloud CLI 或 API,更新及監控連結器的下列屬性:

  • 機器 (執行個體) 類型
  • 執行個體數量下限和上限
  • 近期處理量、執行個體數量和 CPU 使用率

更新機器類型

控制台

  1. 前往「Serverless VPC Access」(無伺服器 VPC 存取) 總覽頁面。

    前往「Serverless VPC Access」(無伺服器 VPC 存取)

  2. 選取要編輯的連結器,然後按一下「Edit」(編輯)。

  3. 在「Instance type」(執行個體類型) 清單中,選取偏好的機器 (執行個體) 類型。如要瞭解可用的機器類型,請參閱處理量和資源調度說明文件。

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 如要更新連接器機型,請在終端機中執行下列指令:

    gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --machine-type=MACHINE_TYPE
    更改下列內容:

    • CONNECTOR_NAME:連接器名稱
    • REGION:連接器所在區域的名稱
    • MACHINE_TYPE:偏好的機器類型。如要瞭解可用的機器類型,請參閱處理量和資源調度說明文件。

減少執行個體數量下限和上限

如要減少執行個體數量下限和上限,請按照下列步驟操作:

  1. 使用偏好的值建立新的連接器。
  2. 更新服務或函式,以使用新的連接器。
  3. 遷移流量後,請刪除舊的連接器。

提高執行個體數量下限和上限

控制台

  1. 前往「Serverless VPC Access」(無伺服器 VPC 存取) 總覽頁面。

    前往「Serverless VPC Access」(無伺服器 VPC 存取)

  2. 選取要編輯的連結器,然後按一下「Edit」(編輯)。

  3. 在「Minimum instances」(執行個體數量下限) 欄位中,選取偏好的執行個體數量下限。

    這個欄位的最小值是目前的值。這個欄位的最大可能值是「Maximum instances」(執行個體數量上限) 欄位中的目前值減 1。舉例來說,如果「Maximum instances」(執行個體數量上限) 欄位的值為 8,則「Minimum instances」(執行個體數量下限) 欄位的值最多為 7。

  4. 在「Maximum instances」(執行個體數量上限) 欄位中,選取所需的執行個體數量上限。

    這個欄位的最小值是目前的值。這個欄位的最大可能值為 10。

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 如要增加連接器的執行個體數量下限或上限,請在終端機中執行下列指令:

    gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --min-instances=MIN_INSTANCES --max-instances=MAX_INSTANCES
    更改下列內容:

    • CONNECTOR_NAME:連接器名稱
    • REGION:連接器所在區域的名稱
    • MIN_INSTANCES:您偏好的執行個體數量下限。
      • 這個欄位的最小值是 min_instances 的目前值。如要查看目前的值,請參閱「查看目前的屬性值」。
      • 這個欄位的最大可能值是目前的 max_instances 值減 1,因為 min_instances 必須小於 max_instances。舉例來說,如果 max_instances 為 8,這個欄位的最大可能值為 7。如果連接器使用預設的 max-instances 值 10,這個欄位的最大可能值為 9。如要找出 max-instances 的值,請參閱「找出目前的屬性值」。
    • MAX_INSTANCES

      • 這個欄位的最小值是 max_instances 的目前值。如要查看目前的值,請參閱「查看目前的屬性值」。
      • 這個欄位的最大值為 10。

      如果只想增加執行個體數量下限,但不想增加上限,您仍須指定執行個體數量上限。反之,如果您只想更新執行個體數量上限,但不想更新下限,還是必須指定執行個體數量下限。如要將執行個體數量下限或上限維持在目前值,請指定目前值。如要查看目前的值,請參閱「找出目前的屬性值」。

找出目前的屬性值

如要查看連接器的目前屬性值,請在終端機中執行下列指令:

gcloud compute networks vpc-access connectors describe CONNECTOR_NAME --region=REGION --project=PROJECT
更改下列內容:

  • CONNECTOR_NAME:連接器名稱
  • REGION:連接器所在區域的名稱
  • PROJECT:您 Google Cloud 專案的名稱

監控連接器用量

長期監控用量有助於判斷何時該調整連接器的設定。舉例來說,如果 CPU 使用率突然飆升,您可以嘗試增加執行個體數量上限,以提升成效。或者,如果處理量已達上限,您可能會決定改用較大的機器類型。

如要使用 Google Cloud 控制台顯示一段時間內連接器的總處理量、執行個體數量和 CPU 使用率指標圖表,請按照下列步驟操作:

  1. 前往「Serverless VPC Access」(無伺服器 VPC 存取) 總覽頁面。

    前往「Serverless VPC Access」(無伺服器 VPC 存取)

  2. 按一下要監控的連接器名稱。

  3. 選取要顯示的天數,範圍介於 1 到 90 天。

  4. 在「Throughput」(處理量) 圖表中,將指標懸停在圖表上,即可查看連接器最近的處理量。

  5. 在「Number of instances」(執行個體數量) 圖表中,將指標懸停在圖表上,即可查看連接器最近使用的執行個體數量。

  6. 在「CPU Utilization」(CPU 使用率) 圖表中,將指標懸停在圖表上,即可查看連接器的近期 CPU 使用率。圖表會顯示第 50、第 95 和第 99 個百分位數的執行個體 CPU 使用率分布情形。

刪除連接器

刪除連接器之前,請務必先從仍使用該連接器的無伺服器資源中移除連接器。如果先刪除連接器,再從無伺服器資源中移除,之後就無法刪除虛擬私有雲網路。

如果 Shared VPC 使用者在 Shared VPC 主專案中設定連接器,可以使用 gcloud compute networks vpc-access connectors describe 指令列出含有使用特定連接器的無伺服器資源專案。

如要刪除連接器,請使用 Google Cloud 控制台或 Google Cloud CLI:

控制台

  1. 前往Google Cloud 控制台的「Serverless VPC Access overview」(無伺服器 VPC 存取) 總覽頁面:

    前往「Serverless VPC Access」(無伺服器 VPC 存取)

  2. 選取您要刪除的連接器。

  3. 點選「Delete」(刪除)。

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 使用下列 gcloud 指令刪除連接器:

    gcloud compute networks vpc-access connectors delete CONNECTOR_NAME --region=REGION
    

    更改下列內容:

    • CONNECTOR_NAME 替換為您要刪除之連接器的名稱
    • REGION 替換為連接器所在的區域

管理專案的自訂限制條件

本節說明如何為無伺服器 VPC 存取連接器建立自訂限制,並在專案層級強制執行這些限制。如要瞭解自訂機構政策,請參閱「建立及管理自訂機構政策」。

Google Cloud 組織政策可讓您透過程式輔助,集中控管組織的資源。組織政策管理員可以定義組織政策,也就是一組稱為「限制」的限制條件,適用於Google Cloud 資源和這些資源在Google Cloud 資源階層中的子系。您可以在組織、資料夾或專案層級強制執行組織政策。

機構政策提供各種Google Cloud 服務的預先定義限制。不過,如要更精細地自訂組織政策中受限的特定欄位,您也可以建立自訂組織政策。

優點

無伺服器 VPC 存取可讓您使用無伺服器 VPC 存取 API 中的大多數使用者設定欄位,編寫任意數量的自訂限制。舉例來說,您可以建立自訂限制,指定無伺服器 VPC 存取連接器可使用的子網路。

套用後,如果要求違反強制執行自訂限制的政策,gcloud CLI 和無伺服器 VPC 存取記錄中就會顯示錯誤訊息。錯誤訊息會包含限制 ID,以及違反自訂限制的說明。

政策繼承

根據預設,您強制執行政策的資源子系會繼承組織政策。舉例來說,如果您對資料夾強制執行政策, Google Cloud 會對該資料夾中的所有專案強制執行政策。如要進一步瞭解這項行為以及如何變更,請參閱這篇文章

限制

系統不支援指定機型、執行個體數量下限或執行個體數量上限。

事前準備

請確認您知道組織 ID

必要的角色

如要取得管理組織政策所需的權限,請要求管理員授予組織資源的組織政策管理員 (roles/orgpolicy.policyAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

建立自訂限制

自訂限制是在 YAML 檔案中定義,其中包含您要強制執行組織政策的服務所支援的資源、方法、條件和動作。自訂限制的條件是使用一般運算語言 (CEL) 來定義。如要進一步瞭解如何使用 CEL 在自訂限制中建構條件,請參閱「建立及管理自訂限制」的 CEL 相關章節。

如要為無伺服器 VPC 存取自訂限制建立 YAML 檔案,請參閱下列範例:

name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- vpcaccess.googleapis.com/Connector
methodTypes:
- CREATE
condition: "CONDITION"
actionType: ACTION
displayName: DISPLAY_NAME
description: DESCRIPTION

更改下列內容:

  • ORGANIZATION_ID:組織 ID,例如 123456789

  • CONSTRAINT_NAME:新自訂限制的名稱。自訂限制必須以 custom. 開頭,且只能包含大/小寫英文字母或數字,例如 custom.defaultNetworkConstraint。這個欄位的長度上限為 70 個字元,不含前置字元。

  • CONDITION:針對支援服務資源表示法所撰寫的 CEL 條件。這個欄位的長度上限為 1,000 個字元。例如:"resource.network == default"

  • ACTION:符合 condition 時採取動作。可以是 ALLOWDENY

  • DISPLAY_NAME:容易記得的限制名稱。這個欄位的長度上限為 200 個字元。

  • DESCRIPTION:違反政策時,會以錯誤訊息形式顯示且易於理解的限制說明,例如「只有在啟用元件閘道時,才允許建立 Dataproc 叢集」。"Require network to not be set to default." 這個欄位的長度上限為 2000 個字元。

想進一步瞭解如何建立自訂限制,請參閱定義自訂限制

設定自訂限制

控制台

如要建立自訂限制,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Organization policies」(組織政策) 頁面。

    前往「Organization policies」(組織政策)

  2. 在專案選擇工具中,選取要設定組織政策的專案。
  3. 按一下「自訂限制」
  4. 在「顯示名稱」方塊中,輸入容易理解的限制名稱。這個名稱會顯示在錯誤訊息中,可用於識別和偵錯。請勿在顯示名稱中使用 PII 或機密資料,因為錯誤訊息可能會顯示這類名稱。這個欄位最多可包含 200 個字元。
  5. 在「Constraint ID」(限制 ID) 方塊中,輸入新自訂限制的名稱。自訂限制只能包含字母 (包括大寫和小寫) 或數字,例如 custom.disableGkeAutoUpgrade。這個欄位最多可包含 70 個字元,不含前置字元 (custom.),例如 organizations/123456789/customConstraints/custom。請勿在限制 ID 中輸入 PII 或機密資料,因為錯誤訊息可能會顯示上述資訊。
  6. 在「說明」方塊中,輸入使用者可理解的限制說明。違反政策時,系統會顯示這項說明做為錯誤訊息。請提供違反政策的詳細原因,以及如何解決問題。請勿在說明中輸入 PII 或機密資料,因為錯誤訊息可能會顯示上述資訊。這個欄位最多可輸入 2000 個字元。
  7. 在「Resource type」方塊中,選取包含要限制物件和欄位的 Google Cloud REST 資源名稱,例如 container.googleapis.com/NodePool。大多數資源類型最多支援 20 個自訂限制。如果您嘗試建立更多自訂限制,作業會失敗。
  8. 在「強制執行方法」下方,選取要對 REST 「CREATE」方法強制執行限制,還是對「CREATE」和「UPDATE」方法都強制執行限制。如果您對違反限制的資源使用 UPDATE 方法強制執行限制,除非變更可解決違規問題,否則組織政策會封鎖對該資源的變更。
  9. 並非所有 Google Cloud 服務都支援這兩種方法。如要查看各項服務支援的方法,請在「 支援的服務」中找出該服務。

  10. 如要定義條件,請按一下「編輯條件」
    1. 在「新增條件」面板中,建立參照支援服務資源的 CEL 條件,例如 resource.management.autoUpgrade == false。這個欄位最多可輸入 1000 個字元。如要進一步瞭解如何使用 CEL,請參閱「 一般運算語言」。如要進一步瞭解自訂限制中可使用的服務資源,請參閱「 自訂限制支援的服務」。
    2. 按一下 [儲存]
  11. 在「動作」下方,選取符合條件時要允許或拒絕評估方法。
  12. 如果條件評估結果為 true,系統就會封鎖建立或更新資源的作業。

    允許動作是指只有在條件評估為 true 時,才允許建立或更新資源的作業。除了條件中明確列出的情況外,所有其他情況都會遭到封鎖。

  13. 按一下「建立限制」
  14. 在每個欄位中輸入值後,右側會顯示這個自訂限制的對等 YAML 設定。

gcloud

  1. 如要建立自訂限制,請使用下列格式建立 YAML 檔案:
  2.       name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
          resourceTypes:
          - RESOURCE_NAME
          methodTypes:
          - CREATE
          condition: "CONDITION"
          actionType: ACTION
          displayName: DISPLAY_NAME
          description: DESCRIPTION
          

    請替換下列項目:

    • ORGANIZATION_ID:您的機構 ID,例如 123456789
    • CONSTRAINT_NAME:新自訂限制的名稱。自訂限制只能包含字母 (包括大寫和小寫) 或數字,例如 custom.defaultNetworkConstraint。這個欄位最多可包含 70 個字元。
    • RESOURCE_NAME:內含要限制的物件和欄位的 Google Cloud 資源完整名稱,例如: vpcaccess.googleapis.com/Connector
    • CONDITION:針對支援服務資源表示法所撰寫的 CEL 條件。這個欄位最多可輸入 1000 個半形字元。例如: "resource.network == default"
    • 如要進一步瞭解可編寫條件的資源,請參閱「支援的資源」。

    • ACTION:符合 condition 時採取的動作。只能是 ALLOW
    • 如果條件評估結果為 true,表示允許執行建立或更新資源的作業。這也表示系統會封鎖條件中明確列出的情況以外的所有其他情況。

    • DISPLAY_NAME:容易記得的限制名稱。這個欄位最多可包含 200 個字元。
    • DESCRIPTION:違反政策時,會以錯誤訊息形式顯示且易於理解的限制說明。這個欄位最多可輸入 2000 個字元。
  3. 為新的自訂限制建立 YAML 檔案後,您必須加以設定,才能用於組織的組織政策。如要設定自訂限制,請使用 gcloud org-policies set-custom-constraint 指令:
  4.         gcloud org-policies set-custom-constraint CONSTRAINT_PATH
          

    請將 CONSTRAINT_PATH 替換為自訂限制檔案的完整路徑,例如 /home/user/customconstraint.yaml

    這項作業完成後,自訂限制會顯示在 Google Cloud 組織政策清單中,供組織政策使用。

  5. 如要確認是否存在自訂限制,請使用 gcloud org-policies list-custom-constraints 指令:
  6.       gcloud org-policies list-custom-constraints --organization=ORGANIZATION_ID
          

    請將 ORGANIZATION_ID 替換成組織資源的 ID。

    詳情請參閱「 查看組織政策」。

強制執行自訂限制

如要強制執行限制,請建立參照該限制的組織政策,然後將該政策套用至 Google Cloud 資源。

控制台

  1. 前往 Google Cloud 控制台的「Organization policies」(組織政策) 頁面。

    前往「Organization policies」(組織政策)

  2. 在專案選擇工具中,選取要設定組織政策的專案。
  3. 在「Organization policies」(組織政策) 頁面的清單中選取限制,即可查看該限制的「Policy details」(政策詳細資料) 頁面。
  4. 如要為這項資源設定組織政策,請按一下「Manage policy」(管理政策)
  5. 在「Edit policy」(編輯政策) 頁面,選取「Override parent's policy」(覆寫上層政策)
  6. 按一下「Add a rule」(新增規則)
  7. 在「Enforcement」(強制執行) 部分,選取是否要強制執行這項機構政策。
  8. 選用:如要根據標記設定組織政策的條件,請按一下「Add condition」(新增條件)。請注意,如果為組織政策新增條件式規則,您必須至少新增一項無條件規則,否則無法儲存政策。詳情請參閱「 使用標記設定組織政策」。
  9. 按一下「Test changes」(測試變更),模擬組織政策的影響。詳情請參閱「 使用 Policy Simulator 測試組織政策變更」。
  10. 如要在模擬測試模式下強制執行組織政策,請按一下「設定模擬測試政策」。詳情請參閱「 以模擬測試模式建立組織政策」。
  11. 確認機構政策在模擬執行模式下運作正常後,請按一下「設定政策」,設定正式政策。

gcloud

  1. 如要建立含有布林值規則的組織政策,請建立參照限制的政策 YAML 檔案:
  2.         name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
            spec:
              rules:
              - enforce: true
            
            dryRunSpec:
              rules:
              - enforce: true
            
          

    請替換下列項目:

    • PROJECT_ID:要強制執行限制的專案。
    • CONSTRAINT_NAME:要為自訂限制定義的名稱,例如 custom.defaultNetworkConstraint
  3. 如要以模擬測試模式強制執行組織政策,請執行下列指令並加上 dryRunSpec 旗標:
  4.         gcloud org-policies set-policy POLICY_PATH \
              --update-mask=dryRunSpec
          

    請將 POLICY_PATH 替換為組織政策 YAML 檔案的完整路徑。政策最多需要 15 分鐘才會生效。

  5. 確認模擬測試模式中的機構政策能發揮預期效果後,請使用 org-policies set-policy 指令和 spec 旗標設定正式政策:
  6.         gcloud org-policies set-policy POLICY_PATH \
              --update-mask=spec
          

    請將 POLICY_PATH 替換為組織政策 YAML 檔案的完整路徑。政策最多需要 15 分鐘才會生效。

測試自訂限制

如要測試限制連入設定的範例,請在網路設為 default 的專案中部署連接器:

gcloud compute networks vpc-access connectors create org-policy-test \
    --project=PROJECT_ID \
    --region=REGION_ID \
    --network=default

輸出內容如下:

Operation denied by custom org policies: ["customConstraints/custom.defaultNetworkConstraint": "Require network to not be set to default."]

常見用途的自訂組織政策範例

下表提供自訂限制的範例,您可能會發現這些限制有助於使用無伺服器 VPC 存取連接器:

說明 限制語法
要求無伺服器虛擬私有雲存取連接器只能使用特定網路。
    name: organizations/ORGANIZATION_ID/customConstraints/custom.allowlistNetworks
    resourceTypes:
    - vpcaccess.googleapis.com/Connector
    methodTypes:
    - CREATE
    condition: "resource.network == 'allowlisted-network'"
    actionType: ALLOW
    displayName: allowlistNetworks
    description: Require connectors to use a specific network.
說明 限制語法
要求無伺服器 VPC 存取連接器只能存取特定子網路。
    name: organizations/ORGANIZATION_ID/customConstraints/custom.restrictSubnetForProject
    resourceTypes:
    - vpcaccess.googleapis.com/Connector
    methodTypes:
    - CREATE
    condition: "resource.subnet.name == 'allocated-subnet'"
    actionType: ALLOW
    displayName: restrictSubnetForProject
    description: This project is only allowed to use the subnet "allocated-subnet".

疑難排解

服務帳戶權限

如要在 Google Cloud 專案中執行作業,無伺服器 VPC 存取會使用無伺服器 VPC 存取服務代理服務帳戶。這個服務帳戶的電子郵件地址格式如下:

service-PROJECT_NUMBER@gcp-sa-vpcaccess.iam.gserviceaccount.com

根據預設,這個服務帳戶具有無伺服器 VPC 存取服務代理角色 (roles/vpcaccess.serviceAgent)。如果變更此帳戶的權限,無伺服器 VPC 存取作業可能會失敗。

網路效能不佳或偏高的閒置 CPU 使用率

如果數千個執行個體都使用單一連接器,可能會導致效能降低,並提高閒置 CPU 使用率。如要修正此問題,請將您的服務分散部署至多個連接器。

自訂 MTU 相關問題

如果自訂 MTU 發生問題,請確認您使用 Cloud Run 的預設 MTU 設定

錯誤

服務帳戶需要服務代理角色錯誤

如果您使用「限制資源服務使用情形組織政策限制封鎖 Cloud Deployment Manager (deploymentmanager.googleapis.com),可能會看到下列錯誤訊息:

Serverless VPC Access service account (service-<PROJECT_NUMBER>@gcp-sa-vpcaccess.iam.gserviceaccount.com) needs Serverless VPC Access Service Agent role in the project.

設定組織政策,從拒絕清單中移除 Deployment Manager,或將其新增至許可清單。

建立連接器時發生錯誤

如果您在建立連接器時發生錯誤,請嘗試下列方式:

  • 指定 RFC 1918 內部 IP 範圍時,請確保該範圍並未與虛擬私有雲端網路中已保留的 IP 位址重疊。
  • 授予專案權限,以從 ID 為 serverless-vpc-access-images 的專案中使用 Compute Engine VM 映像檔。如要進一步瞭解如何據此更新組織政策,請參閱「設定映像存取限制」一文。

無法存取資源

如果您已指定連接器,但仍無法存取虛擬私有雲網路中的資源,請確認虛擬私有雲網路中沒有優先順序低於 1000 的防火牆規則,拒絕從連接器的 IP 位址範圍輸入流量。

如果您在 Shared VPC 服務專案中設定連接器,請確保防火牆規則允許從無伺服器基礎架構輸入至連接器

連線遭拒錯誤

如果收到 connection refusedconnection timeout 錯誤,導致網路效能降低,可能是因為無伺服器應用程式的叫用次數不受限制,連線數也隨之增加。如要限制每個執行個體使用的連線數上限,請使用支援連線集區的用戶端程式庫。如需如何使用連線集區的詳細範例,請參閱「管理資料庫連線」。

找不到資源錯誤

刪除虛擬私有雲網路或防火牆規則時,您可能會看到類似下列訊息:The resource "aet-uscentral1-subnet--1-egrfw" was not found.

如要瞭解這項錯誤和解決方法,請參閱虛擬私有雲防火牆規則說明文件中的「找不到資源錯誤」。

後續步驟