Questo documento fornisce una panoramica dei deployment Redis. e le migrazioni a Google Cloud, tra cui le opzioni e i compromessi eseguendo 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:
Opzioni completamente gestite fornite da Memorystore e Redis Ltd.
Opzioni autogestite con i seguenti prodotti:
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 accuratamente il carico di lavoro Redis e consulta la documentazione ufficiale o rivolgiti 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 implementazione | 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 possono essere memorizzati su un nodo, la velocità effettiva di scrittura e lettura può essere gestita da un nodo e l'alta disponibilità non è richiesta. | Supportata su Memorystore (completamente gestito) e open source Redis software (OSS) (autogestito). La gestione autonoma richiede una configurazione più complessa. Memorystore è un è un'ottima 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. | Nei casi in cui la velocità effettiva di scrittura può essere comunque gestita da un nodo, ma la velocità effettiva di lettura non può essere fornita da un solo nodo oppure l'alta disponibilità è obbligatorio. | Supportata su Memorystore (completamente gestito) e Redis OSS (autogestito). Le architetture Redis Cluster offrono scalabilità automatica, alta disponibilità 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 Scalabilità senza tempi di inattività in Memorystore for Redis Cluster. La gestione autonoma richiede una configurazione più complessa. Memorystore è un'ottima opzione per iniziare rapidamente. |
Multi-AZ | Multi nodo | Nodo singolo |
Cluster (senza proxy) | Diversi nodi suddividono le operazioni di scrittura dei dati con shard di dati separati. Se vuoi, puoi aggiungere l'alta disponibilità e le repliche di lettura. | Nei casi in cui la velocità effettiva di scrittura non può essere gestita da un solo nodo, o la replica di lettura è facoltativa. | Multi-AZ | Multi nodo | Multi nodo | |
Cluster (con proxy) | Diversi nodi suddividono le operazioni di scrittura dei dati con shard di dati separati. È possibile aggiungere facoltativamente l'alta disponibilità e le repliche di lettura. I proxy sono il deployment su ciascun nodo primario. | Nei casi in cui la velocità effettiva di scrittura non può essere gestita da un solo nodo, o la replica di lettura è facoltativamente richiesta e, dove Troppo costoso o scomodo per il refactoring delle applicazioni client per l'utilizzo l'API Redis Cluster o l'uso dei proxy presenta altri vantaggi. | Supportata da Redis Enterprise Cloud (completamente gestito) o Software Redis Enterprise (autogestito). La gestione autonoma 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 implementazione
Google Cloud offre le seguenti opzioni di deployment Redis:
- Memorystore for Redis completamente gestito da Google Cloud: un servizio Redis completamente gestito, altamente disponibile e duraturo gestito da Google, che è economicamente vantaggioso e veloce da configurare, utilizzare e scalare. Memorystore supporta sia Cluster Redis e Redis standalone con alta disponibilità facoltativa.
- Redis Enterprise autogestita o completamente gestita da Redis Ltd.: Un cluster Redis altamente disponibile e duraturo 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 l'assistenza di Redis Ltd. Puoi acquistare Redis Aziende direttamente da Redis Ltd. o tramite Google Cloud Marketplace. Redis Ltd. supporta i deployment su Compute Engine , Google Kubernetes Engine e ApriMaiusc.
- Software open source (OSS) Redis autonomo: un cluster Redis autonomo o Redis autonomo con alta disponibilità facoltativa, eseguibile su Compute Engine, Google Kubernetes Engine o OpenShift.
Scegli un'opzione di deployment di Redis
Questa sezione descrive come scegliere l'opzione di deployment Redis la migliore per il tuo carico di lavoro. La figura 1 fornisce una panoramica visiva della decisione punti:
Scegli un modello di gestione Redis
Puoi scegliere tra uno dei seguenti modelli di gestione:
Deployment completamente gestito. Carichi le operazioni di deployment e gestione sul fornitore di servizi. Scegli questo modello quando devi concentrarti sulla creazione della tua app e scaricare le attività di gestione.
Deployment autogestito. Sei responsabile delle operazioni di implementazione e gestione. Scegli questo modello se una delle seguenti condizioni è vera:
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 deployment completamente gestiti, puoi utilizzare Memorystore o Redis Enterprise Google Cloud.
Memorystore
Scegli Memorystore se una delle seguenti condizioni è vera:
- Hai una preferenza per consolidare il supporto del software gestito con in Google Cloud.
- Hai una preferenza per l'ottimizzazione per l'integrazione con 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. riduzione del ridimensionamento).
Per ulteriori informazioni su Memorystore, consulta la documentazione del prodotto Memorystore.
Opzioni di implementazione
- Memorystore for Redis (autonomo, HA)
- Memorystore per cluster Redis (Cluster, alta disponibilità)
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 il suo SLA del 99,999%, caso d'uso di RedisSearch).
- È necessaria la scalabilità del 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 approvvigionamento e fatturazione
Opzioni di gestione indipendente
Per i deployment autogestiti, puoi scegliere tra Redis Enterprise e il software open source Redis.
Redis Enterprise
Scegli Redis Enterprise autonomo se una delle seguenti condizioni è vera:
- L'applicazione richiede le sue 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 l'assistenza di terze parti qualificate.
- Preferisci l'assistenza per le aziende fornita da Redis Ltd. e dai relativi i costi delle licenze sono gestibili dalla tua organizzazione.
Per ulteriori informazioni sul software Redis Enterprise, consulta la documentazione del software Redis Enterprise.
Opzioni di implementazione
- Software Redis Enterprise autogestito su GKE o OpenShift, con utilizzo facoltativo dell'operatore Redis Enterprise per Kubernetes
- Software Redis Enterprise autonomo su Compute Engine
Opzioni di approvvigionamento e fatturazione
- Licenza e l'assistenza fatturata 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 autonomo se una delle seguenti condizioni è vera:
- Hai bisogno o hai una preferenza di una personalizzazione completa che altrimenti non è possibile.
- Il team operativo dispone delle competenze necessarie per gestire internamente problemi Redis complessi senza l'assistenza di terze parti qualificate.
- Vuoi evitare i costi di licenza.
- Hai molte risorse interne di ottimizzazione del kernel Redis e Linux oppure il tuo caso d'uso non richiede l'ottimizzazione.
Scegli un deployment del software open source Redis autogestito target in base alla strategia che hai scelto per la piattaforma. Il software open source Redis di cui è possibile eseguire il deployment su Compute Engine, Google Kubernetes Engine o OpenShift. GKE Autopilot può ridurre le attività di implementazione e gestione, ma potrebbe essere più limitato, ad esempio per la difficoltà di eseguire lo scaling in.
Per ulteriori informazioni sul software open source Redis, consulta Redis.io.
Risorse aggiuntive
Confronto delle funzioni
La seguente tabella riassume le principali differenze tra tutte le opzioni di deployment:
Caratteristiche del deployment | Opzioni di implementazione | |||
---|---|---|---|---|
Memorystore for Redis e cluster Redis | Cloud Redis Enterprise | Software Redis Enterprise | Software open source Redis | |
Gestito da | Completamente gestito da Google | Completamente gestito da Redis Ltd. | Gestione indipendente | Gestione indipendente |
Supportato da | Redis Ltd. | Redis Ltd. | Autonomo | |
Fatturazione da | Redis Ltd. o Google | L'infrastruttura è fatturata da Google. La licenza e l'assistenza di Redis Ltd. sono fatturate da Redis Ltd. o da Google. |
||
Elementi di costo | Tutti i costi sono inclusi. Sono inclusi: costi di infrastruttura, licenze, assistenza e gestione. Per maggiori informazioni, consulta la pagina Prezzi di Memorystore. |
Tutti i costi inclusi. Sono inclusi i costi di infrastruttura, licenze, assistenza e gestione. Per ulteriori informazioni, vedi Prezzi di Redis Enterprise Cloud. |
I costi della licenza software e dell'assistenza sono inclusi. L'utilizzo dell'infrastruttura viene fatturato separatamente da Google Cloud. I costi di gestione, tra cui implementazione, ottimizzazione, personale e tempo di riposo, sono a carico del cliente. Per ulteriori informazioni, vedi Prezzi di Redis Enterprise Software. |
Nessuna tariffa di servizio o di licenza. Utilizzo dell'infrastruttura fatturato da Google Cloud. I costi di gestione, tra cui implementazione, ottimizzazione, personale e tempo di riposo, sono a carico del cliente. |
SLA |
Per ulteriori informazioni, consulta il Accordo sul livello del servizio Memorystore. |
Per ulteriori informazioni, consulta l'Accordo sul livello del servizio di Redis Cloud. |
Non applicabile. Sei responsabile del tempo di attività. |
Non applicabile. Sei responsabile dell'uptime. |
Livello gratuito | No | Sì | Prova gratuita di 30 giorni | Non applicabile |
Suddivisione dei dati in livelli | No | Suddivisione automatica dei livelli | Suddivisione automatica dei livelli | No |
Multi-cloud | No | Sì | Manualmente | Possibile, ma richiede un impegno elevato |
Multiregione attivo-attivo | No | Sì | Manualmente | Possibile, ma richiede un impegno elevato |
Moduli |
|
|
||
Conformità | Supporto integrato per i diversi regimi di conformità. Per ulteriori informazioni, consulta la sezione Offerte di conformità. | Supporto integrato per i diversi regimi di conformità. Consulta: Centro affidabilità Redis per scoprire di più informazioni. | Supporto integrato per i diversi regimi di conformità. Consulta: Centro affidabilità Redis per scoprire di più informazioni. | È necessaria la gestione manuale della conformità. Per ulteriori informazioni, consulta la sezione Offerte di conformità. |
Scalabilità delle scritture del cluster | Aumenta e diminuisce | Scale in e scale out | Eseguire lo scale out. L'aumento della scalabilità richiede un intervento manuale. | Autogestito, richiede intervento manuale. |
Ribilanciamento automatico | Sì | Sì | Autogestito, richiede intervento manuale | Autogestita, richiede intervento manuale |
Aggiunta dell'alta disponibilità | Semplicità, non è necessario eseguire di nuovo il deployment | Senza interruzioni, non è richiesto alcun nuovo dispiegamento | Non è necessario eseguire nuovamente il deployment, ma richiede un intervento manuale | Richiede un notevole impegno manuale. Potrebbe essere necessario il ricollocamento in base all'architettura originale |
Aggiunta di repliche di lettura | Semplicità, non è necessario eseguire di nuovo il deployment | Facile da usare, non è necessario eseguire di nuovo il deployment | Richiede un notevole impegno manuale. Potrebbe essere necessario il ricollocamento in base all'architettura originale | Autogestito, richiede intervento manuale |
Passa a un cluster Redis con sharding dei dati quando si supera la velocità effettiva di scrittura | Richiede la ridistribuzione, ma vengono forniti strumenti per facilitare l'operazione. I client devono essere sottoposti a refactoring per supportare l'API Redis Cluster. | Senza interruzioni, non è richiesto alcun nuovo dispiegamento | Facile da usare, non è necessario eseguire di nuovo il deployment | Autogestito, richiede intervento manuale |