2015-08-12 23 views
11

Quando si avvia un'istanza di Aurora, ho l'opzione "Distribuzione multi-AZ", che descrive come "Specifica se l'istanza database deve avere una distribuzione in standby in un'altra zona di disponibilità".Perché AWS RDS Aurora ha l'opzione di "Distribuzione multi-AZ" quando esegue già la replica su zone diverse per impostazione predefinita?

Tuttavia, la documentazione di Aurora indica che Aurora diffonde automaticamente il database tra diverse zone di disponibilità?

Inoltre, qual è la differenza tra uno standby Aurora Multi-AZ e una normale replica Aurora. È che una replica ordinaria può essere letta dall'aumento delle prestazioni mentre non è possibile leggere uno standby?

risposta

28

Aurora replica i dati attraverso tre zone di disponibilità, al livello di archiviazione ... ma l'istanza del server di database, a sua volta, è ancora una macchina virtuale in esecuzione su una singola macchina fisica che si trova in una singola zona di disponibilità.

Il livello di archiviazione Aurora si trova all'esterno di tale istanza ed è in grado di consentire l'accesso ininterrotto senza perdita di dati, anche in caso di perdita di fino a due AZ, ma la perdita della zona contenente l'istanza di db sarà comunque causare un'interruzione per te, se hai una sola istanza Aurora nel tuo cluster (1 master, 0 repliche). La perdita di un'intera zona di disponibilità è una di quelle cose che è altamente improbabile ma non impossibile. La tua istanza di db è ancora un singolo punto di errore quando ne hai uno solo.

Multi-AZ tiene conto di un'istanza di database ridondante completa, in un'AZ diversa, che subentrerà automaticamente per il primario entro un minuto, se funziona come previsto, in caso di perdita di AZ che ospita il primario istanza o un errore catastrofico dell'istanza primaria. È una seconda macchina virtuale, su una seconda macchina fisica, in una seconda zona di disponibilità. È sempre in esecuzione, ma non puoi accedervi. È in background, gestito e monitorato dall'infrastruttura RDS, ma è accessibile solo a te in caso di errore dell'istanza primaria. La macchina secondaria può anche essere utilizzata per ridurre i tempi di fermo in caso di un aggiornamento del software o di un evento di manutenzione sul primario. Quando si verifica il failover, se si utilizza il DNS per connettersi al proprio database (come si dovrebbe), si scoprirà che la voce DNS viene automaticamente indirizzata al secondario.

Contrastare ciò con una replica di lettura, che è sempre accessibile e può quindi fornire un significativo vantaggio in termini di prestazioni, consentendo lo scarico delle letture. Il superamento di una replica implica la sua promozione per diventare un master autonomo (che lo scollega definitivamente dal proprio master precedente) e riconfigurare l'applicazione per utilizzare l'endpoint alternativo. Ciò, ovviamente, è ancora più rapido del ripristino da un errore nel master utilizzando un'istantanea specifica per creare un'istanza master sostitutiva.

https://aws.amazon.com/rds/details/multi-az/

+2

Grazie. Questo mi ha tolto un sacco di incomprensioni da parte mia. – Paul

+0

Questo è sbagliato. Esistono più istanze per ciascuna replica di aurora. Consulta http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html – Ouroboros

+2

@PPrasad stai mal interpretando i documenti. Le repliche Auroras * "consentono di scalare il carico di lavoro di lettura dei dati su più istanze replicate per migliorare sia le prestazioni delle letture dei dati sia aumentare la disponibilità dei dati nel cluster Aurora DB" * non significa ** ogni ** la replica è composta da più istanze; "istanze replicate multiple" significa solo che è possibile creare più repliche. Una replica = un'istanza. –

13

bagagli in Aurora è replicato attraverso tre zone disponibilità. Il nodo head del database è una singola istanza. Quindi, mentre i tuoi dati sono distribuiti su più target, il nodo principale non lo è.

Quando si attiva una distribuzione multi-AZ, viene creata una replica di lettura Aurora disponibile come destinazione di failover. Tutte le repliche di lettura di Aurora create dall'utente (fino a un massimo di 15 in questo momento) sono disponibili anche come destinazioni di failover.

Non c'è alcuna differenza significativa tra Multi-AZ e altre repliche Aurora. Questa è principalmente una semplificazione nell'interfaccia utente per i clienti abituati a utilizzare Multi-AZ per altri motori RDS.