Abilita i rollback di sistema per la tua applicazione Managed Service for Apache Flink - Servizio gestito per Apache Flink

Il servizio gestito da Amazon per Apache Flink era precedentemente noto come Analisi dei dati Amazon Kinesis per Apache Flink.

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à.

Abilita i rollback di sistema per la tua applicazione Managed Service for Apache Flink

Con la funzionalità di rollback del sistema, puoi ottenere una maggiore disponibilità dell'applicazione Apache Flink in esecuzione su Amazon Managed Service per Apache Flink. L'attivazione di questa configurazione consente al servizio di ripristinare automaticamente l'applicazione alla versione precedentemente in esecuzione quando un'azione come o si verifica un bug nel codice o nella configurazione. UpdateApplication autoscaling

Nota

Per utilizzare la funzionalità di rollback del sistema, è necessario effettuare l'attivazione aggiornando l'applicazione. Per impostazione predefinita, le applicazioni esistenti non utilizzeranno automaticamente il rollback del sistema.

Come funziona

Quando avvii un'operazione applicativa, ad esempio un'azione di aggiornamento o di scalabilità, Amazon Managed Service for Apache Flink tenta innanzitutto di eseguire tale operazione. Se rileva problemi che impediscono il successo dell'operazione, come bug nel codice o autorizzazioni insufficienti, il servizio avvia automaticamente un'operazione. RollbackApplication

Il rollback tenta di ripristinare l'applicazione alla versione precedente eseguita correttamente, insieme allo stato dell'applicazione associata. Se il rollback ha esito positivo, l'applicazione continua a elaborare i dati con tempi di inattività minimi utilizzando la versione precedente. Se anche il rollback automatico fallisce, Amazon Managed Service for Apache Flink trasferisce l'applicazione allo READY stato, in modo che tu possa intraprendere ulteriori azioni, tra cui correggere l'errore e riprovare l'operazione.

È necessario attivare l'utilizzo dei rollback automatici del sistema. Puoi abilitarlo utilizzando la console o API per tutte le operazioni sull'applicazione da questo momento in poi.

Il seguente esempio di richiesta di UpdateApplication azione abilita i rollback del sistema per un'applicazione:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 1, "ApplicationConfigurationUpdate": { "ApplicationSystemRollbackConfigurationUpdate": { "RollbackEnabledUpdate": "true" } } }

Esamina gli scenari comuni per il rollback automatico del sistema

I seguenti scenari illustrano i vantaggi dei rollback automatici del sistema:

  • Aggiornamenti dell'applicazione: se aggiorni l'applicazione con un nuovo codice che presenta bug durante l'inizializzazione del job Flink tramite il metodo principale, il rollback automatico consente di ripristinare la versione funzionante precedente. Altri scenari di aggiornamento in cui i rollback del sistema sono utili includono:

    • Se l'applicazione viene aggiornata per essere eseguita con un parallelismo superiore a. maxParallelism

    • Se l'applicazione viene aggiornata per essere eseguita con sottoreti errate per un'VPCapplicazione che causa un errore durante l'avvio del processo Flink.

  • Aggiornamenti della versione di Flink: quando si esegue l'aggiornamento a una nuova versione di Apache Flink e l'applicazione aggiornata presenta un problema di compatibilità con le snapshot, il rollback del sistema consente di tornare automaticamente alla versione precedente di Flink.

  • AutoScaling: Quando l'applicazione è scalabile ma riscontra problemi di ripristino da un punto di salvataggio, a causa della mancata corrispondenza dell'operatore tra l'istantanea e il grafico del lavoro Flink.

Usa APIs l'operazione per i rollback del sistema

Per offrire una migliore visibilità, Amazon Managed Service per Apache Flink ne ha due APIs relative alle operazioni delle applicazioni che possono aiutarti a tenere traccia degli errori e dei relativi rollback di sistema.

ListApplicationOperations

Questo API elenca tutte le operazioni eseguite sull'applicazione, incluse, UpdateApplication MaintenanceRollbackApplication, e altre in ordine cronologico inverso. L'esempio seguente di richiesta di ListApplicationOperations azione elenca le prime 10 operazioni dell'applicazione per l'applicazione:

{ "ApplicationName": "MyApplication", "Limit": 10 }

Il seguente esempio di richiesta ListApplicationOperations aiuta a filtrare l'elenco in base agli aggiornamenti precedenti dell'applicazione:

{ "ApplicationName": "MyApplication", "operation": "UpdateApplication" }

DescribeApplicationOperation

Ciò API fornisce informazioni dettagliate su un'operazione specifica elencata daListApplicationOperations, incluso il motivo dell'errore, se applicabile. L'esempio seguente di richiesta di DescribeApplicationOperation azione elenca i dettagli per un'operazione specifica dell'applicazione:

{ "ApplicationName": "MyApplication", "OperationId": "xyzoperation" }

Per informazioni sulla risoluzione dei problemi, consulta Best practice per il rollback del sistema.