Opzioni di deployment per Redis su Google Cloud

Questo documento fornisce una panoramica dei deployment e delle migrazioni Redis in Google Cloud, incluse le opzioni e i compromessi per il deployment di Redis su servizi diversi, 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:

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 best practice e considerazioni generali. È importante analizzare a fondo il carico di lavoro Redis e consultare la documentazione ufficiale o richiedere una consulenza professionale 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 relative al deployment Alta disponibilità Velocità effettiva di lettura Velocità effettiva di scrittura
Standard (autonomo) Un singolo nodo Redis, senza repliche di lettura e senza alta disponibilità. Casi in cui tutti i dati rientrano in un solo nodo, la velocità effettiva di scrittura e lettura può essere gestita da un nodo e non è richiesta un'alta disponibilità.

Supportato su Memorystore (completamente gestito) e sul software open source Redis (OSS) (autogestito).

L'autogestione richiede una configurazione più complessa. Memorystore è una buona opzione per iniziare rapidamente.

No Nodo singolo Nodo singolo
Repliche ad alta disponibilità e/o di lettura Un singolo nodo Redis per le operazioni di scrittura, con nodi aggiuntivi per fornire alta disponibilità e, facoltativamente, condividere il carico di lettura, ad esempio utilizzando Sentinel. Casi in cui la velocità effettiva di scrittura può comunque essere gestita da un nodo, ma o la velocità effettiva di lettura non può essere gestita da un nodo oppure è richiesta un'alta disponibilità.

Supportato su Memorystore (completamente gestito) e Redis OSS (autogestito).

Le architetture dei cluster Redis offrono scalabilità automatica, disponibilità elevata e sharding dei dati, ideali per applicazioni distribuite su larga scala. Per comprendere i compromessi e le attività di manutenzione richieste per la scalabilità manuale, il clustering e lo sharding, consulta la pagina relativa alla scalabilità senza tempi di inattività nel cluster Memorystore for Redis.

L'autogestione 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. In via facoltativa, puoi aggiungere repliche di alta disponibilità e lettura. Casi in cui la velocità effettiva di scrittura non può essere gestita da un nodo ed è facoltativamente richiesta l'alta disponibilità o la replica di lettura. Multi-AZ Multinodo Multinodo
Cluster (con proxy) Diversi nodi suddividono le operazioni di scrittura dei dati con shard di dati separati. In via facoltativa, puoi aggiungere repliche di alta disponibilità e lettura. Viene eseguito il deployment dei proxy su ciascun nodo primario. Casi in cui la velocità effettiva di scrittura non può essere gestita da un nodo ed è richiesta un'alta disponibilità o la replica di lettura, e in cui è troppo costoso o sconveniente per l'utilizzo dell'API Redis Cluster per le applicazioni client oppure l'uso di proxy offre altri vantaggi.

Supportato da Redis Enterprise Cloud (completamente gestito) o dal software Redis Enterprise (autogestito).

La gestione autonoma con Redis OSS richiede una configurazione più complessa. Redis Enterprise Cloud è una buona opzione per iniziare rapidamente.

Più regioni (AZ) o più regioni (solo Redis Enterprise) Multinodo Nodo singolo

Opzioni di relative al deployment

Google Cloud offre le seguenti opzioni di deployment Redis:

  • Memorystore for Redis completamente gestito di Google Cloud: un servizio Redis completamente gestito, ad alta disponibilità e durevole gestito da Google, conveniente e veloce da configurare, operare e scalare. Memorystore supporta sia Cluster Redis sia Redis autonomo con alta disponibilità facoltativa.
  • Redis Enterprise autonomo o completamente gestito di Redis Ltd.: Un cluster Redis a disponibilità elevata e durevole concesso in licenza da Redis Ltd. e con due opzioni di gestione: gestito da Redis Ltd. ("Redis Enterprise Cloud") o autogestito ("Redis Enterprise Software") con il supporto di Redis Ltd.. Puoi acquistare Redis Enterprise direttamente da Redis Ltd. o tramite Google Cloud Marketplace. Redis Ltd. supporta deployment su Compute Engine , Google Kubernetes Engine e OpenShift.
  • Software open source Redis (OSS) autogestito: un cluster Redis autogestito o Redis autonomo con alta disponibilità facoltativa, di cui è possibile eseguire il deployment su Compute Engine, Google Kubernetes Engine o OpenShift.

Scegli un'opzione di deployment Redis

Questa sezione descrive come scegliere l'opzione di deployment Redis più adatta al tuo carico di lavoro. La Figura 1 fornisce una panoramica visiva dei punti decisionali:

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

Scegli un modello di gestione Redis

Puoi scegliere tra uno dei seguenti modelli di gestione:

  • Deployment completamente gestito. Puoi trasferire le operazioni di deployment e gestione al provider di servizi. Scegli questo modello se devi concentrarti sulla creazione dell'app e sulle attività di gestione.

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

    • Disponi di un'economia operativa di scala esistente, e gestire e utilizzare Redis è economicamente conveniente nella tua organizzazione.

    • Hai una preferenza strategica per la dipendenza solo IaaS.

    • Sono necessarie 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 deployment completamente gestiti, puoi utilizzare Memorystore o Redis Enterprise Cloud.

Memorystore

Scegli Memorystore se una delle seguenti condizioni è vera:

  • Hai una preferenza per consolidare il supporto del software gestito con Google Cloud.
  • Hai una preferenza per l'ottimizzazione per l'integrazione con costruzioni Google Cloud come Identity and Access Management, API, criteri dell'organizzazione, quota o Cloud Asset Inventory.
  • Hai bisogno di funzionalità specifiche disponibili solo in Memorystore (ad es.lo scale back-in).

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

Opzioni di relative al deployment
Redis Enterprise Cloud

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

  • Hai bisogno di funzionalità specifiche disponibili solo in Redis Enterprise Cloud (ad esempio, scritture multi-primarie attive-attive tra regioni con 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 autogestite

Per i deployment autogestiti, puoi scegliere tra Redis Enterprise e il software open source Redis.

Redis Enterprise

Scegli Redis Enterprise autogestito se una delle seguenti condizioni è vera:

  • La tua applicazione richiede le sue funzionalità esclusive, come il ri-sharding automatico per lo scale out, Redis su Flash o Redis Enterprise Operator per Kubernetes.
  • Il tuo team operativo non dispone delle competenze necessarie per gestire internamente problemi Redis complessi senza un'assistenza qualificata di terze parti.
  • Preferisci l'assistenza per le aziende fornita da Redis Ltd., in quanto i costi delle licenze associati sono gestibili dalla tua organizzazione.

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

Opzioni di relative al deployment
Opzioni di approvvigionamento e fatturazione
  • Licenza e assistenza fatturati da Redis Inc., mentre l'infrastruttura è fatturata da Google.
  • La licenza e l'assistenza vengono acquistate tramite Google Cloud Marketplace, mentre l'infrastruttura è fatturata da Google.
Software open source Redis

Scegli un software open source Redis autogestito se una delle seguenti condizioni è vera:

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

Quando esegui il deployment di software open source Redis autogestito, scegli un target di deployment in base alla strategia di piattaforma scelta. Il software open source Redis è di cui è possibile eseguire il deployment su Compute Engine, Google Kubernetes Engine o OpenShift. GKE Autopilot può ridurre gli sforzi di deployment e gestione, ma potrebbe essere più limitato, ad esempio rendendo più difficile lo fare lo scale in.

Per maggiori informazioni sul software open source Redis, consulta Redis.io.

Confronto delle funzionalità

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

Caratteristiche del deployment Opzioni di relative al deployment
Memorystore per Redis e cluster Redis Redis Enterprise Cloud Software Redis Enterprise Software open source Redis
Gestito da Completamente gestito da Google Completamente gestito da Redis Ltd. Gestione indipendente Gestione indipendente
Supportata da Google Redis Ltd. Redis Ltd. Auto-supportata
Fatturato da Google Redis Ltd. o Google

La fatturazione dell'infrastruttura è gestita da Google.

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

Google
Elementi di costo

Tutti i costi sono inclusi.

Include: costi di infrastruttura, licenze, assistenza e gestione.

Per maggiori informazioni, consulta la sezione Prezzi di Memorystore.

Tutti i costi sono inclusi.

Include: costi di infrastruttura, licenze, assistenza e gestione.

Per maggiori informazioni, consulta la pagina relativa ai prezzi di Redis Enterprise Cloud.

I costi relativi a licenza software e assistenza sono inclusi. L'utilizzo dell'infrastruttura è fatturato separatamente da Google Cloud.

I costi di gestione, inclusi deployment, ottimizzazione, personale e tempi di inattività, vengono assorbiti dal cliente.

Per maggiori informazioni, consulta la pagina relativa ai prezzi di Redis Enterprise Software.

Nessun costo di servizio o licenza. Utilizzo dell'infrastruttura fatturato da Google Cloud.

I costi di gestione, inclusi deployment, ottimizzazione, personale e tempi di inattività, vengono assorbiti dal cliente.

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

Per maggiori informazioni, consulta l'accordo sul livello del servizio di Memorystore.

  • Redis standard: uptime del 99,9%; tempo di inattività inferiore o uguale a 43,2 min/mese
  • Cluster Redis: un uptime del 99,99% con alta disponibilità multi-AZ; un tempo di inattività inferiore o uguale a 4,38 min/mese.
  • HA (HA) attivo-attivo in più regioni: uptime del 99,999%; tempi di inattività inferiori o uguali a 26,3 min/mese.

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

Non applicabile.

Sei responsabile dell'uptime.

Non applicabile.

Sei responsabile dell'uptime.

Livello gratuito No Prova gratuita di 30 giorni Non applicabile
Livelli di dati No Livelli automatici Livelli automatici No
Multi-cloud No Manualmente Possibile, ma richiede un impegno elevato
Active-active per più regioni No Yes Manualmente Possibile, ma richiede un impegno elevato
Moduli
Conformità Supporto integrato per i diversi regimi di conformità. Per saperne di più, consulta la sezione Offerte relative alla conformità. Supporto integrato per i diversi regimi di conformità. Per ulteriori informazioni, consulta il Centro affidabilità di Redis. Supporto integrato per i diversi regimi di conformità. Per ulteriori informazioni, consulta il Centro affidabilità di Redis. La gestione manuale della conformità è obbligatoria. Per saperne di più, consulta la sezione Offerte relative alla conformità.
Scalabilità delle scritture del cluster Scale in e scale out Scale in e scale out Scale out. La scalabilità richiede sforzi manuali. Gestione autonoma, richiede sforzi manuali.
Ribilanciamento automatico Gestione autonoma, richiede sforzi manuali Gestione autonoma, richiede sforzi manuali
Aggiungere l'alta disponibilità Facile, non è necessario un nuovo deployment Facile, non è necessario un nuovo deployment Non è necessario ripetere il deployment, ma richiede sforzi manuali Richiede un impegno manuale sostanziale; potrebbe essere necessario un redeployment a seconda dell'architettura originale
Aggiunta di repliche di lettura Facile, non è necessario un nuovo deployment Facile, non è necessario un nuovo deployment Richiede un impegno manuale sostanziale; potrebbe essere necessario un redeployment a seconda dell'architettura originale Gestione autonoma, richiede sforzi manuali
Spostamento a un cluster Redis con suddivisione dei dati quando si supera la velocità effettiva di scrittura Richiede una nuova implementazione, ma vengono forniti strumenti per facilitare lo sforzo. È necessario eseguire il refactoring dei client per supportare l'API Redis Cluster. Facile, non è necessario un nuovo deployment Facile, non è necessario un nuovo deployment Gestione autonoma, richiede sforzi manuali