stabilire una connessione di accesso privato ai servizi
è un prerequisito che deve essere completato prima di creare un'istanza Redis con una rete VPC condiviso
Questa pagina offre una panoramica del networking per Memorystore for Redis.
Memorystore utilizza il peering VPC per connettere la tua rete VPC alla rete interna dei servizi Google. Memorystore for Redis offre architetture di peering e funzionalità di networking diverse a seconda della modalità di connessione scelta durante la creazione di un'istanza.
È stata introdotta l'opzione per selezionare una modalità di connessione per supportare opzioni di rete avanzate in Google Cloud come le architetture VPC condiviso e una migliore gestione degli IP, garantendo al contempo il supporto per l'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 eseguire il provisioning delle istanze Redis.
Modalità di connessione
Memorystore for Redis offre due modalità di connessione che supportano diverse funzionalità:
- Peering diretto
- Accesso privato ai servizi
Per visualizzare la modalità di connessione di rete per un'istanza esistente, esegui questo 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 Creazione di un'istanza Redis con una rete VPC condiviso in un progetto di servizio o Creazione di 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. Altri servizi Google Cloud non condividono il peering. Memorystore for Redis utilizzava la modalità di connessione peering diretto prima della disponibilità della modalità di connessione di accesso privato ai servizi.
Per impostazione predefinita, le nuove istanze vengono create utilizzando la modalità di connessione in peering diretto.
Tutti gli script esistenti senza la modalità di connessione specificata utilizzano la modalità di peering diretto per impostazione predefinita.
Se stai creando un'istanza con la modalità di connessione in peering diretto e vuoi utilizzare il flag gcloud --reserved-ip-range
per specificare un intervallo di indirizzi IP, consulta Creazione di un'istanza Redis con un intervallo di indirizzi IP specifico per istruzioni su come specificare un intervallo. La dimensione minima del blocco richiesta è /29
per le istanze senza repliche di lettura. La dimensione minima del blocco richiesta è /28
per le istanze che hanno 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.
Se stabilisci una connessione di accesso privato ai servizi per una rete VPC, viene creato un peering tra quella 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'uso dell'accesso privato ai servizi ti consente di utilizzare le seguenti funzionalità per l'istanza Redis:
- Esegui il provisioning di un'istanza Memorystore for Redis in un progetto di servizio utilizzando un VPC condiviso.
- Gestisci centralmente gli intervalli di indirizzi IP per più servizi Google.
- Connettiti da origini esterne alla tua rete VPC tramite un tunnel VPN o Cloud Interconnect alla tua rete VPC.
Uno dei vantaggi aggiuntivi dell'accesso privato ai servizi è che lo stesso peering di rete è 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 si creano istanze con la modalità di connessione di accesso privato ai servizi rispetto a quando si creano istanze con la modalità di connessione in peering diretto. Durante la creazione di istanze con la modalità di accesso privato ai servizi, se sono stati assegnati più intervalli di indirizzi IP per l'accesso privato ai servizi, puoi utilizzare il flag gcloud --reserved-ip-range
per scegliere gli intervalli allocati da utilizzare durante la creazione dell'istanza Redis. Per istruzioni su come eseguire questa operazione, vedi Creazione di un'istanza Redis con un intervallo di indirizzi IP specifico.
Scelta di una modalità di connessione
La tabella seguente illustra i diversi casi d'uso e le modalità di connessione che dovresti utilizzare.
Scenario |
Modalità di connessione supportata |
Esegui il provisioning di un'istanza Redis con una rete VPC condiviso |
Accesso solo ai servizi privati |
Accedi a un'istanza Redis da reti on-premise utilizzando la VPN |
Accesso solo ai servizi privati |
Usa la gestione centralizzata degli intervalli IP per più servizi Google |
Accesso solo ai servizi privati |
|
Esegui il provisioning di un'istanza Redis utilizzando una rete VPC dedicata |
Accesso privato ai servizi (consigliato) o peering diretto |
Cambio della 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.
Questo comporta una modifica dell'indirizzo IP dell'istanza.
Ad esempio, se hai un'istanza esistente creata prima che fosse disponibile la modalità di connessione di accesso privato ai servizi, la proprietà modalità di connessione per quell'istanza è impostata sul 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 la presenza di istanze Redis che utilizzano l'accesso ai servizi privati e di 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 questa è connessa alla rete VPC a cui è connessa l'istanza di Memorystore for Redis. Per consentire le connessioni da una rete on-premise:
- Assicurati che la tua 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 di Cloud Interconnect (VLAN) abbiano ricevuto prefissi specifici (destinazioni) dalla tua rete on-premise. Non è possibile importare le route predefinite (destinazione
0.0.0.0/0
) nella rete VPC Memorystore for Redis perché questa ha una 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 tua rete VPC.
-
Identifica il peering prodotto dalla connessione ai servizi privati.
Il peering utilizzato da Memorystore per Redis è denominato
servicenetworking-googleapis-com
.
-
Aggiorna la connessione di peering per scambiare route personalizzate impostando i flag
--import-custom-routes
e --export-custom-routes
-
Identifica l'intervallo allocato utilizzato dalla connessione ai servizi privati.
-
Crea un annuncio di route personalizzato per il router Cloud per l'intervallo allocato sui router Cloud che gestiscono le sessioni BGP per i tunnel Cloud VPN o per i collegamenti di Cloud Interconnect (VLAN).
Comunicazione dei requisiti di networking
In genere, il team di networking e/o l'amministratore di rete della tua organizzazione sono responsabili della configurazione della connessione di accesso privato ai servizi. In questo modo il team di networking può garantire che nessun indirizzo IP o intervallo utilizzato per altre risorse Google Cloud si sovrapponga, causando problemi di connettività.
Ti consigliamo di contattare il team di sicurezza e rete della tua organizzazione per configurare la connessione privata ai servizi, soprattutto se si verifica 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 abilitate per la replica di lettura
Per utilizzare la funzionalità delle repliche di lettura per Memorystore for Redis, l'istanza deve avere un intervallo di indirizzi IP CIDR pari o superiore a /28
. Dimensioni di intervalli più grandi come /27
e /26
sono valide. 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 necessarie, puoi ricevere errori di autorizzazioni insufficienti. Per un elenco degli errori di rete comuni, vedi Scenari di errore di rete.
Autorizzazioni UI
Autorizzazioni necessarie per elencare le reti di progetti locali e host nella UI:
compute.networks.list
- Necessario sia nei progetti locali che in quelli host.
È richiesta l'autorizzazione per controllare la connessione di accesso privato ai servizi nella UI:
compute.networks.list
- Necessario sia nei progetti locali che in quelli host.
È richiesta l'autorizzazione per creare una connessione di accesso privato ai servizi nella UI:
serviceusage.services.enable
- Necessaria per abilitare l'API Service Networking.
compute.addresses.create
compute.addresses.list
servicenetworking.services.addPeering
Autorizzazioni gcloud
Autorizzazioni gcloud necessarie per verificare la connessione di accesso privato ai servizi
compute.networks.list
- Necessario sia nei progetti locali che in quelli host.
Autorizzazioni gcloud necessarie per creare una connessione di accesso privato ai servizi
serviceusage.services.enable
- Necessaria per abilitare l'API Service Networking.
compute.addresses.create
compute.addresses.list
servicenetworking.services.addPeering
Reti e intervalli IP client supportati
Memorystore for Redis supporta gli indirizzi IP privati RFC 1918 e alcuni indirizzi IP privati non RFC 1918.
- Gli intervalli validi forniscono un elenco di intervalli accettabili per Memorystore per Redis. Tuttavia, Memorystore per Redis non
supporta gli indirizzi IP pubblici utilizzati privatamente (PUPI) elencati nella
tabella degli intervalli valida collegata qui.
- Intervalli limitati 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 di Memorystore.
Memorystore supporta anche le reti VPC, ad eccezione delle reti legacy, dell'accesso on-premise e delle reti VPC condivise.