設定網路級別

本頁面說明如何為工作負載指定網路層級。手動設定網路級別之前,請先查看網路服務級別總覽中的資訊。

規格

只有符合資格的 Google Cloud 資源才支援網路服務級別。 標準級和進階級是 可在所有 Google Cloud 地區使用。

外部 IP 位址集區

要確認從哪個集區中選擇外部 IP 位址,您需要瞭解外部 IP 位址為全域還是地區性,以及若為地區性,其網路級別為何。您無法將某一集區的 IP 位址移動到另一集區。

在標準級中,地區性外部 IP 位址的集區對其所在地區 (而非其合格資源類型) 而言是獨一無二的。舉例來說,使用標準級的虛擬機器 (VM) 執行個體和負載平衡器 (外部應用程式負載平衡器、外部 Proxy 網路負載平衡器和外部直通式網路負載平衡器) 都會使用所選地區標準級集區的 IP 位址。 Google Cloud

在進階級中,外部應用程式負載平衡器和外部 Proxy 網路負載平衡器使用全域外部 IP 位址,而外部直通式網路負載平衡器和 VM 執行個體則使用地區性外部 IP 位址。在各個地區,進階級地區性外部 IP 位址集區與全球外部 IP 位址集區是分開的。

未指派的 IP 位址

標準級中未使用的地區性外部 IP 位址,其行為和進階級中未使用的 IP 位址不同。

標準級 IP 位址若未指派給合格資源,就會自動寄存。當 IP 位址寄存時,負載平衡器會回應該 IP 位址的特定要求,例如傳送到寄存的標準級 IP 位址的 HTTP 要求會傳送至 Google 託管的 HTTP 404 (找不到) 網頁。也就是說,傳送到寄存的標準級 IP 位址的流量不會直接捨棄。此外,正在進行處理以指派給資源的標準級 IP 位址,也可能會表現出類似寄存的行為。

指派給 VM 執行個體的標準級外部 IP 位址,可能會在即時遷移期間,在遷移作業花費超過 20 分鐘的情況下,移至寄存狀態。

至於指派給 VM 的進階級外部 IP 位址,則會在長時間的即時遷移期間捨棄流量。

為專案設定預設網路級別

請按照下列指示,為您的專案定義預設網路級別。除非您為資源指定級別,否則專案中新建立的合格資源都會使用此級別。變更專案的預設網路層級不會變更任何現有資源的層級,但如果您在建立新資源時未指定網路層級,則會變更任何新資源的網路層級。

主控台

  1. 在 Google Cloud 控制台中,前往「Network Service Tiers」頁面。

    前往「Network Service Tiers」(網路服務級別) 頁面

  2. 按一下「變更級別」

  3. 選取「Premium」或「Standard」,然後按一下「變更」

gcloud

gcloud compute project-info update \
    --default-network-tier NETWORK_TIER

NETWORK_TIER 替換為 PREMIUMSTANDARD。預設值為 PREMIUM

API

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/setNetworkTier
{
  "networkTier": "STANDARD"
}

PROJECT_ID 替換為您的專案 ID。

Terraform

您可以使用 Terraform 資源設定專案的網路級別。這個範例會將層級設為 STANDARD

resource "google_compute_project_default_network_tier" "project-tier" {
  project      = var.project_id # Replace this with your project ID in quotes
  network_tier = "STANDARD"
}

您為資源指定的網路級別,一律優先於您為專案定義的預設網路級別。舉例來說,如果專案的預設網路級別為進階級,您還是可以在標準級建立執行個體或負載平衡器。

級別設定層級。
級別設定層級 (按一下可放大)。

建立靜態外部 IP 位址

在建立靜態的地區性外部 IP 位址時,您可指定 PREMIUMSTANDARD 網路級別。如果您未指定網路層級,系統會使用專案預設層級建立地址。

如要使用標準級預約靜態地區性外部 IP 位址,請執行下列步驟:

主控台

  1. 在 Google Cloud 控制台中,前往「External IP addresses」(外部 IP 位址) 頁面。

    前往「外部 IP 位址」頁面

  2. 按一下 [Reserve static address] (保留靜態位址)。

  3. 在「Type」下方,選取「Regional」,然後選取支援標準級的地區

  4. 在「Network Service Tier」(網路服務級別) 下方,選取「Standard」(標準)

  5. 視情況填入其他欄位

  6. 按一下「保留」

gcloud

gcloud compute addresses create my-standard-tier-ip-address \
     --region REGION \
     --network-tier STANDARD

REGION 替換為您要建立區域 IP 位址的地區。

如需其他指令列標記,請參閱 gcloud compute 位址

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses
{
  "name": "my-standard-tier-ip-address",
  "networkTier": "STANDARD"
}

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • REGION:建立轉送規則的地區

Terraform

您可以使用 Terraform 資源設定區域外部 IP 位址的網路級別。這個範例將層級設為 STANDARD

resource "google_compute_address" "ip-address" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "my-standard-tier-ip-address"
  region       = "us-central1"
  network_tier = "STANDARD"
}

建立轉送規則

建立新的轉送規則時,您可以指定網路層級;可能的值為 PREMIUM (預設) 和 STANDARD。如果您未指定網路層級,系統會使用專案預設層級建立轉送規則:

  • 如果您使用 --address 旗標指定外部 IP 位址,該 IP 位址必須位於您為轉送規則指定的層級。
  • 如果您建立轉送規則時未指定 --address 標記,Google Cloud 會分配適當層級的臨時 IP 位址。

標準級僅適用於區域轉送規則。全域轉送規則一律使用進階級。

負載平衡器可同時使用進階級和標準級,只要為每個級別設定兩個不同的轉送規則即可。在某些情況下,這項功能就很實用,例如當某個應用程式需要進階級才能提供的低延遲時間,而另一個應用程式 (可能提供靜態內容) 在較高的延遲時間下運作良好,因此可以使用標準級。

主控台

如要在 Google Cloud 控制台中建立標準級轉送規則,您必須建立或更新現有的負載平衡器。在多個區域中設有後端服務的負載平衡器無法使用標準級。如要瞭解如何選擇及建立負載平衡器,請參閱負載平衡說明文件。

  1. 前往 Google Cloud 控制台的「Load balancing」(負載平衡)頁面。

    前往「Load balancing」(負載平衡) 頁面

  2. 按一下現有負載平衡器的名稱,然後按一下「Edit」圖示

  3. 按一下「前端設定」

  4. 點選「新增前端 IP 和通訊埠」

  5. 在「Network Service Tier」(網路服務級別) 下方,按一下「Standard」(標準)。

  6. 視情況填入其他欄位。

  7. 依序點選「完成」和「更新」

gcloud

gcloud compute forwarding-rules create my-standard-tier-regional-rule \
     --load-balancing-scheme=SCHEME \
     --network-tier STANDARD \
     --address my-standard-tier-ip-address \
     --region REGION \
     --ports PORTS \
     [--target-http-proxy=TARGET_HTTP_PROXY \
     | --target-https-proxy=TARGET_HTTPS_PROXY \
     | --target-ssl-proxy=TARGET_SSL_PROXY \
     | --target-tcp-proxy=TARGET_TCP_PROXY \
     | --target-pool=TARGET_POOL \
     | --target-instance=TARGET_INSTANCE]

更改下列內容:

  • SCHEME:負載平衡器的負載平衡架構
  • REGION:建立轉送規則的地區
  • TARGET_HTTP_PROXYTARGET_HTTPS_PROXYTARGET_SSL_PROXYTARGET_TCP_PROXYTARGET_POOLTARGET_INSTANCE:規則的適當目標,取決於您指定的目標標記

如需其他指令列標記,請參閱 gcloud compute forwarding-rules

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules
{
  "name": "my-standard-tier-regional-rule",
  "networkTier": "STANDARD",
    "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses/my-standard-tier-ip-address",
  "IPProtocol": "tcp",
    "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetPools/TARGET_POOL"
}

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • REGION:建立轉送規則的地區
  • TARGET_HTTP_PROXYTARGET_HTTPS_PROXYTARGET_SSL_PROXYTARGET_TCP_PROXYTARGET_POOLTARGET_INSTANCE:規則的適當目標,取決於您指定的目標標記

Terraform

您可以使用 Terraform 資源設定轉寄規則的網路層級。此範例會將層級設為 STANDARD,以便轉送規則指向目標執行個體。

resource "google_compute_forwarding_rule" "target-fr" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "target-instance-forwarding-rule"
  region       = "us-east4"
  target       = google_compute_target_instance.target.id
  port_range   = "80"
  network_tier = "STANDARD"
}

VM 執行個體

請按照下列各節的程序,在特定網路服務層級建立 VM 執行個體、為執行個體新增存取設定,或更新執行個體的網路層級。

建立 VM 執行個體

建立直接連線至網際網路的執行個體時,您可以指定網路層級。可能的值為 PREMIUM (預設) 和 STANDARD。如果未指定網路層級,系統會使用專案預設層級建立地址。只有在執行個體直接透過區域 IPv4 位址與網際網路通訊時,網路層級才會有所影響。對於負載平衡器傳送的回應流量,會套用轉送規則的網路層級。

如果您要使用預留 IP 位址指派靜態外部 IP 位址,IP 位址的網路層級必須與執行個體的網路層級相符。如果指派了臨時外部 IP 位址,則會使用執行個體的網路級別來從對應集區指派 IP 位址。

主控台

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體頁面

  2. 點選「建立執行個體」

  3. 按一下 [Management, security, disks, networking, sole tenancy] (管理、安全性、磁碟、網路、單獨租用)。

  4. 按一下 [網路] 分頁標籤。

  5. 在「Network interfaces」下方,按一下預設網路介面的「Edit」圖示

  6. 在「Network Service Tier」(網路服務級別) 下方,選取「Standard」(標準)

  7. 視情況填入其他欄位

  8. 按一下 [建立]。

gcloud

gcloud compute instances create my-standard-tier-instance \
    --network-tier STANDARD

如需其他指令列標記,請參閱 gcloud compute 執行個體

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
  "name": "my-standard-tier-instance",
  "networkInterfaces":[
   {
    "network": "global/networks/default",
    "name": "nic0",
    "accessConfigs": [
     {
     "name": "External NAT",
     "type":"ONE_TO_ONE_NAT",
     "networkTier":"STANDARD"
     }
    ]
   }
  ],
    "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/addresses/my-standard-tier-ip-address",
  ... other parameters
}

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • ZONE:建立執行個體的區域
  • REGION:資源的區域

    如需其他必要和選用參數的清單,請參閱 REST 資源:執行個體

Terraform

您可以使用 Terraform 資源設定 Compute Engine VM 的網路層級。這個範例將層級設為 STANDARD

resource "google_compute_address" "ip-address" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "my-standard-tier-ip-address"
  region       = "us-central1"
  network_tier = "STANDARD"
}

新增存取權設定至執行個體

為執行個體建立存取權設定時 (也就是將臨時或靜態的地區性外部 IPv4 位址指派給執行個體的網路介面),您可以為執行個體的網路介面指定網路級別。無論您指定現有的區域性外部 IPv4 位址,還是建立新位址,位址和執行個體的網路介面都必須使用相符的網路服務級別。可能的值為 PREMIUMSTANDARD。如果您未指定網路層級,也未指定 IP 位址,執行個體的網路介面和新的臨時地區性外部 IPv4 位址都會使用專案預設層級。如果您未指定網路層級,但指定了 IP 位址, Google Cloud 會在 IP 位址的網路層級不符合專案預設層級時傳回錯誤。

gcloud

gcloud compute instances add-access-config INSTANCE_NAME \
    --network-interface INTERFACE_NAME; default="nic0" \
    --access-config-name=ACCESS_CONFIG_NAME; default="external-nat" \
    --address=IP_ADDRESS \
    --network-tier PREMIUM | STANDARD

更改下列內容:

  • INSTANCE_NAME:執行個體名稱
  • INTERFACE_NAME:介面名稱;預設值為 nic0 (執行個體上的預設介面名稱)
  • ACCESS_CONFIG_NAME:介面存取設定的名稱
  • IP_ADDRESS:如果您要指定 IP 位址,則為 IP 位址資源的網址

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addAccessConfig?networkInterface=nic0
{
  "name": INSTANCE_NAME,
  "networkTier": "STANDARD",
  ... other parameters
}

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • ZONE:執行個體的區域
  • INSTANCE_NAME:執行個體名稱

如需其他必要和選用參數的清單,請參閱 REST 資源:執行個體

更新執行個體的網路層級

您可以使用 update-access-config 指令變更執行個體網路介面的網路層級。聯播網層級的可能值為 PREMIUMSTANDARD。如果執行個體在現有存取設定中已指派區域外部 IPv4 位址,您必須先移除該外部 IP 位址,再變更介面的網路層級。如要進一步瞭解區域性外部 IPv4 位址的網路層級必須與執行個體網路介面的網路層級相符,請參閱「在執行個體中新增存取權設定」。

主控台

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體頁面

  2. 按一下執行個體的名稱。

  3. 按一下「編輯」圖示

  4. 在「Network interfaces」下方,按一下預設網路介面的「Edit」圖示

  5. 在「Network Service Tier」(網路服務級別) 下方,選取「Standard」(標準)

  6. 按一下 [儲存]

gcloud

gcloud compute instances update-access-config INSTANCE_NAME \
    --network-interface nic0 \
    --network-tier STANDARD

INSTANCE_NAME 替換為執行個體名稱。

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
{
  "networkTier": "STANDARD",
  ... other parameters
}

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • ZONE:執行個體的區域
  • INSTANCE_NAME:執行個體名稱

建立使用標準級的執行個體範本

在建立執行個體範本時設定網路層級時,請執行下列操作。

主控台

  1. 前往 Google Cloud 控制台的「Instance Templates」(執行個體範本) 頁面。

    前往「Instance Templates」(執行個體範本) 頁面

  2. 點選「建立執行個體範本」

  3. 按一下 [Management, security, disks, networking, sole tenancy] (管理、安全性、磁碟、網路、單獨租用)。

  4. 按一下 [網路] 分頁標籤。

  5. 在「Network Service Tier」(網路服務級別) 下方,選取「Standard」(標準)

  6. 視情況填入其他欄位

  7. 按一下 [建立]。

gcloud

gcloud compute instance-templates create my-standard-tier-instance-template \
    --network-tier STANDARD

如需其他指令列標記,請參閱 gcloud compute instance-templates

API

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceTemplates
{
  "name": "my-standard-tier-instance-template",
  "networkInterfaces[].accessConfigs[].networkTier": "STANDARD",
  ... other parameters
}

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • ZONE:執行個體範本的可用區

如需其他必要和選用參數的清單,請參閱 REST 資源:instanceTemplates

Terraform

您可以使用 Terraform 資源設定 Compute Engine 執行個體範本的網路層級。這個範例將層級設為 STANDARD

resource "google_compute_instance_template" "template" {
  project      = var.project_id # Replace this with your project ID in quotes
  name         = "template"
  machine_type = "e2-medium"
  disk {
    source_image = "debian-cloud/debian-10"
    boot         = true
  }
  network_interface {
    network = "default"
    access_config {
      network_tier = "STANDARD"
    }
  }
}

使用特定網路層級的 IP 位址設定 NAT

建立 Cloud NAT 閘道時, Google Cloud 可讓您指派標準級和進階級的 IP 位址。

詳情請參閱「建立 Cloud NAT 閘道」。