本頁面提供 Memorystore for Redis 網路總覽。
Memorystore 會使用虛擬私有雲對等互連,將您的虛擬私有雲網路連線至 Google 內部服務網路。Memorystore for Redis 會根據您在建立執行個體時選擇的連線模式,提供不同的對等互連架構和網路功能。
我們新增了選取連線模式的選項,以便在 Google Cloud 中支援進階網路選項,例如共用虛擬私有雲架構和更完善的 IP 管理,同時確保支援 Memorystore 現有的對等互連架構。
Memorystore for Redis 支援兩種連線模式:DIRECT_PEERING 和 PRIVATE_SERVICE_ACCESS。
無論連線模式為何,Memorystore for Redis 一律會使用內部 IP 位址佈建 Redis 執行個體。
連線模式
Memorystore for Redis 提供兩種連線模式,支援不同的功能:
- 直接對等互連
- 私人服務存取權
如要查看現有執行個體的網路連線模式,請執行下列指令,並將 variables 改成適當的值:
gcloud redis instances describe instance-id --region=region
connectMode值會顯示DIRECT_PEERING或PRIVATE_SERVICE_ACCESS。
如需在建立執行個體時選擇連線模式的操作說明,請參閱「在服務專案中建立使用共用 VPC 網路的 Redis 執行個體」或「建立使用集中式 IP 位址範圍的 Redis 執行個體」。
直接對等互連
使用直接對等互連模式時,Memorystore 會在客戶虛擬私有雲網路和 Google 代管專案中的虛擬私有雲網路之間建立虛擬私有雲對等互連。建立執行個體時,系統會自動建立對等互連,使用者不需採取其他步驟。其他 Google Cloud 服務不會共用對等互連。在私人服務存取連線模式推出前,Memorystore for Redis 使用的是直接對等互連連線模式。
根據預設,新執行個體會使用直接對等互連連線模式建立。如果現有指令碼未指定連線模式,系統會預設使用直接對等互連模式。
如果您要以直接對等互連連線模式建立執行個體,並想使用 --reserved-ip-range gcloud 標記指定 IP 位址範圍,請參閱「建立具有特定 IP 位址範圍的 Redis 執行個體」,瞭解如何指定範圍。如果執行個體沒有唯讀備用資源,所需的區塊大小下限為 /29。如果執行個體有唯讀備用資源,區塊大小下限為 /28。
私人服務存取權
私人服務存取權是另一種在虛擬私有雲網路與 Google 服務網路之間建立對等互連的方式。
為虛擬私有雲網路建立私人服務存取連線時,系統會在該虛擬私有雲網路與 Google 服務網路之間建立對等互連。建立連線後,您就可以使用私人服務存取連線模式建立執行個體。
使用私人服務存取權,即可為 Redis 執行個體啟用下列功能:
- 使用共用 VPC 在服務專案中佈建 Memorystore for Redis 執行個體。
- 集中管理多項 Google 服務的 IP 位址範圍。
- 透過 VPN 通道或 Cloud Interconnect,從外部來源連線至虛擬私有雲網路。
私人服務存取權的優點之一,是多項 Google 服務可共用相同的網路對等互連,因此 Google 服務建立的對等互連數量會受到限制。
使用私人服務存取連線模式建立執行個體時,--reserved-ip-range gcloud 旗標的用途與使用直接對等互連連線模式建立執行個體時不同。以私人服務存取模式建立執行個體時,如果已為私人服務存取分配多個 IP 位址範圍,您可以使用 --reserved-ip-range gcloud 旗標,選擇在建立 Redis 執行個體時要使用哪個分配範圍。如需操作說明,請參閱「使用特定 IP 位址範圍建立 Redis 執行個體」。
選擇連線模式
下表列出各種使用案例和應採用的連線模式。
| 情境 | 支援的連線模式 | |
|---|---|---|
| 使用共用虛擬私有雲網路佈建 Redis 執行個體 | 僅限私人服務連線 | |
| 使用 VPN 從地端部署網路存取 Redis 執行個體 | 僅限私人服務存取權 | |
| 集中管理多項 Google 服務的 IP 範圍 | 僅限私人服務存取權 | |
| 使用專屬虛擬私有雲網路佈建 Redis 執行個體 | 私人服務存取權 (建議) 或直接對等互連 |
切換現有執行個體的連線模式
您無法切換現有執行個體的連線模式。如要切換連線模式,請使用新的連線模式重新建立執行個體。這會導致執行個體的 IP 位址變更。
舉例來說,如果您在私人服務存取連線模式推出前建立執行個體,該執行個體的連線模式屬性會設為直接對等互連。如果使用私人服務存取連線模式重新建立執行個體,執行個體的 IP 位址會變更。
此外,Memorystore for Redis 支援在同一個專案和同一個網路中,讓 Redis 執行個體使用私人服務存取權,以及讓執行個體使用直接對等互連。
透過私人服務存取權進行地端存取
如果地端部署網路已連線至 Memorystore for Redis 執行個體所連線的 VPC 網路,您就能從地端部署網路中的用戶端連線。如要允許來自內部部署網路的連線,請按照下列步驟操作:
- 請使用下列其中一個選項,確保 Shared VPC 網路已連線至內部部署網路:
- Cloud VPN 通道
- 專屬互連網路或 合作夥伴互連網路的 VLAN 連結。
- 請確認管理 Cloud VPN 通道和 Cloud Interconnect 連結 (VLAN) 的 Cloud Router 上的 BGP 工作階段,已從地端部署網路收到特定前置字元 (目的地)。預設路徑 (目的地
0.0.0.0/0) 無法匯入 Memorystore for Redis 虛擬私有雲網路,因為該網路有自己的本機預設路徑。系統一律會使用目的地的本機路徑,即使 Memorystore for Redis 對等互連已設定為從虛擬私有雲網路匯入自訂路徑,也不例外。 -
找出私人服務連線產生的對等互連。Memorystore for Redis 使用的對等互連名稱為
servicenetworking-googleapis-com。 -
更新對等互連連線,方法是同時設定
--import-custom-routes和--export-custom-routes標記,以交換自訂路徑。 - 找出私人服務連線使用的分配範圍。
- 為管理 Cloud VPN 通道或 Cloud Interconnect 連結 (VLAN) BGP 工作階段的 Cloud Router,建立 Cloud Router 自訂通告路由。
傳達網路需求
通常,貴機構的網路團隊和/或網路管理員會負責設定私人服務存取連線。這可讓網路團隊確保用於其他Google Cloud 資源的 IP 位址或範圍不會重疊,以免造成連線問題。
建議您與貴機構的網路/安全團隊聯絡,請他們為您設定私人服務連線,尤其是在設定過程中發生錯誤時。與網路團隊聯絡時,請提供下列資訊:
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 角色。如果沒有必要權限,您可能會收到權限不足的錯誤訊息。如需常見網路錯誤清單,請參閱「網路錯誤情境」。
使用者介面權限
如要在使用者介面中列出本機和主專案網路,您需要下列權限:
compute.networks.list- 本機和主機專案都需要。
如要在使用者介面中檢查私人服務連線,必須具備下列權限:
compute.networks.list- 本機和主機專案都需要。
如要在使用者介面中建立私人服務存取連線,必須具備下列權限:
serviceusage.services.enable- 需要啟用 Service Networking API。
compute.addresses.createcompute.addresses.listservicenetworking.services.addPeering
gcloud 權限
檢查私人服務存取連線時所需的 gcloud 權限
compute.networks.list- 本機和主機專案都需要。
建立私人服務存取連線所需的 gcloud 權限
serviceusage.services.enable- 需要啟用 Service Networking API。
compute.addresses.createcompute.addresses.listservicenetworking.services.addPeering
支援的網路和用戶端 IP 範圍
Memorystore for Redis 支援 RFC 1918 私人 IP 位址和部分非 RFC 1918 私人 IP 位址。
- 「有效範圍」提供 Memorystore for Redis 可接受的範圍清單。不過,Memorystore for Redis 不支援這裡連結的有效範圍表格中列出的私用公開 IP (PUPI) 位址。
- 「受限範圍」會列出無法用於建立 Memorystore for Redis 執行個體的 IP 位址範圍。
- 如果 Memorystore 執行個體使用私人服務存取連線模式,PUPI 範圍內的用戶端就無法連線至 Memorystore 執行個體。
Memorystore 也支援虛擬私有雲網路,但舊版網路、地端存取和共用虛擬私有雲網路除外。