Gestione del cluster di database Amazon Neptune - Amazon Neptune

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Gestione del cluster di database Amazon Neptune

Neptune esegue periodicamente la manutenzione di tutte le risorse che utilizza, incluso:

  • Sostituzione dell'hardware sottostante, in base alle esigenze. Ciò avviene in background, senza che l'utente esegua alcuna azione, e generalmente non influenza le operazioni.

  • Aggiornamento del sistema operativo sottostante. Gli aggiornamenti del sistema operativo delle istanze del cluster di database vengono effettuati per migliorare le prestazioni e la sicurezza, pertanto è in genere consigliabile completarli il prima possibile. In genere, gli aggiornamenti richiedono circa 10 minuti. Gli aggiornamenti del sistema operativo non modificano la versione del motore database o la classe istanza database di un'istanza database.

    In genere, è preferibile aggiornare prima le istanze reader in un cluster di database, quindi l'istanza writer. L'aggiornamento contemporaneo delle istanze reader e writer può causare tempi di inattività in caso di failover. Tieni presente che il backup delle istanze database non viene eseguito automaticamente prima di un aggiornamento del sistema operativo, pertanto assicurati di eseguire backup manuali prima di applicare un aggiornamento del sistema operativo.

  • Aggiornamento del motore di database Neptune. Neptune rilascia regolarmente una serie di aggiornamenti del motore per introdurre nuove funzionalità e miglioramenti e per correggere bug.

Numeri di versione del motore

Numerazione delle versioni prima del rilascio del motore 1.3.0.0

Prima di novembre 2019, Neptune supportava solo una versione del motore alla volta e i numeri di versione del motore avevano tutti il formato 1.0.1.0.200<xxx>, dove xxx corrispondeva al numero di patch. Tutte le nuove versioni del motore sono state tutte rilasciate come patch alle versioni precedenti.

Nel novembre 2019, Neptune ha iniziato a supportare più versioni, consentendo ai clienti un migliore controllo sui rispettivi percorsi di aggiornamento. Di conseguenza, la numerazione dei rilasci del motore è cambiata.

A partire da novembre 2019 fino al rilascio del motore 1.3.0.0, i numeri di versione del motore sono composti da 5 parti. Utilizza il numero di versione 1.0.2.0.R2 come esempio:

  • La prima parte è sempre 1.

  • La seconda parte, 0 in 1.0.2.0.R2, è il numero della versione principale del database.

  • La terza e la quarta parte, 2.0 in 1.0.2.0.R2, sono entrambe numeri di versione secondari.

  • La quinta parte (R2 in 1.0.2.0.R2) è il numero della patch.

La maggior parte degli aggiornamenti erano aggiornamenti della patch e la distinzione tra aggiornamenti della patch e aggiornamenti della versione secondaria non era sempre chiara.

Numerazione delle versioni a partire dal rilascio del motore 1.3.0.0

A partire dal rilascio del motore 1.3.0.0, Neptune ha cambiato il modo in cui gli aggiornamenti del motore vengono numerati e gestiti.

I numeri di versione del motore sono ora composti da quattro parti, ciascuna delle quali corrisponde a un tipo di rilascio, come segue:

    versione-prodotto.versione-principale.versione-secondaria.versione-patch

Le modifiche non irreversibili, tipo quelle che erano state rilasciate in precedenza come patch, vengono ora rilasciate come versioni secondarie che è possibile gestire utilizzando l'impostazione dell'istanza AutoMinorVersionUpgrade.

Ciò significa che, se lo si desidera, è possibile ricevere una notifica ogni volta che viene rilasciata una nuova versione secondaria, sottoscrivendo l'abbonamento all'evento RDS-EVENT-0156 (consulta Sottoscrizione alle notifiche eventi Neptune).

I rilasci delle patch vengono ora riservati per correzioni mirate urgenti e sono numerati utilizzando l'ultima parte del numero di versione (*.*.*.1, *.*.*.2 e così via).

Tipi diversi di rilasci del motore in Amazon Neptune

I quattro tipi di rilascio del motore che corrispondono alle quattro parti di un numero di versione del motore sono i seguenti:

  • Versione del prodotto: cambia solo se il prodotto subisce modifiche radicali, fondamentali in termini di funzionalità o interfaccia. La versione corrente del prodotto Neptune è 1.

  • Versione principale: le versioni principali introducono nuove importanti funzionalità e modifiche speciali e generalmente hanno una durata utile di almeno due anni.

  • Versione secondaria: le versioni secondarie possono contenere nuove funzionalità, miglioramenti e correzioni di bug, ma non contengono modifiche speciali. Puoi scegliere se applicarle o meno automaticamente durante la successiva finestra di manutenzione e puoi anche scegliere di ricevere una notifica ogni volta che ne viene rilasciata una.

  • Versione della patch: le versioni delle patch vengono rilasciate solo per risolvere correzioni di bug urgenti o aggiornamenti di sicurezza critici. Raramente contengono modifiche speciali e vengono applicate automaticamente durante la finestra di manutenzione successiva al loro rilascio.

Aggiornamenti della versione principale di Amazon Neptune

Un aggiornamento della versione principale in genere introduce una o più nuove funzionalità importanti e spesso contiene modifiche speciali. Di solito ha una durata del supporto di circa due anni. Le versioni principali di Neptune sono elencate in Rilasci del motore, insieme alla data di rilascio e alla durata stimata.

Gli aggiornamenti della versione principale sono del tutto facoltativi finché la versione principale che si sta utilizzando non raggiunge il suo fine vita. Se si sceglie di eseguire l'aggiornamento a una nuova versione principale, occorre installare manualmente la nuova versione utilizzando la AWS CLI o la console Neptune come descritto in Aggiornamenti di una versione principale.

Se la versione principale che si sta utilizzando raggiunge il suo fine vita, tuttavia, si riceverà una notifica con la richiesta di eseguire l'aggiornamento a una versione principale più recente. Quindi, se non si effettua l'aggiornamento entro un periodo di tolleranza dopo la notifica, un aggiornamento alla versione principale più recente viene pianificato automaticamente durante la finestra di manutenzione successiva. Per ulteriori informazioni, consulta Durata della versione del motore.

Aggiornamenti della versione secondaria di Amazon Neptune

La maggior parte degli aggiornamenti del motore Neptune sono aggiornamenti della versione secondaria. Si verificano abbastanza frequentemente e non contengono modifiche speciali.

Se il campo AutoMinorVersionUpgrade è impostato su true nell'istanza writer (primaria) del cluster di database, gli aggiornamenti della versione secondaria vengono applicati automaticamente a tutte le istanze del cluster di database durante la finestra di manutenzione successiva dopo che vengono rilasciati.

Se il campo AutoMinorVersionUpgrade è stato impostato su false nell'istanza writer del cluster di database, vengono applicati solo se installi in maniera esplicita.

Nota

Gli aggiornamenti delle versioni secondarie sono autonomi (non dipendono da aggiornamenti precedenti della versione secondaria alla stessa versione principale) e cumulativi (contengono tutte le funzionalità e le correzioni introdotte negli aggiornamenti precedenti della versione secondaria). Ciò significa che è possibile installare qualsiasi aggiornamento della versione secondaria specificato a prescindere che siano stati installati quelli precedenti.

È facile tenere traccia dei rilasci della versione secondaria sottoscrivendo un abbonamento all'evento RDS-EVENT-0156 (consulta Sottoscrizione alle notifiche eventi Neptune). Ogni volta che viene rilasciata una nuova versione secondaria, si riceverà una notifica.

Inoltre, a prescindere che si sottoscriva un abbonamento alle notifiche, è sempre possibile controllare quali aggiornamenti sono in sospeso.

Aggiornamenti della versione della patch di Amazon Neptune

In caso di problemi di sicurezza o altri difetti gravi che influenzano l'affidabilità dell'istanza, Neptune distribuisce patch obbligatorie. Queste vengono applicate a tutte le istanze del cluster di database durante la successiva finestra di manutenzione senza alcun intervento da parte dell'utente.

Un rilascio patch viene implementato solo quando i rischi di non implementarlo superano i rischi e i tempi di inattività associati alla sua implementazione. I rilasci patch sono poco frequenti (in genere una volta ogni pochi mesi) e talvolta richiedono una parte considerevole della finestra di manutenzione.

Pianificazione della durata della versione principale del motore Amazon Neptune

Le versioni del motore Neptune raggiungono quasi sempre la fine del loro ciclo di vita al termine di un trimestre di calendario. Le eccezioni si verificano solo quando sorgono importanti problemi di sicurezza o disponibilità.

Quando una versione del motore raggiunge la fine del ciclo di vita, ti verrà richiesto di aggiornare il database Neptune a una versione più recente.

In generale, le versioni del motore Neptune continueranno a essere disponibili come segue:

  • Versioni secondarie del motore: le versioni secondarie del motore rimangono disponibili per almeno sei mesi dopo il rilascio.

  • Versioni principali del motore: le versioni principali del motore rimangono disponibili per almeno 12 mesi dopo il rilascio.

Almeno tre mesi prima che una versione del motore raggiunga la fine del ciclo di vita, AWS invierà una notifica e-mail automatica all'indirizzo e-mail associato al tuo account AWS e pubblicherà lo stesso messaggio sul Dashboard AWS Health. In questo modo avrai tempo per pianificare e prepararti per l'aggiornamento.

Quando una versione del motore raggiunge la fine del ciclo di vita, non sarà più possibile creare nuovi cluster o istanze utilizzando tale versione e la scalabilità automatica non potrà più creare istanze utilizzando tale versione.

Una versione del motore che raggiunge effettivamente la fine del ciclo di vita verrà aggiornata automaticamente durante una finestra di manutenzione. Il messaggio che ti verrà inviato tre mesi prima della fine del ciclo di vita della versione del motore conterrà informazioni dettagliate sull'aggiornamento automatico, inclusa la versione implementata con l'aggiornamento automatico, l'impatto sui tuoi cluster database e le azioni consigliate.

Importante

È tua responsabilità mantenere aggiornate le versioni del motore di database. AWS consiglia a tutti i clienti di aggiornare i propri database alla versione più recente del motore per usufruire delle più recenti misure di sicurezza, privacy e disponibilità. Se utilizzi il database su un motore o un software non supportato oltre la data di obsolescenza ("motore legacy"), aumenterà la probabilità del verificarsi di problemi di sicurezza, privacy e operativi, inclusi tempi di inattività.

Il funzionamento del database su qualsiasi motore è soggetto all'accordo che disciplina l'utilizzo dei Servizi AWS. I motori legacy non sono disponibili a livello generale. AWS non fornisce più il supporto per il motore legacy e AWS potrebbe imporre limiti all'accesso o all'uso di qualsiasi motore legacy in qualunque momento, se AWS determina che il motore legacy rappresenta un rischio per la sicurezza o la responsabilità o un rischio di danno per i Servizi AWS, le sue affiliate o terze parti. La decisione dell'utente di continuare a utilizzare il proprio contenuto in un motore legacy potrebbe comportare l'indisponibilità, il danneggiamento o l'irrecuperabilità del contenuto dell'utente. I database in esecuzione su un motore Legacy sono soggetti alle eccezioni dell'Accordo sul livello di servizio (SLA).

I DATABASE E IL SOFTWARE CORRELATO IN ESECUZIONE SU UN MOTORE LEGACY CONTENGONO BUG, ERRORI, DIFETTI E/O COMPONENTI DANNOSI. DI CONSEGUENZA, E NONOSTANTE QUALSIASI DISPOSIZIONE CONTRARIA CONTENUTA NELL'ACCORDO O NEI TERMINI DEL SERVIZIO, AWS FORNISCE IL MOTORE LEGACY "COSÌ COM'È".

Installazione manuale degli aggiornamenti del motore Neptune

Installazione di un aggiornamento della versione principale del motore

Le release del motore principali devono essere sempre installate manualmente. Per ridurre al minimo i tempi di inattività e concedere tempo sufficiente per i test e la convalida, il modo migliore per installare una nuova versione principale consiste generalmente nell'utilizzare la soluzione di implementazione blu/verde Neptune.

In alcuni casi puoi anche utilizzare il modello AWS CloudFormation utilizzato per creare il cluster di database per installare un aggiornamento della versione principale (consulta Utilizzo di un AWS CloudFormation modello per aggiornare la versione del motore del cluster Neptune DB).

Se desideri installare immediatamente un aggiornamento della versione principale, puoi utilizzare un comando CLI come il seguente:

aws neptune modify-db-cluster \ --db-cluster-identifier (identifier for your neptune cluster) \ --engine neptune \ --engine-version (the new engine version) \ --apply-immediately

Assicurati di specificare la versione del motore che desideri aggiornare. In caso contrario, il motore potrebbe essere aggiornato a una versione che non è la più recente o quella che ti aspetti.

Invece di --apply-immediately, puoi specificare --no-apply-immediately.

Se il cluster utilizza un gruppo di parametri del cluster personalizzato, assicurati di specificarlo utilizzando questo parametro:

--db-cluster-parameter-group-name (name of the custom DB cluster parameter group)

Analogamente, se eventuali istanze del cluster utilizzano un gruppo di parametri database personalizzato, assicurati di specificarlo utilizzando questo parametro:

---db-instance-parameter-group-name (name of the custom instance parameter group)

Installazione di un aggiornamento della versione minore del motore utilizzando la AWS Management Console

Per eseguire un aggiornamento della versione minore utilizzando la console Neptune
  1. Accedi alla Console di gestione AWS e apri la console Amazon Neptune all'indirizzo https://console.aws.amazon.com/neptune/home.

  2. Nel riquadro di navigazione, scegli Database, quindi seleziona il cluster di database che desideri modificare.

  3. Scegli Modifica.

  4. In Specifiche dell'istanza, scegli la nuova versione per cui eseguire l'aggiornamento.

  5. Seleziona Successivo.

  6. Se desideri applicare le modifiche immediatamente, scegli Applica immediatamente.

  7. Scegli Invia per aggiornare il cluster di database.

Installazione di un aggiornamento della versione minore del motore utilizzando la AWS CLI

Puoi utilizzare un comando simile al seguente per eseguire un aggiornamento della versione secondaria senza attendere la finestra di manutenzione successiva:

aws neptune modify-db-cluster \ --db-cluster-identifier (your-neptune-cluster) \ --engine-version (new-engine-version) \ --apply-immediately

Se esegui l'aggiornamento manualmente utilizzando la AWS CLI, assicurati di includere la versione del motore per cui eseguire l'aggiornamento. In caso contrario, il motore potrebbe essere aggiornato a una versione che non è la più recente o quella che ti aspetti.

Aggiornamento alla versione del motore 1.2.0.0 o successiva da una versione precedente alla versione 1.2.0.0

Nella release del motore 1.2.0.0 sono state introdotte numerose modifiche significative che rendono l'operazione di aggiornamento da una versione precedente più complessa del solito:

  • Il rilascio del motore 1.2.0.0 ha introdotto un nuovo formato per i gruppi di parametri personalizzati e i gruppi di parametri del cluster personalizzati. Di conseguenza, se si esegue l'aggiornamento da una versione del motore precedente alla 1.2.0.0 alla versione del motore 1.2.0.0 o successiva, è necessario creare nuovamente tutti i gruppi di parametri personalizzati e i gruppi di parametri del cluster personalizzati esistenti utilizzando la famiglia di gruppi di parametri neptune1.2. I rilasci precedenti utilizzavano la famiglia di gruppi di parametri neptune1 e tali gruppi di parametri non funzionano con il rilascio 1.2.0.0 e successivi. Per ulteriori informazioni, consulta Gruppi di parametri di Amazon Neptune.

  • Il rilascio del motore 1.2.0.0 ha inoltre introdotto un nuovo formato per i log di annullamento. Di conseguenza, tutti i log di annullamento creati da una versione precedente del motore devono essere rimossi e la metrica di CloudWatch UndoLogsListSize deve scendere a zero prima di poter avviare aggiornamenti da una versione precedente alla 1.2.0.0. Se sono presenti troppi record del log di annullamento (200.000 o più) quando si tenta di avviare un aggiornamento, il tentativo di aggiornamento potrebbe raggiungere il timeout in attesa del completamento della rimozione dei log di annullamento.

    È possibile accelerare la velocità di rimozione aggiornando l'istanza di scrittura del cluster, ovvero dove si verifica la rimozione. Se si esegue questa operazione prima di provare a eseguire l'aggiornamento, è possibile ridurre il numero di log di annullamento prima dell'avvio. L'aumento delle dimensioni dell'istanza di scrittura a un tipo di istanza 24XL può aumentare la velocità di rimozione fino a oltre un milione di record all'ora.

    Se la metrica UndoLogsListSize di CloudWatch è eccessivamente grande, l'apertura di un caso di supporto può aiutarti a esplorare altre strategie per ridurne le dimensioni.

  • Infine, nel rilascio 1.2.0.0 è stata introdotta una modifica radicale che influisce sul codice precedente che utilizzava il protocollo Bolt con l'autenticazione IAM. A partire dal rilascio 1.2.0.0, Bolt necessita di un percorso della risorsa per la firma IAM. In Java l'impostazione del percorso della risorsa ha un aspetto simile al seguente: request.setResourcePath("/openCypher"));. In altri linguaggi, è possibile aggiungere /openCypher all'URI dell'endpoint. Per esempi, consulta Utilizzo del protocollo Bolt.