Réinitialisation de l’environnement sur Adobe Commerce sur l’infrastructure cloud
Cet article présente différents scénarios de restauration d’un environnement sur Adobe Commerce sur l’infrastructure cloud.
Choisissez la méthode la plus adaptée à votre cas :
- Si vous avez planifié une activité (déploiement ou mise à niveau planifié) - Scénario 1 : activité planifiée).
- Si vous disposez d’un instantané valide - Scénario 2 : restaurer un instantané.
- Si vous disposez d’une version stable, mais pas d’instantané valide - Scénario 3 : pas d’instantané, pas de rendu stable (connexion SSH disponible).
- Si la version est endommagée et que vous n’avez pas d’instantané valide - Scénario 4 : aucun instantané ; création interrompue (aucune connexion SSH).
Scénario 1 : activité planifiée
Avec un déploiement ou une mise à niveau planifié, le Rollback le plus simple et recommandé serait que le commerçant, dans le cadre de vos préparatifs, effectue les opérations suivantes :
Cinq jours avant les activités de mise à niveau/déploiement :
- Vérifiez la taille de la base de données active.
- Vérifiez que vous disposez de suffisamment d'espace disque sur
/data/exports
pour contenir un Database Dump. Si vous ne disposez pas de suffisamment d’espace disque, supprimez les données indésirables ou créez un cas de support et demandez au disque d’être développé.
Le jour des modifications :
- Placez le site web dans Maintenance Mode.
Pour en savoir plus sur Activer ou désactiver Maintenance Mode dans notre guide d’utilisation et Maintenance Mode options de mise à niveau dans notre guide de mise à niveau. - Désactivez les tâches cron. Pour en savoir plus sur la désactivation des tâches cron, consultez notre guide des propriétés crons.
- Prenez un Database Dump local.
Si un Rollback est requis :
- Si des applications telles que MariaDB ont été mises à niveau dans le cadre de cette activité planifiée, demandez d’abord que cette application soit réinstallée vers une version précédente.
- Rollback La base de données utilise le Database Dump local et réimportez-le dans MariaDB.
- Rollback le code via Git vers une version de travail précédente.
L'utilisation de Snapshots n'est pas la méthode recommandée pour la mise à niveau/l'activité planifiée rollbacks/restores, car la récupération des données par rapport à un Database Dump local prend beaucoup plus de temps, comme indiqué à l'étape 2 de la section Si un Rollback est requis.
Snapshots ne sont pas conservés sur le noeud/serveur, ils sont conservés sur un bloc de stockage distinct, et comme ces données doivent être transmises du stockage de bloc sur le réseau à un nouveau disque, le processus prend du temps. Ce nouveau disque est ensuite monté sur le noeud prêt à être récupéré/importé sur le disque d’origine connecté au noeud/serveur.
Lorsque vous comparez cela à l’importation d’un Database Dump local, les données sont déjà récupérables sur le noeud/serveur. Par conséquent, beaucoup de temps est enregistré, car seul un Database Import est nécessaire.
Scénario 2 : restauration d’un instantané
Lecture : Restaurer un instantané sur Adobe Commerce sur l’infrastructure cloud dans notre documentation destinée aux développeurs.
Lecture : Créez un instantané dans notre documentation destinée aux développeurs.
Scénario 3 : aucun instantané, version stable (connexion SSH disponible)
Cette section explique comment réinitialiser un environnement lorsque vous n’avez pas créé d’instantané, mais que vous pouvez accéder à l’environnement via SSH.
Les étapes sont les suivantes :
- Désactivez la gestion de la configuration.
- Désinstallez le logiciel Adobe Commerce.
- Réinitialisez la branche git.
Après avoir effectué les étapes suivantes :
- Votre installation Adobe Commerce retourne à son état Vanilla (base de données restaurée, configuration de déploiement supprimée, répertoires supprimés sous
var
effacés). - Votre branche git a été réinitialisée à l’état souhaité par le passé.
Lisez les étapes détaillées ci-dessous.
Étape 0 (condition préalable requise) : supprimez config.php pour désactiver Configuration Management
Nous devons désactiver Configuration Management afin qu’elle n’applique pas automatiquement les paramètres de configuration précédents lors du déploiement.
Pour désactiver Configuration Management, assurez-vous que votre répertoire /app/etc/
ne contient pas le fichier config.php
.
Pour supprimer le fichier de configuration, procédez comme suit :
- SSH à votre environnement.
- Supprimez le fichier de configuration :
rm app/etc/config.php
En savoir plus sur Configuration Management :
- Réduisez le temps d’arrêt du déploiement sur Adobe Commerce sur l’infrastructure cloud dans notre base de connaissances d’assistance.
- Gestion des configurations des paramètres de magasin dans notre documentation destinée aux développeurs.
Étape 1 : désinstallation du logiciel Adobe Commerce avec la commande setup:uninstall
La désinstallation du logiciel Adobe Commerce supprime et restaure la base de données, supprime la configuration de déploiement et efface les répertoires sous var
.
Lecture : Désinstallez le logiciel Adobe Commerce dans notre documentation destinée aux développeurs.
Pour désinstaller le logiciel Adobe Commerce, procédez comme suit :
- SSH à votre environnement.
- Exécuter
setup:uninstall
:bin/magento setup:uninstall
- Confirmez la désinstallation.
Le message suivant s’affiche pour confirmer la désinstallation :
[SUCCESS]: Magento uninstallation complete.
Cela signifie que nous avons rétabli notre installation Adobe Commerce (y compris DB) sur son état authentique (Vanilla).
Étape 2 : réinitialisation de la branche git
Avec la réinitialisation de git, nous avons rétabli le code à l’état souhaité dans le passé.
- Cloner l’environnement vers votre environnement de développement local. Vous pouvez copier la commande dans la console cloud :
- Accédez à l’historique des validations. Utilisez
--reverse
pour afficher l’historique dans l’ordre inverse afin de plus de commodité :git log --reverse
- Sélectionnez le hachage de validation sur lequel vous avez été bon. Pour réinitialiser le code à son état authentique (Vanilla), recherchez la toute première validation qui a créé votre branche (environnement).
- Appliquez la réinitialisation difficile git :
git reset --h <commit_hash>
- Modifications push sur le serveur :
git push --force <origin> <branch>
Après avoir effectué ces étapes, notre branche git est réinitialisée et l’ensemble du fichier de modification git est clair. La dernière notification push git déclenche le redéploiement pour appliquer toutes les modifications et réinstaller Adobe Commerce.
Scénario 4 : aucun instantané ; création interrompue (aucune connexion SSH)
Cette section explique comment réinitialiser un environnement lorsqu’il se trouve dans un état critique : la procédure de déploiement ne peut pas réussir à créer une application opérationnelle, rendant ainsi la connexion SSH indisponible.
Dans ce scénario, vous devez d’abord restaurer l’état de fonctionnement de votre application Adobe Commerce à l’aide de la réinitialisation git, puis désinstaller le logiciel Adobe Commerce (pour déposer et restaurer la base de données, supprimer la configuration de déploiement, etc.). Le scénario comprend les mêmes étapes que dans le scénario 3, mais l’ordre des étapes est différent et il existe une autre étape : forcer le redéploiement. Les étapes sont les suivantes :
Une fois ces étapes effectuées, les résultats seront les mêmes que dans le scénario 3.
Étape 4 : forcer le redéploiement
Effectuez une validation (il peut s’agir d’une validation vide, bien que nous ne la recommandions pas) et envoyez-la au serveur pour déclencher le redéploiement :
git commit --allow-empty -m "<message>" && git push <origin> <branch>
En cas d’échec de l’installation:désinstallation, réinitialisez manuellement la base de données
Si l’exécution de la commande setup:uninstall
échoue avec une erreur et ne peut pas être terminée, nous pouvons effacer manuellement la base de données en procédant comme suit :
- SSH à votre environnement.
- Connectez-vous à la base de données MySQL :
mysql -h database.internal
(pour les environnements Pro, voir : Configuration du service MySQL). - Déposez la base de données
main
:drop database main;
- Créez une base de données
main
vide :create database main;
- Supprimez les fichiers de configuration suivants :
config.php
,config.php.bak
,env.php
,env.php.bak
Après avoir réinitialisé la base de données, effectuez une git notification push vers l’environnement pour déclencher le redéploiement et installez Adobe Commerce sur une base de données nouvellement créée. Ou exécutez la commande de redéploiement.