在目標執行個體和後端服務之間切換

本頁說明如何在目標執行個體和後端服務之間切換轉送規則的目標。

外部通訊協定轉送

如要將外部轉送規則的目標從目標執行個體切換為後端服務 (或反之),您必須刪除轉送規則,然後使用新目標重新建立。這個方法需要靜態 IP 位址,才能在新的轉送規則中使用相同的位址。

刪除並重新建立轉送規則,是切換外部通訊協定轉送和後端服務型外部直通式網路負載平衡器的唯一方法。

內部通訊協定轉送

您可以透過兩種方式切換內部通訊協定轉送和內部直通式網路負載平衡器:

  • 您可以使用 gcloud compute forwarding-rules set-target 指令更新轉送規則,如「變更內部轉送規則的目標」一文所述,藉此在目標執行個體和後端服務之間切換。在內部通訊協定轉送和內部直通式網路負載平衡器之間切換時,您不必刪除並重新建立轉送規則。轉送規則會繼續使用相同的內部 IP 位址 (無論是靜態或臨時)。

  • 您也可以刪除並重新建立轉送規則,在目標執行個體和後端服務之間切換。不過,這個方法需要使用靜態 IPv4 位址,才能與新的轉送規則使用相同的位址。系統不支援保留 IPv6 位址,因此無法使用這個方法。

目標執行個體不會指定任何通訊協定,而是繼承轉送規則的通訊協定和通訊埠。因此,當您切換轉送規則以參照後端服務時,請務必確認轉送規則的 IP 通訊協定 (TCP 或 UDP) 與後端服務的通訊協定 (TCP 或 UDP) 相符。

下圖為使用內部通訊協定轉送的範例。

在目標執行個體和後端服務之間切換。
切換目標執行個體和後端服務。

變更內部轉送規則的目標

如要將轉送規則從指向目標執行個體變更為指向區域後端服務,請使用下列指令:

gcloud compute forwarding-rules set-target FORWARDING_RULE \
    --backend-service=BACKEND_SERVICE \
    --region=REGION

如要切換回目標執行個體,請使用下列指令:

gcloud compute forwarding-rules set-target FORWARDING_RULE \
    --target-instance=TARGET_INSTANCE \
    --target-instance-zone=ZONE