Opzioni di deployment per Redis su Google Cloud


Questo documento fornisce una panoramica dei deployment e delle migrazioni di Redis a Google Cloud, incluse le opzioni e i vantaggi e svantaggi del deployment di Redis su diversi servizi, in base ai tuoi requisiti.

Redis è un archivio di strutture di dati in memoria che puoi utilizzare come database, cache, broker di messaggi e altro ancora. Google Cloud supporta completamente Redis, tra cui quanto segue:

Il modo migliore per eseguire il deployment di Redis su Google Cloud dipende dalle tue esigenze e dai tuoi requisiti specifici. I consigli forniti in questa guida si basano su considerazioni e best practice generali. È importante analizzare attentamente il tuo workload Redis e consultare la documentazione ufficiale o chiedere consiglio a un professionista per casi d'uso o requisiti specifici.

Architetture

Puoi eseguire il deployment di Redis utilizzando una delle seguenti architetture:

Architettura Descrizione Caso d'uso Opzioni di deployment Alta affidabilità Throughput di lettura Throughput di scrittura
Standard (autonomo) Un singolo nodo Redis, senza repliche di lettura e non con alta affidabilità. Casi in cui tutti i dati possono essere memorizzati su un singolo nodo, il throughput di scrittura e lettura può essere gestito da un nodo e l'alta affidabilità non è richiesta.

Supportato su Memorystore (completamente gestito) e su software open source (OSS) Redis (con gestione indipendente).

La gestione indipendente richiede una configurazione più complessa. Memorystore è una buona opzione per iniziare rapidamente.

No Nodo singolo Nodo singolo
Alta affidabilità e/o repliche di lettura Un singolo nodo Redis per le operazioni di scrittura, con nodi aggiuntivi per fornire alta affidabilità e, facoltativamente, condividere il carico di lettura, ad esempio utilizzando Sentinel. Casi in cui il throughput di scrittura può essere ancora gestito da un nodo, ma il throughput di lettura non può essere gestito da un solo nodo oppure è richiesta alta affidabilità.

Supportato su Memorystore (completamente gestito) e Redis OSS (gestione indipendente).

Le architetture Redis Cluster offrono scalabilità automatica, alta affidabilità e sharding dei dati, ideali per applicazioni distribuite su larga scala. Per comprendere i pro e i contro e le attività di manutenzione richieste per la scalabilità manuale, il clustering e lo sharding, consulta Scalabilità senza tempi di inattività in Memorystore for Redis Cluster.

La gestione indipendente richiede una configurazione più complessa. Memorystore è una buona opzione per iniziare rapidamente.

Multi-AZ Multinodo Nodo singolo
Cluster (senza proxy) Diversi nodi suddividono le operazioni di scrittura dei dati con shard di dati separati. È possibile aggiungere facoltativamente l'alta affidabilità e le repliche di lettura. Casi in cui il throughput di scrittura non può essere gestito da un nodo e l'alta affidabilità o la replica di lettura sono facoltativamente richieste. Multi-AZ Multinodo Multinodo
Cluster (con proxy) Diversi nodi suddividono le operazioni di scrittura dei dati con shard di dati separati. È possibile aggiungere facoltativamente l'alta affidabilità e le repliche di lettura. Viene eseguito il deployment dei proxy su ogni nodo principale. Casi in cui il throughput in scrittura non può essere gestito da un nodo e l'alta affidabilità o la replica di lettura è richiesta in modo facoltativo, nonché i casi in cui è troppo costoso o poco conveniente da parte delle applicazioni client da rifattorizzare utilizzare l'API Redis Cluster o l'uso di proxy offre altri vantaggi.

Supportato da Redis Enterprise Cloud (completamente gestito) o software Redis Enterprise (con gestione indipendente).

L'autogestione con Redis OSS richiede una configurazione più complessa. Redis Enterprise Cloud è una buona opzione per iniziare rapidamente.

Multi-AZ o multi-regione (solo Redis Enterprise) Multinodo Nodo singolo

Opzioni di deployment

Google Cloud offre le seguenti opzioni di deployment di Redis:

  • Memorystore for Redis completamente gestito da Google Cloud: un servizio Redis completamente gestito, altamente affidabile e durabile gestito da Google, che è economicamente vantaggioso e veloce da configurare, utilizzare e scalare. Memorystore supporta sia Redis Cluster sia Redis autonomo con alta affidabilità facoltativa.
  • Redis Enterprise con gestione indipendente o completamente gestito di Redis Ltd.: Un cluster Redis ad alta affidabilità e durevole concesso in licenza da Redis Ltd. e con due opzioni di gestione: gestito da Redis Ltd. ("Redis Enterprise Cloud") o con gestione indipendente ("Redis Enterprise Software") con l'assistenza di Redis Ltd. Puoi acquistare Redis Enterprise direttamente da Redis Ltd. o tramite Google Cloud Marketplace. Redis Ltd. supporta i deployment su Compute Engine, Google Kubernetes Engine e OpenShift.
  • Software open source (OSS) Redis con gestione indipendente: un cluster Redis con gestione indipendente o Redis autonomo con alta affidabilità facoltativa, di cui è possibile eseguire il deployment su Compute Engine, Google Kubernetes Engine o OpenShift.

Scegli un'opzione di deployment di Redis

Questa sezione descrive come scegliere l'opzione di deployment di Redis più adatta al tuo workload. La figura 1 fornisce una panoramica visiva dei punti di decisione:

Struttura decisionale delle opzioni di deployment di Redis.
Figura 1: fattori decisionali e opzioni di deployment.

Scegli un modello di gestione di Redis

Puoi scegliere uno dei seguenti modelli di gestione:

  • Deployment completamente gestito. Trasferisci le operazioni di deployment e gestione al fornitore di servizi. Scegli questo modello quando devi concentrarti sulla creazione della tua app e trasferire le attività di gestione.

  • Deployment con gestione indipendente. Sei responsabile delle operazioni di deployment e gestione. Scegli questo modello se una delle seguenti condizioni è true:

    • Hai già un'economia di scala operativa e la gestione e l'utilizzo di Redis ha senso dal punto di vista economico per la tua organizzazione.

    • Hai una preferenza strategica per la dipendenza solo da IaaS.

    • Hai bisogno di ottimizzazioni avanzate.

Valuta le opzioni di deployment

Dopo aver scelto il modello di gestione, valuta le opzioni di deployment a tua disposizione.

Opzioni completamente gestite

Per i deployment completamente gestiti, puoi utilizzare Memorystore o Redis Enterprise Cloud.

Memorystore

Scegli Memorystore se una delle seguenti condizioni è true:

  • Hai la preferenza di consolidare il supporto del software gestito con Google Cloud.
  • Hai una preferenza per l'ottimizzazione per l'integrazione con costrutti Google Cloud come Identity and Access Management, API, policy dell'organizzazione, quote o Cloud Asset Inventory.
  • Hai bisogno di funzionalità specifiche disponibili solo in Memorystore (ad es. riduzione del numero).

Per ulteriori informazioni su Memorystore, consulta la documentazione del prodotto Memorystore.

Opzioni di deployment
Redis Enterprise Cloud

Scegli Redis Enterprise Cloud se una delle seguenti condizioni è true:

  • Hai bisogno di funzionalità specifiche disponibili solo in Redis Enterprise Cloud (ad esempio, scritture multi-primarie di tipo attivo-attivo tra regioni con il relativo SLA del 99,999%, caso d'uso RedisSearch).
  • Hai bisogno della scalabilità dei cluster per un'applicazione che non supporta l'API Redis Cluster.

Per ulteriori informazioni su Redis Enterprise Cloud, consulta la documentazione di Redis Cloud.

Opzioni di gestione indipendente

Per i deployment con gestione indipendente, puoi scegliere tra Redis Enterprise e il software open source Redis.

Redis Enterprise

Scegli Redis Enterprise con gestione indipendente se una delle seguenti condizioni è true:

  • La tua applicazione richiede funzionalità uniche, come il re-sharding automatico per lo scale out, Redis on Flash o Redis Enterprise Operator per Kubernetes.
  • Il tuo team operativo non dispone delle competenze necessarie per gestire internamente problemi Redis complessi senza il supporto di terze parti qualificate.
  • Preferisci il supporto per le aziende fornito da Redis Ltd. e i costi di licenza associati sono gestibili dalla tua organizzazione.

Per ulteriori informazioni sul software Redis Enterprise, consulta la documentazione del software Redis Enterprise.

Opzioni di deployment
Opzioni di approvvigionamento e fatturazione
  • Licenza e assistenza fatturate da Redis Inc., mentre l'infrastruttura è fatturata da Google.
  • La licenza e il supporto vengono acquistati tramite Google Cloud Marketplace, mentre l'infrastruttura viene fatturata da Google.
Software open source Redis

Scegli il software open source Redis con gestione indipendente se una delle seguenti condizioni è true:

  • Hai la necessità o una preferenza per una personalizzazione completa altrimenti non possibile.
  • Il tuo team operativo dispone delle competenze necessarie per gestire internamente problemi Redis complessi senza il supporto di terze parti qualificate.
  • Vuoi evitare i costi di licenza.
  • Disponi di ampie risorse interne per l'ottimizzazione del kernel Redis e Linux oppure il tuo caso d'uso non richiede l'ottimizzazione.

Quando esegui il deployment del software open source Redis autogestito, scegli un target di deployment in base alla strategia basata sulla piattaforma scelta. Il software open source Redis può essere sottoposto a deployment su Compute Engine, Google Kubernetes Engine o OpenShift. GKE Autopilot può ridurre le operazioni di deployment e gestione, ma potrebbe essere più limitato, ad esempio per la difficoltà di fare lo scale in.

Per ulteriori informazioni sul software open source Redis, visita la pagina Redis.io.

Confronto delle funzioni

La seguente tabella riassume le principali differenze tra tutte le opzioni di deployment:

Caratteristiche del deployment Opzioni di deployment
Memorystore for Redis e Redis Cluster Redis Enterprise Cloud Software Redis Enterprise Software open source Redis
Gestito da Completamente gestito da Google Completamente gestito da Redis Ltd. Con gestione indipendente Con gestione indipendente
Supportato da Google Redis Ltd. Redis Ltd. Con supporto indipendente
Fatturato da Google Redis Ltd. o Google

L'infrastruttura è fatturata da Google.

La licenza e l'assistenza di Redis Ltd. vengono fatturate da Redis Ltd. o Google.

Google
Elementi di costo

Tutti i costi inclusi.

Sono inclusi: costi di infrastruttura, licenze, assistenza e gestione.

Per ulteriori informazioni, consulta la pagina Prezzi di Memorystore.

Tutti i costi inclusi.

Sono inclusi: costi di infrastruttura, licenze, assistenza e gestione.

Per maggiori informazioni, consulta Prezzi di Redis Enterprise Cloud.

I costi di licenza e assistenza del software sono inclusi. L'utilizzo dell'infrastruttura viene fatturato separatamente da Google Cloud.

I costi di gestione, tra cui deployment, ottimizzazione, personale e tempo di inattività, sono a carico del cliente.

Per ulteriori informazioni, consulta Prezzi del software Redis Enterprise.

Nessuna tariffa di servizio o per la licenza. Utilizzo dell'infrastruttura fatturato da Google Cloud.

I costi di gestione, tra cui deployment, ottimizzazione, personale e tempo di inattività, sono a carico del cliente.

SLA
  • Redis standard: tempo di attività del 99,9%; inferiore o pari a un tempo di inattività di 43,2 min/mese
  • Redis Cluster: tempo di attività del 99,99% con alta affidabilità multi-AZ; inferiore o uguale a un tempo di inattività di 4,38 min/mese.

Per ulteriori informazioni, consulta l'Accordo sul livello del servizio Memorystore.

  • Redis standard: tempo di attività del 99,9%; inferiore o pari a un tempo di inattività di 43,2 min/mese
  • Redis Cluster: tempo di attività del 99,99% con alta affidabilità multi-AZ; inferiore o uguale a un tempo di inattività di 4,38 min/mese.
  • Alta affidabilità di tipo attivo-attivo multi-regione: tempo di attività del 99,999%; inferiore o uguale a un tempo di inattività di 26,3 min/mese.

Per ulteriori informazioni, consulta l'Accordo sul livello del servizio Redis Cloud.

Non applicabile.

Sei responsabile del tempo di attività.

Non applicabile.

Sei responsabile del tempo di attività.

Livello gratuito No Prova senza costi di 30 giorni Non applicabile
Tiering dei dati No Tiering automatico Tiering automatico No
Multi-cloud No Manualmente Possibile, ma richiede un impegno elevato
Di tipo attivo-attivo multi-regione No Manualmente Possibile, ma richiede un impegno elevato
Moduli
Conformità Supporto integrato per i diversi regimi di conformità. Per ulteriori informazioni, consulta la sezione Offerte relative alla conformità. Supporto integrato per i diversi regimi di conformità. Per saperne di più, consulta il Redis Trust Center. Supporto integrato per i diversi regimi di conformità. Per saperne di più, consulta il Redis Trust Center. È necessaria la gestione manuale della conformità. Per ulteriori informazioni, consulta la sezione Offerte relative alla conformità.
Scalabilità delle scritture del cluster Fa lo scale in e lo scale out Fa lo scale in e lo scale out Fa lo scale out. Lo scale in richiede un intervento manuale. Con gestione indipendente, richiede intervento manuale.
Ribilanciamento automatico Con gestione indipendente, richiede intervento manuale Con gestione indipendente, richiede intervento manuale
Aggiunta dell'alta affidabilità Senza interruzioni, non è necessario rieseguire il deployment Senza interruzioni, non è necessario rieseguire il deployment Non è necessario rieseguire il deployment, ma è richiesta un'azione manuale Richiede un notevole impegno manuale. Potrebbe essere necessario rieseguire il deployment in base all'architettura originale
Aggiunta di repliche di lettura Senza interruzioni, non è necessario rieseguire il deployment Senza interruzioni, non è necessario rieseguire il deployment Richiede un notevole impegno manuale. Potrebbe essere necessario rieseguire il deployment in base all'architettura originale Con gestione indipendente, richiede intervento manuale
Passaggio a un cluster Redis con dati sottoposti a sharding quando il throughput di scrittura non è più sufficiente Richiede di rieseguire il deployment, ma vengono forniti gli strumenti per semplificare l'operazione. I client devono essere sottoposti a refactoring per supportare l'API Redis Cluster. Senza interruzioni, non è necessario rieseguire il deployment Senza interruzioni, non è necessario rieseguire il deployment Con gestione indipendente, richiede intervento manuale