Come faccio a risolvere i problemi quando aggiorno il mio cluster Amazon MSK?

5 minuti di lettura
0

Devo risolvere dei problemi quando aggiorno il mio cluster Streaming gestito da Amazon per Apache Kafka (Amazon MSK).

Risoluzione

Considerazioni e buone pratiche

Tieni presente quanto segue prima di aggiornare il tuo cluster Amazon MSK:

  • Assicurati di impostare il fattore di replica per il cluster su un valore pari o superiore a 3. L'impostazione di un fattore di replica pari a 1 potrebbe portare alla creazione di partizioni offline durante un aggiornamento continuo. L'impostazione di un fattore di replica pari a 2 potrebbe comportare la perdita di dati.
  • Imposta un numero minimo di repliche sincronizzate (minISR) su un valore pari o inferiore a (fattore di replica - 1). Un valore minISR uguale al fattore di replica potrebbe impedire la produzione sul cluster durante un aggiornamento continuo. Un minISR di 2 consente di rendere disponibili argomenti replicati a tre vie quando una replica è offline.
  • Assicurati che le stringhe di connessione del client includano almeno un broker per ciascuna zona di disponibilità. La presenza di più broker nella stringa di connessione di un cliente consente il failover quando un broker specifico è offline per un aggiornamento.
  • Prima di aggiornare la configurazione di un cluster, assicurati che il cluster sia nello stato ATTIVO.
  • È consigliabile aggiornare il cluster durante i periodi di traffico ridotto. Il tempo necessario per aggiornare la versione di Apache Kafka dipende dal numero di broker nel cluster.
  • Non è possibile apportare altri aggiornamenti al cluster quando si aggiorna la versione del cluster. Puoi comunque produrre e consumare dal cluster durante l'aggiornamento.
  • Non vi è alcun rischio di perdita dati durante un aggiornamento, eccetto gli argomenti con una replica insufficiente (ad esempio: argomenti con un fattore di replica inferiore a 3). Anche in questa situazione, le partizioni sono nuovamente disponibili dopo che i broker sono online.
  • Puoi aggiornare la versione Apache Kafka del tuo cluster Amazon MSK tramite la console Amazon MSK o l'interfaccia della linea di comando AWS (AWS CLI).
  • Puoi aggiornare il tuo cluster Amazon MSK a una versione più recente di Apache Kafka. Non puoi aggiornarlo a una versione precedente.
  • Amazon MSK aggiorna solo il software del server e non aggiorna i tuoi client. Pertanto, quando aggiorni il cluster, conferma di poter utilizzare le funzioni della nuova versione di Apache Kafka con la versione del software client.
  • L'aggiornamento del tipo di istanza non aggiorna la versione del cluster.

Monitoraggio dell'aggiornamento

Quando crei un cluster Amazon MSK, specifica quale versione di Apache Kafka ti serve nel cluster. Puoi anche aggiornare il cluster a una versione più recente di Apache Kafka dopo aver creato il cluster eseguendo le seguenti operazioni:

  1. Apri la console Amazon MSK.
  2. Scegli il cluster che vorresti aggiornare.
  3. Nella scheda Proprietà, scegli Aggiorna nella sezione Versione di Apache Kafka.

Per ulteriori informazioni, consulta Aggiornare la versione di Apache Kafka.

È possibile monitorare l'avanzamento dell'aggiornamento nella scheda Operazioni del cluster. È possibile monitorare ogni fase dell'aggiornamento, ad esempio inizializzazione dell'aggiornamento, aggiornamento della versione di Apache Kafka e Finalizzazione dell'aggiornamento, da questa scheda. Quando l'aggiornamento raggiunge il 17%, potrebbero essere necessarie diverse ore per completarlo. Tieni presente che Amazon MSK esegue l'aggiornamento su base continuativa. Un broker viene rimosso dal cluster e la sua versione Kafka viene aggiornata. Questo broker si ricongiunge quando il broker successivo viene eliminato. Questo processo viene seguito fino all'aggiornamento dell'ultimo broker con la nuova versione di Kafka.

Risoluzione degli errori più comuni

Errore durante l'aggiornamento della configurazione del cluster. Si è verificato un problema durante l'aggiornamento della configurazione del cluster. Se il problema persiste, contatta il Supporto AWS. Il numero di partizioni per broker è superiore al limite consigliato. Aggiungi altri broker e riorganizza le partizioni per broker in modo che siano inferiori al limite consigliato, quindi riprova la richiesta.

-oppure-

L'aggiornamento è bloccato nella fase "Inizializzazione dell'aggiornamento"

Questo errore si verifica quando il numero di partizioni per broker supera il valore consigliato. La gestione delle partizioni su un broker è un carico di lavoro che richiede molte risorse. Un numero di partizioni superiore al limite consigliato potrebbe mettere a dura prova le risorse disponibili nel cluster. In questa situazione, non è possibile eseguire nessuna delle seguenti operazioni sul cluster:

  • Aggiornare la configurazione del cluster
  • Aggiornare la versione di Apache Kafka per il cluster
  • Aggiornare il cluster a un tipo di broker più piccolo

Per risolvere questo errore, prova quanto segue:

  • Aumenta il numero di broker all'interno del cluster. Quindi, riassegna le partizioni per ridurre il numero di partizioni per broker. Usa le metriche di Amazon CloudWatch per conoscere il numero di partizioni per broker. Il numero di partizioni è il numero totale di partizioni di argomento per broker, incluse le repliche. Per impostazione predefinita, il numero di partizioni per argomento è 1 e il fattore di replica è 3 per un cluster 3-AZ. Pertanto, sono disponibili 3 partizioni per argomento perché il fattore di replica 3 include la partizione principale. Per spostare le partizioni su diversi broker sullo stesso cluster, puoi utilizzare lo strumento di riassegnazione delle partizioni denominato kafka-reassign-partitions.sh.
  • Riduci il numero di partizioni eliminando gli argomenti non utilizzati. È possibile utilizzare il seguente comando per visualizzare tutti gli argomenti del cluster insieme al numero di partizioni. Assicurati di configurare un client Apache Kafka su un computer Amazon Elastic Compute Cloud (Amazon EC2) prima di eseguire il comando.
bin/kafka-topics.sh —bootstrap-server localhost:9092 —describe —topic test
AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa