Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Migrer de KCL 3.x vers le format de tableau unique
Si vous exécutez KCL 3.x avec les trois tables de métadonnées DynamoDB (table des baux, table des indicateurs du personnel et table des états des coordinateurs), vous pouvez migrer vers un format de table unique pour consolider toutes les métadonnées dans la table de location.
Conditions préalables
-
Votre application exécute KCL 3.x avec les trois tables de métadonnées.
-
Votre application est stable et tous les travailleurs sont en bonne santé.
-
Votre application a terminé la migration vers KCL 3.x et n'est pas configurée.
CoordinatorConfig.clientVersionConfigN'effectuez pas la migration de la table et la migration de la version client de 2.x vers 3.x en même temps.
Pour migrer de KCL 3.x vers le format de tableau unique, suivez le processus de déploiement en deux étapes
-
Phase 1 : mettez à jour la dépendance de votre projet vers KCL 3.5 ou version ultérieure. Déployez avec
migrateAllEntitiesToLeaseTabledéfini surfalse(valeur par défaut). Ce déploiement installe le nouveau code qui prend en charge le format de table unique mais n'active pas la migration. -
Attendez que le déploiement soit terminé pour tous les travailleurs. Surveillez l'entrée de l'État du
TableMigration3.5coordinateur jusqu'àTableMigrationStatusla limiteDEPLOYED. Vérifiez qu'il n'y a pas de régressions et attendez un temps de cuisson suffisant. -
Phase 2 : redéployez avec
migrateAllEntitiesToLeaseTableset totrue. Ce déploiement lance la migration vers le format de tableau unique. -
Surveillez le
TableMigrationStatus. Le travailleur leader fait avancer l'état en passant par DEPLOYED, PENDING et COMPLETE. -
Une fois que le statut est TERMINÉ, vérifiez qu'il n'y a pas de régressions et prévoyez un temps de cuisson supplémentaire pour vous assurer qu'aucune annulation n'est nécessaire.
-
Supprimez manuellement les anciennes métriques des travailleurs et les tables d'état des coordinateurs. KCL ne supprime pas ces tables automatiquement ; il arrête simplement de les utiliser. Si vous avez configuré
CoordinatorConfig.coordinatorStateTableConfigouLeaseManagementConfig.workerUtilizationAwareAssignmentConfig.workerMetricsTableConfig, vous pouvez supprimer ces configurations car elles sont obsolètes.
Important
N'annulez pas votre application une fois que la migration a atteint l'état COMPLET. Une fois TERMINÉ, l'application fonctionne exclusivement en mode table unique. Même une restauration du code vers la phase 1 ne permet pas de revenir à plusieurs tables : la configuration est ignorée et l'application continue à utiliser uniquement la table de bail.
Pour plus de détails sur les états de migration et les options de restauration, consultezFormat de tableau unique pour KCL.