Moderniser
La modernisation du cloud est la pratique d’améliorer les charges de travail cloud existantes pour mieux répondre aux besoins de l’entreprise. Il aligne les charges de travail avec les meilleures pratiques cloud, sans ajouter de nouvelles fonctionnalités.
Préparer l’organisation à la modernisation du cloud
Définissez la modernisation pour votre organisation. Établissez une définition commune qui se concentre sur l’amélioration des charges de travail existantes par le biais de la replatformation, de la refactorisation et de la réarchitecture au sein du cloud, à l’exclusion des nouvelles fonctionnalités ou des réécritures complètes. Communiquez cette définition entre toutes les équipes et les parties prenantes afin d’éviter une mauvaise alignement. Créez une responsabilité partagée entre les équipes de développement, d’opérations, de sécurité et d’architecture avec des rôles clairs et une coordination inter-équipes.
Évaluez la préparation et les compétences de modernisation. Évaluez les fonctionnalités de votre équipe dans les connaissances des services cloud, la maturité DevOps/CI/CD, les modèles d’architecture modernes et les outils de supervision/automatisation. Identifiez les lacunes en matière de compétences et créez des plans pour les traiter par le biais de formations, de certifications, de nouvelles embauches ou d’une expertise externe de Microsoft ou de partenaires afin de garantir l’exécution fluide de la modernisation.
Hiérarchiser les charges de travail à moderniser. Évaluez la valeur métier en évaluant les charges de travail en fonction de leur importance pour le chiffre d’affaires, l’expérience client, la conformité et les dépendances internes. Évaluez les risques techniques en examinant la dette technique, la technologie obsolète, l’effort de maintenance, les problèmes de performances et les limitations de scalabilité. Combinez ces évaluations dans une matrice de priorité pour déterminer les charges de travail à moderniser en premier.
Comprendre comment moderniser. Utilisez Azure Well-Architected Framework pour effectuer des révisions qui identifient les lacunes et génèrent des feuilles de route de modernisation sur cinq piliers : fiabilité, sécurité, optimisation des coûts, excellence opérationnelle et efficacité des performances. Permettre aux équipes de charge de travail de prendre des décisions de modernisation en fournissant le contexte métier et l’autorité de prise de décision dans les limites définies tout en conservant des archivages réguliers pour l’alignement de l’organisation.
Planifier la modernisation de votre cloud
Choisissez une stratégie de modernisation. Effectuez une sélection parmi trois approches principales en fonction de vos besoins spécifiques : replateformer les gains rapides avec des modifications de code minimales (IaaS vers PaaS), refactoriser la modification du code existant pour améliorer la structure et l’optimisation du cloud tout en conservant les fonctionnalités, ou réarchitecte pour redéfinir l’architecture d’application à l’aide de modèles natifs cloud tels que les microservices et serverless. Correspondez à la stratégie aux exigences de chaque composant en tenant compte des objectifs, de la chronologie et des ressources. Évitez la sur-modernisation en mettant en place chaque décision en matière de valeur métier.
Planifier les modernisations en phases. Décomposez les charges de travail complexes en phases logiques pour fournir une valeur incrémentielle et réduire les risques en abordant les blocs gérables. Divisez le travail par composant/couche, priorité/complexité ou fonction métier, en commençant par des changements à faible risque et à valeur élevée pour les gains précoces. Phases restantes de séquence par valeur et dépendances. Définissez des critères de réussite clairs pour chaque phase, y compris les objectifs techniques et les portes de qualité, et adaptez les plans en fonction des résultats et des leçons tirées des phases terminées.
Planifier la gouvernance de la modernisation. Établissez des flux de travail officiels d’approbation des modifications intégrés aux conseils consultatifs de modification existants ou créez des conseils d’examen de modernisation dédiés. Implémentez des blocages de modifications avant et pendant les déploiements majeurs pour stabiliser les environnements. Contrôlez l’étendue du contrôle en exigeant l’évaluation et l’approbation de toutes les modifications proposées tout en maintenant un backlog d’idées différées agréables à avoir.
Définissez votre stratégie de déploiement. Choisissez entre un déploiement sur place pour les modifications à faible risque et réversibles qui peuvent être implémentées pendant les fenêtres de maintenance ou le déploiement parallèle pour des modifications complexes à haut risque nécessitant un temps d’arrêt minimal en exécutant de nouveaux environnements en même temps que les charges de travail existantes. Utilisez des techniques de déploiement progressives telles que les mises en production canary lorsque cela est possible, en commençant par de petits pourcentages d’utilisateurs et en augmentant progressivement en fonction des résultats de surveillance.
Prévoyez d’atténuer les risques de modernisation. Créez des procédures de restauration détaillées pour chaque modification majeure avec des instructions pas à pas, des parties responsables et des délais. Automatisez les restaurations dans la mesure du possible à l’aide d’outils d’infrastructure en tant que code et de déploiements bleu-vert. Assurez-vous que les équipes de support sont en veille pendant et après les déploiements avec des périodes prolongées d’hypercare pour la surveillance.
Sécuriser l’approbation des parties prenantes. Adaptez les propositions de valeur à différents publics (efficacité opérationnelle pour les équipes techniques, résultats métier pour les dirigeants) et documentez des plans structurés avec des jalons clairs et des chronologies. Quantifier la valeur de modernisation avec des métriques spécifiques telles que 20-40% réduction des coûts et 50-80% gains de productivité. Résolvez les risques du projet de manière transparente avec les stratégies d’atténuation et maintenez une communication régulière pour signaler la progression et recueillir des commentaires.
Exécuter des modernisations dans le cloud
Préparez les parties prenantes à la modernisation. Annoncez les planifications de déploiement bien à l’avance pour toutes les parties concernées, y compris les dates clés telles que le blocage des modifications et les fenêtres de mise en ligne. Implémenter des modifications fige les charges de travail sources et dépendantes avec des heures de début et de fin clairement définies. Communiquez les actions finales des utilisateurs et les modifications postérieures au déploiement, notamment les nouvelles URL d’accès et les exigences d’authentification. Coordonnez le personnel de support pour le déploiement avec des heures prolongées et des procédures d’escalade. Définissez des procédures de secours pour les charges de travail critiques avec des solutions de contournement manuelles et des plans d’urgence.
Développez des modernisations dans un environnement hors production. Suivez les principes de Well-Architected Framework lors de l’implémentation à l’aide des recommandations Azure Advisor et des processus de révision architecturale pour valider les décisions de conception. Créez des environnements hors production qui reflètent la production à l’aide des mêmes services Azure à des échelles plus petites ou des niveaux de performances inférieurs. Implémentez les modifications de manière incrémentielle avec le contrôle de code source et CI/CD à l’aide de Git pour toutes les modifications de code et l’infrastructure en tant que scripts de code avec des builds d’intégration continue.
Valider les modifications de modernisation avec les tests. Exécutez des tests unitaires et d’intégration sur tous les composants modifiés à l’aide de pipelines CI et de tests de régression pour éviter d’interrompre les fonctionnalités existantes. Effectuez des tests fonctionnels de bout en bout via des tests d’interface utilisateur automatisés ou de qaïda manuels simulant des flux de travail utilisateur réels. Effectuez des tests d’acceptation des utilisateurs avec les parties prenantes pour capturer des commentaires sur la facilité d’utilisation et les fonctionnalités. Validez les performances à l’aide d’outils de test de charge tels qu’Azure Load Testing à 150% charge attendue. Exécutez des vérifications de validation et de conformité de sécurité à l’aide d’analyses de vulnérabilité et de Microsoft Defender pour cloud. Résolvez tous les problèmes critiques avant le déploiement de production.
Créez une infrastructure réutilisable. Générez l’infrastructure en tant que modèles de code qui peuvent être utilisés pour les futurs déploiements et environnements, ce qui garantit la cohérence et la réduction des erreurs de configuration manuelles dans différents scénarios de déploiement.
Créez une documentation de déploiement. Documentez toutes les procédures de déploiement, les étapes de restauration et les processus de validation pour garantir une exécution cohérente et permettre aux membres de l’équipe d’effectuer des déploiements de manière sécurisée et fiable.
Déployer la modernisation. Pour les déploiements sur place, planifiez des fenêtres de maintenance, utilisez des pipelines CI/CD pour un déploiement cohérent et implémentez un routage progressif du trafic via des déploiements canary à l’aide d’emplacements Azure App Service ou d’un fractionnement du trafic Container Apps. Augmentez progressivement le trafic complet lors de la surveillance des métriques et maintenez la cohérence des données pendant le déploiement. Pour les déploiements parallèles, créez l’environnement de production parallèle à l’aide de modèles IaC, établissez la réplication de la base de données avec la synchronisation continue des données, copiez des fichiers et des données non structurés à l’aide des outils de migration Azure, effectuez une synchronisation finale des données avec perte de données sans perte de données, réduisez progressivement le trafic utilisateur à l’aide du routage pondéré à partir de 1% et augmentez de façon incrémentielle. Effectuez le commutateur final vers 100% via la configuration du basculement DNS ou de l’équilibreur de charge. Vérifiez immédiatement la fonctionnalité post-basculement et conservez l’ancien environnement en veille à chaud pendant 24 à 72 heures.
Valider la réussite de la modernisation. Vérifiez les performances de l’accès utilisateur et de la charge de travail réussies en surveillant les modèles d’accès, les métriques de performances et les taux d’erreur pendant la période initiale après la migration. Annoncez la réussite de la migration uniquement après une validation et une confirmation approfondies des propriétaires de charge de travail, des testeurs et des parties prenantes de l’entreprise que toutes les exigences sont remplies.
Prise en charge de la charge de travail pendant la stabilisation. Établir une couverture améliorée du soutien pendant la période de stabilisation avec le personnel informatique expérimenté fournissant des contrats SLA plus courts que les opérations normales pendant les premiers jours ou semaines. Mettez à jour la documentation opérationnelle et les outils, notamment les runbooks, les documents de support et les configurations de supervision. Former des équipes d’opérations sur de nouvelles procédures et garantir que l’inventaire des ressources reflète la nouvelle infrastructure tout en supprimant les composants hérités.
Optimiser les charges de travail après la modernisation du cloud
Optimisez les configurations pour le cloud. Appliquez systématiquement des recommandations Azure Advisor en examinant les modifications hebdomadaires et en implémentant d’abord les modifications critiques, en filtrant par charge de travail ou groupe de ressources. Ajustez les paramètres spécifiques au service à l’aide des guides de service Azure Well-Architected Framework pour aligner les configurations avec les meilleures pratiques. Résolvez immédiatement les lacunes de configuration de la sécurité à l’aide de Microsoft Defender pour Cloud pour résoudre les résultats critiques et de gravité élevée dans les 48 heures pendant la configuration de l’évaluation continue.
Valider la préparation opérationnelle. Vérifiez la couverture et la précision de la surveillance en veillant à ce qu’Azure Monitor collecte tous les journaux, métriques et traces nécessaires pour les nouveaux composants. Testez les règles d’alerte par le biais de tests de chaos et mettez à jour les tableaux de bord pour refléter la nouvelle architecture. Établissez la surveillance et les contrôles des coûts à l’aide de Microsoft Cost Management pour suivre les modèles de dépense, définir des alertes budgétaires et des limites de dépense, et passer en revue l’utilisation hebdomadaire des ressources pour les possibilités de droits. Testez les procédures de sauvegarde et de récupération en effectuant des restaurations de test à l’aide de la sauvegarde Azure ou de la restauration dans le temps de la base de données. Documentez les métriques RTO et RPO obtenues et vérifiez que toutes les données critiques sont incluses dans les stratégies de sauvegarde.
Collectez les commentaires des utilisateurs et mesurez les résultats. Rassemblez régulièrement les commentaires des utilisateurs structurés par le biais d’enquêtes, de formulaires de commentaires et d’analyse des tickets de support. Organisez des réunions rétrospectives pour les équipes internes. Suivez et résolvez systématiquement les commentaires en documentant les problèmes dans Azure DevOps ou GitHub Issues, en catégorisant par gravité et valeur métier, en affectant la propriété avec des chronologies de résolution et en communiquant la progression mensuelle. Mesurez les résultats réels par rapport aux objectifs en compilant les métriques de réussite et les projections de retour sur investissement. Communiquez les résultats aux parties prenantes pour démontrer la valeur réalisée ou identifier les lacunes.
Établir des pratiques de modernisation continue. Planifiez des révisions de charge de travail régulières tous les quelques mois à l’aide de Well-Architected révisions ou de vérifications d’intégrité pour identifier les nouvelles opportunités d’optimisation à mesure que les services cloud évoluent et que les modèles d’utilisation changent. Automatisez l’optimisation dans la mesure du possible à l’aide d’Azure Policy pour appliquer les meilleures pratiques, implémenter des règles de mise à l’échelle automatique pour le réglage des performances et configurer des alertes d’anomalie des coûts via Cost Management. Partagez les résultats et les meilleures pratiques en documentant les modèles d’optimisation réussis, en créant des playbooks pour les scénarios courants, en conservant les bases de connaissances des leçons apprises et en contribuant à des insights sur les pratiques d’adoption du cloud organisationnel.
Pour obtenir des instructions détaillées sur le Framework d’adoption du cloud, consultez Moderniser les charges de travail dans le cloud.