網路

本頁面提供 Memorystore for Redis 網路的總覽。

Memorystore 會使用虛擬私有雲對等互連功能,將您的虛擬私有雲網路連線至 Google 內部服務網路。根據您在建立執行個體時選擇的連線模式,Cloud Memorystore for Redis 會提供不同的對等架構和網路功能。

我們已推出選項,讓您選取連線模式,以便支援 Google Cloud 中的進階網路選項,例如共用虛擬私有雲架構和更完善的 IP 管理,同時確保支援 Memorystore 現有的對等互連架構。

Cloud Memorystore for Redis 支援兩種連線模式:DIRECT_PEERINGPRIVATE_SERVICE_ACCESS

無論連線模式為何,Memorystore for Redis 一律會使用內部 IP 位址來佈建 Redis 執行個體。

連線模式

Memorystore for Redis 提供兩種連線模式,支援不同的功能:

  • 直接對等互連
  • 私人服務存取權

如要查看現有執行個體的網路連線模式,請執行下列指令,並將 variables 改為適當的值:

gcloud redis instances describe instance-id --region=region
  • connectMode 值會顯示 DIRECT_PEERINGPRIVATE_SERVICE_ACCESS

如要瞭解如何在建立執行個體時選擇連線模式,請參閱「在服務專案中使用共用虛擬私有雲網路建立 Redis 執行個體」或「使用集中式 IP 位址範圍建立 Redis 執行個體」。

直接對等互連

使用直接對等互連模式時,Memorystore 會在客戶虛擬私有雲端網路與 Google 代管專案中的虛擬私有雲端網路之間建立 VPC 對等互連。系統會在建立執行個體時自動建立連線,使用者不必採取其他步驟。其他 Google Cloud服務不會共用對等連線。在私人服務存取連線模式推出前,Memorystore for Redis 使用的是直接對等互連連線模式。

根據預設,新執行個體會使用直接對等連線模式建立。任何未指定連線模式的現有指令碼,預設會使用直接對等模式。

如果您要使用直接對等連線模式建立執行個體,並且想使用 --reserved-ip-range gcloud 標記指定 IP 位址範圍,請參閱「建立具有特定 IP 位址範圍的 Redis 執行個體」,瞭解如何指定範圍。對於沒有唯讀備用資源的執行個體,所需的區塊大小下限為 /29。如果是含有唯讀備用資源的執行個體,則所需的區塊大小下限為 /28

私人服務存取權

私人服務存取權是另一種在 VPC 網路與 Google 服務網路之間建立對等互連的方式。

為虛擬私有雲網路建立私人服務存取連線,即可在該虛擬私有雲網路與 Google 服務網路之間建立對等互連。連線建立完成後,您可以使用私人服務存取連線模式建立執行個體

使用私人服務存取權,您就能在 Redis 執行個體中使用下列功能:

  • 使用共用虛擬私有雲,在服務專案中佈建 Memorystore for Redis 執行個體。
  • 集中管理多個 Google 服務的 IP 位址範圍。
  • 透過 VPN 通道Cloud Interconnect,從外部來源連線至 VPC 網路。

私人服務存取權的額外好處之一,是可在多個 Google 服務之間共用相同的網路對等互連,藉此限制 Google 服務建立的對等互連數量。

使用私人服務存取連線模式建立執行個體時,--reserved-ip-range gcloud 旗標的用途與使用直接對接連線模式建立執行個體時不同。使用私人服務存取模式建立執行個體時,如果有為私人服務存取權分配的多個 IP 位址範圍,您可以使用 --reserved-ip-range gcloud 標記,在建立 Redis 執行個體時選擇要使用的分配範圍。如需操作說明,請參閱「建立特定 IP 位址範圍的 Redis 執行個體」。

選擇連線模式

下表列出您應使用的不同用途和連線模式。

情境 支援的連線模式
使用共用 VPC 網路佈建 Redis 執行個體 僅限私人服務存取
透過 VPN 從內部網路存取 Redis 執行個體 僅限私人服務存取
為多項 Google 服務使用集中式 IP 範圍管理 僅限私人服務存取
使用專屬 VPC 網路佈建 Redis 執行個體 私人服務存取權 (建議) 或直接對等互連

切換現有執行個體的連線模式

您無法切換現有執行個體的連線模式。如要切換連線模式,您必須使用新的連線模式重新建立執行個體。這會導致執行個體的 IP 位址異動。

舉例來說,如果您在私人服務存取連線模式推出前建立了現有的執行個體,該執行個體的連線模式屬性就會設為直接對等連線。如果您使用私人服務存取連線模式重新建立執行個體,執行個體的 IP 位址就會變更。

此外,Memorystore for Redis 也支援在同一個專案和網路中,使用私人服務存取權的 Redis 執行個體,以及使用直接對等互連的執行個體。

透過私人服務存取權存取地端

如果內部部署網路已連線至 Memorystore for Redis 執行個體所連結的 VPC 網路,您就可以從內部部署網路中的用戶端連線。如要允許內部網路的連線,請按照下列步驟操作:

  1. 請確認共用虛擬私有雲網路已透過下列任一選項連線至內部部署網路
  2. 請確認管理 Cloud VPN 通道和 Cloud Interconnect 連結 (VLAN) 的 Cloud Router 上的 BGP 工作階段,已從內部部署網路收到特定前置字串 (目的地)。預設路徑 (目的地 0.0.0.0/0) 無法匯入 Memorystore for Redis VPC 網路,因為該網路有自己的本機預設路徑。系統一律會使用目的地的本機路徑,即使 Memorystore for Redis 對等互連已設定為從 VPC 網路匯入自訂路徑,也是如此。
  3. 識別私人服務連線產生的對接。Memorystore for Redis 使用的對等連線名稱為 servicenetworking-googleapis-com
  4. 更新對等互連連線,藉由設定 --import-custom-routes--export-custom-routes 標記來交換自訂路徑
  5. 找出私人服務連線使用的分配範圍
  6. 為 Cloud Router 管理 Cloud VPN 通道或 Cloud Interconnect 連結 (VLAN) 的 BGP 工作階段,建立 Cloud Router 自訂通告路徑,範圍為 Cloud Router 的已分配範圍。

說明網路需求

通常,貴機構的網路團隊和/或網路管理員負責設定私人服務存取連線。這樣一來,網路團隊就能確保沒有 IP 位址或範圍用於其他Google Cloud 資源重疊,這可能會導致連線問題。

建議您與貴機構的網路/安全性團隊聯絡,請他們為您設定私人服務連線,尤其是在設定程序中遇到錯誤時。與網路團隊聯絡時,請傳送下列資訊:

The Memorystore for Redis instance cannot be created due to the following
error:

"Google private services access is not enabled. Enable privates service access
and try again."

Before an instance can be created, a private service access connection needs to
be established for network <project name: network>. Please refer to the
following Memorystore documentation links for more information on how to create
this connection:

* Networking.
* Establishing a private services access connection.
* Verifying a private services access connection.

已啟用唯讀備用資源的執行個體網路需求

如要使用 Memorystore for Redis 的唯讀備用資源功能,執行個體的 CIDR IP 位址範圍必須為 /28 以上。較大的範圍大小 (例如 /27/26) 是有效的。這項功能不支援 /29 等較小的範圍。

建立私人服務存取連線所需的權限

如要管理私人服務存取連線,使用者必須具備下列 IAM 角色。如果您沒有必要權限,可能會收到權限不足的錯誤訊息。如需常見網路錯誤清單,請參閱「網路錯誤情境」。

UI 權限

在使用者介面中列出本機和主機專案網路時,需要下列權限:
  • compute.networks.list
    • 本機和主機專案都需要這個值。
在使用者介面中檢查私人服務存取權連線時,需要下列權限:
  • compute.networks.list
    • 必須在本機和主機專案中使用。
在使用者介面中建立私人服務存取權連線時,必須具備下列權限:
  • serviceusage.services.enable
    • 必須啟用 Service Networking API。
  • compute.addresses.create
  • compute.addresses.list
  • servicenetworking.services.addPeering

gcloud 權限

檢查私人服務存取權連線時所需的 gcloud 權限
  • compute.networks.list
    • 本機和主機專案都需要這個值。
建立私人服務存取連線所需的 gcloud 權限
  • serviceusage.services.enable
    • 必須啟用 Service Networking API。
  • compute.addresses.create
  • compute.addresses.list
  • servicenetworking.services.addPeering

支援的網路和用戶端 IP 範圍

Memorystore for Redis 支援 RFC 1918 私人 IP 位址和部分非 RFC 1918 私人 IP 位址。

  • 有效範圍:提供 Memorystore for Redis 可接受的範圍清單。不過,Memorystore for Redis 不支援這裡連結的有效範圍表格中列出的私人使用的公開 IP (PUPI) 位址。
  • 「Restricted ranges」會列出無法用於建立 Memorystore for Redis 執行個體的 IP 位址範圍。
  • 如果 Memorystore 執行個體使用私人服務存取連線模式,來自 PUPI 範圍的用戶端就無法連線至 Memorystore 執行個體。

除了舊版網路、內部網路存取和共用虛擬私人雲端網路,Memorystore 也支援虛擬私人雲端網路