l'impostazione di una connessione di accesso ai servizi privati
è un prerequisito da completare prima di creare un'istanza Redis con una
rete VPC condiviso
Questa pagina fornisce una panoramica della rete per Memorystore for Redis.
Memorystore utilizza il peering VPC per connettere la tua rete VPC alla rete interna dei servizi Google. Memorystore for Redis fornisce diverse architetture di peering e funzionalità di rete a seconda della modalità di connessione scelta durante la creazione di un'istanza.
L'opzione per selezionare una modalità di connessione è stata introdotta per supportare opzioni di networking avanzate in Google Cloud, come le architetture VPC condiviso e una migliore gestione degli IP, garantendo al contempo il supporto dell'architettura di peering esistente di Memorystore.
Memorystore for Redis supporta due modalità di connessione, DIRECT_PEERING
e
PRIVATE_SERVICE_ACCESS
.
Indipendentemente dalla modalità di connessione, Memorystore for Redis utilizza sempre gli indirizzi IP interni per il provisioning delle istanze Redis.
Modalità di connessione
Memorystore for Redis offre due modalità di connessione che supportano funzionalità diverse:
Peering diretto
Accesso privato ai servizi
Per visualizzare la modalità di connessione di rete per un'istanza esistente, esegui il seguente comando sostituendo variables con i valori appropriati:
gcloud redis instances describe instance-id --region=region
Il valore connectMode
mostra DIRECT_PEERING
o
PRIVATE_SERVICE_ACCESS
.
Per istruzioni su come scegliere la modalità di connessione durante la creazione dell'istanza, consulta Creare un'istanza Redis con una rete VPC condiviso in un progetto di servizio o Creare un'istanza Redis con un intervallo di indirizzi IP centralizzato .
Peering diretto
Quando utilizzi la modalità di peering diretto, Memorystore crea un peering VPC tra la rete VPC del cliente e la rete VPC nel progetto gestito da Google. Il peering viene creato automaticamente durante la creazione dell'istanza
e non richiede ulteriori passaggi da parte dell'utente. Gli altri servizi Google Cloud non condividono il peering. Memorystore for Redis utilizzava la modalità di connessione con peering diretto prima della disponibilità della modalità di connessione con accesso ai servizi privati.
Per impostazione predefinita, le nuove istanze vengono create utilizzando la modalità di connessione in peering diretto.
Gli script esistenti senza la modalità di connessione specificata utilizzano per impostazione predefinita la modalità di peering diretto.
Se stai creando un'istanza con la modalità di connessione di peering diretto e vuoi utilizzare il flag --reserved-ip-range
gcloud per specificare un intervallo di indirizzi IP, consulta Creare un'istanza Redis con un intervallo di indirizzi IP specifico per istruzioni su come specificare un intervallo. La dimensione del blocco minima richiesta è /29
per le istanze senza repliche di lettura. La dimensione del blocco minima richiesta è /28
per le istanze con repliche di lettura.
Accesso privato ai servizi
L'accesso privato ai servizi è un altro modo per creare un peering tra la tua rete VPC e la rete dei servizi Google.
Importante: se vuoi creare un'istanza Redis utilizzando la modalità di connessione di accesso privato ai servizi, devi prima stabilire una connessione di accesso privato ai servizi per la tua rete VPC. In caso contrario, non puoi creare un'istanza Redis utilizzando la modalità di connessione di accesso privato ai servizi per quella rete.
L'impostazione di una connessione di accesso privato ai servizi per una rete VPC crea un peering tra la rete VPC e la rete dei servizi Google. Una volta stabilita la connessione, puoi creare l'istanza utilizzando la modalità di connessione di accesso privato ai servizi .
L'utilizzo dell'accesso ai servizi privati ti consente di utilizzare le seguenti funzionalità per la tua istanza Redis:
Esegui il provisioning di un'istanza Memorystore for Redis in un progetto di servizio utilizzando VPC condiviso.
Gestisci a livello centrale gli intervalli di indirizzi IP su più servizi Google.
Esegui la connessione da origini esterne alla rete VPC tramite un tunnel VPN o Cloud Interconnect .
Uno dei vantaggi aggiuntivi dell'accesso privato ai servizi è che lo stesso peering di rete viene condiviso tra più servizi Google, limitando così il numero di peering creati dai servizi Google.
Il flag gcloud --reserved-ip-range
ha uno scopo diverso quando crei istanze con la modalità di connessione di accesso privato ai servizi rispetto a quando crei istanze con la modalità di connessione in peering diretto. Quando crei istanze con la modalità di accesso ai servizi privati, se sono presenti più intervalli di indirizzi IP allocati per l'accesso ai servizi privati, puoi utilizzare il flag gcloud --reserved-ip-range
per scegliere quali intervalli allocati utilizzare durante la creazione dell'istanza Redis. Per le istruzioni su come eseguire questa operazione, consulta Creare un'istanza Redis con un intervallo di indirizzi IP specifico .
Scegliere una modalità di connessione
La tabella seguente illustra i diversi casi d'uso e le modalità di connessione da utilizzare.
Scenario
Modalità di connessione supportata
Esegui il provisioning di un'istanza Redis con una rete VPC condiviso
Solo accesso privato ai servizi
Accedere a un'istanza Redis dalle reti on-premise utilizzando una VPN
Solo accesso privato ai servizi
Utilizzare la gestione centralizzata degli intervalli IP per più servizi Google
Solo accesso privato ai servizi
Esegui il provisioning di un'istanza Redis utilizzando una rete VPC dedicata
Accesso privato ai servizi (consigliato) o peering diretto
Cambiare le modalità di connessione delle istanze esistenti
Non puoi cambiare la modalità di connessione di un'istanza esistente. Per cambiare la modalità di connessione, devi ricreare l'istanza utilizzando la nuova modalità di connessione.
Ciò comporta una modifica dell'indirizzo IP dell'istanza.
Ad esempio, se hai un'istanza esistente creata prima della disponibilità della modalità di connessione di accesso privato ai servizi, la proprietà della modalità di connessione per l'istanza è impostata su peering diretto. Se ricrei l'istanza utilizzando la modalità di connessione di accesso privato ai servizi, l'indirizzo IP dell'istanza cambia.
Inoltre, Memorystore for Redis supporta l'utilizzo di istanze Redis che utilizzano l'accesso privato ai servizi e istanze che utilizzano il peering diretto nello stesso progetto e nella stessa rete.
Accesso on-premise con accesso privato ai servizi
Puoi connetterti da un client in una rete on-premise se la rete on-premise è connessa alla rete VPC a cui è connessa la tua istanza Memorystore for Redis. Per consentire le connessioni da una rete on-premise:
Assicurati che la rete VPC condiviso condivisa sia connessa alla rete on-premise utilizzando una delle seguenti opzioni
Assicurati che le sessioni BGP sui router Cloud che gestiscono i tunnel Cloud VPN e i collegamenti VLAN di Cloud Interconnect abbiano ricevuto prefissi (destinazioni) specifici dalla tua rete on-premise. Le route predefinite (destinazione 0.0.0.0/0
) non possono essere
importate nella rete VPC di Memorystore per Redis perché
questa rete ha la propria route predefinita locale.
Le route locali per una destinazione vengono sempre utilizzate , anche quando il peering Memorystore for Redis è configurato per importare route personalizzate dalla rete VPC.
Identifica il peering prodotto dalla connessione privata ai servizi.
Il peering utilizzato da Memorystore for Redis è denominato
servicenetworking-googleapis-com
.
Aggiorna la connessione in peering per scambiare route personalizzate impostando entrambi i flag --import-custom-routes
e --export-custom-routes
.
Identifica l'intervallo allocato utilizzato dalla connessione ai servizi privati.
Crea una route annunciata personalizzata del router Cloud per l'intervallo allocato sui router Cloud che gestiscono le sessioni BGP per i tuoi tunnel Cloud VPN o i collegamenti Cloud Interconnect (VLAN).
Nota: il peering utilizzato per le installazioni precedenti di Memorystore for Redis utilizza il nome del peering del formato redis-peer-[peer project number]
.
Per le installazioni precedenti, utilizza questo peering per scambiare route personalizzate impostando entrambi i flag --import-custom-routes
e --export-custom-routes
. Nota: una volta attivato il peering redis-peer-[peer project number]
per lo scambio di route personalizzate, queste ultime non verranno accettate dal progetto Google gestito peer. Contatta l'assistenza Google Cloud per farti aiutare a attivare lo scambio di route personalizzati per il progetto gestito da Google.
Comunicazione dei requisiti di networking
In genere, il team di networking e/o l'amministratore di rete della tua organizzazione è responsabile della configurazione di una connessione di accesso privato ai servizi. In questo modo, il team di rete può assicurarsi che nessun indirizzo o intervallo IP utilizzato per altre risorse Google Cloud si sovrapponga, il che può causare problemi di connettività.
Ti consigliamo di contattare il team di rete/sicurezza della tua organizzazione per farti configurare la connessione privata ai servizi, in particolare se riscontri un errore durante la procedura di configurazione. Quando contatti il team di networking, inviagli le seguenti informazioni:
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 .
Requisiti di networking per le istanze con repliche di lettura abilitate
Per utilizzare la funzionalità di replica di lettura per Memorystore for Redis, l'istanza deve avere un intervallo di indirizzi IP CIDR di /28
o superiore. Sono validi intervalli di dimensioni maggiori, come /27
e /26
. Gli intervalli più piccoli come /29
non sono supportati per questa funzionalità.
Autorizzazioni richieste per stabilire una connessione di accesso privato ai servizi
Per gestire una connessione di accesso privato ai servizi, l'utente deve disporre dei seguenti ruoli IAM. Se non disponi delle autorizzazioni richieste, potresti ricevere errori relativi a autorizzazioni insufficienti. Per un elenco degli errori di rete più comuni, consulta Scenari di errori di rete .
Autorizzazioni UI
Autorizzazioni necessarie per elencare le reti dei progetti locali e host nell'interfaccia utente:
compute.networks.list
Obbligatorio sia nei progetti locali che in quelli host.
Autorizzazione richiesta per controllare la connessione di accesso privato ai servizi nell'interfaccia utente:
compute.networks.list
Obbligatorio sia nei progetti locali che in quelli host.
Autorizzazione richiesta per creare una connessione di accesso privato ai servizi nell'interfaccia utente:
serviceusage.services.enable
Obbligatorio per abilitare l'API Service Networking.
compute.addresses.create
compute.addresses.list
servicenetworking.services.addPeering
Autorizzazioni gcloud
Autorizzazioni gcloud necessarie per controllare la connessione di accesso privato ai servizi
compute.networks.list
Obbligatorio sia nei progetti locali che in quelli host.
Autorizzazioni gcloud necessarie per creare una connessione di accesso privato ai servizi
serviceusage.services.enable
Obbligatorio per abilitare l'API Service Networking.
compute.addresses.create
compute.addresses.list
servicenetworking.services.addPeering
Reti supportate e intervalli IP dei client
Memorystore for Redis supporta gli indirizzi IP privati RFC 1918 e alcuni indirizzi IP privati non RFC 1918.
Intervalli validi fornisce un elenco di intervalli accettabili per Memorystore for Redis. Tuttavia, Memorystore for Redis non supporta gli indirizzi IP pubblici utilizzati privatamente (PUPI) elencati nella tabella degli intervalli validi a cui si fa riferimento qui.
Intervalli con limitazioni fornisce un elenco di intervalli di indirizzi IP che non possono essere utilizzati per creare istanze Memorystore for Redis.
Se un'istanza Memorystore utilizza la modalità di connessione di accesso privato ai servizi, i client degli intervalli PUPI non possono connettersi all'istanza Memorystore.
Memorystore supporta anche le reti VPC , tranne le reti legacy , l'accesso on-premise e le reti VPC condivise .