Migration, les
bases - Théorie
• Pre-migration
• Discover: Identifier vos applications et leur
fonctionnement
• Analyze: Architecture existante, ressources
utilisés
• Plan: Définir la stratégie de migration
• Design: Design l’application selon la
stratégie choisie
• Migration
• Migrate: Exécuter la migration
• Integrate: Intégrer l’application avec ses
dépendance
• Validate: Valider le fonctionnement après
migration
• Post-migration
• Operate: Planifier le run dans le cloud
• Optimize: Optimiser l’application
Comprendre le projet
• Il est important de comprendre la raison d’une migration cloud
• Les raisons peuvent être :
• Obsolescence matériel/logiciel
• Cout
• Restructuration interne
• La sécurité
• La simplification
• Avoir des services managés
• Comprendre pourquoi vas permettre de :
• Faire des choix techniques cohérent
• Définir les critères de succès
Mise en place de l’équipe
• Une migration doit inclure une équipe, généralement :
• Un sponsor, le service à l’initiation du projet – Très souvent support les couts, valide le budget
• Des référents, chefs ou directeurs de projet qui peuvent se trouver dans différente organisation
• D’une équipe dédiée a la migration (Architecte, ingénieur, consultant qui peuvent être externe
ou interne)
• On doit aussi savoir avec qui on va interagir durant le projet
• Les équipe métier, Product Owner
• L’équipe support
• L’équipe réseaux et systèmes
• L’équipe sécurité
Exemple 0 – Contexte
• Panda Corporation veulent migrer une application web vers du IaaS.
• Ils engagent un consultant extérieur pour gérer la migration.
• Le projet est un projet pilote de migration pour étudier la faisabilité dans le
futur
• L’application cible a migrer n’est pas business critical, mais représentative
des autres applications du SI
• L’équipe projet est composé :
• Du sponsor le DSI
• Du Product Owner qui appartient à la DSI
• Le support de l’application est fait en interne par le support IT
Mise en place d’une gouvernance
• Définition : La gouvernance désigne l'ensemble des mesures, des règles, des organes de décision,
d'information et de surveillance qui permettent d'assurer le bon fonctionnement et le contrôle du projet
de transformation
• Le chef de projet et l’architecte vont par exemple être responsable de :
• Rythmer le projet
• Définir le calendrier de migration
• Prioriser les tâches
• Déterminer et affecter les bonnes ressources sur les chantiers
• Gérer les problèmes
• Mettre en place des points de suivis d’avancement du projet
Mise en place d’une gouvernance
• Il a aussi la gouvernance technique :
• A commencer par le cloud provider à choisir
• Le contrat de support avec le cloud provider
• Organisation des ressources dans le cloud
• Les conventions de nommage a utilisé (Define your naming convention)
• Les méthode de déploiement et de mise a jour a utiliser post migration
Exemple 1 -
Gouvernance
• Services a configure
pour organier la
gouvernance
technique
Azure AWS Role
Management
Group
Organizations Fournir un niveau de portée supérieur aux
abonnements .
Resource Group Resource Group Container logique de resource.
Azure Role Based
Access Control
Identity and
Access
Management
vous aide à gérer qui a accès aux ressources, ce qu'ils
peuvent faire avec ces ressources et à quelles zones ils
ont accès.
Azure Policy Organizations service que vous utilisez pour créer, attribuer et gérer
des stratégies. Ces stratégies appliquent des règles et
des effets différents sur vos ressources, de sorte que
ces ressources restent conformes.
Azure Security
Center
Inspector Un service automatisé d'évaluation de la sécurité qui
améliore la sécurité et la conformité des applications.
Évaluez automatiquement les applications pour
détecter les vulnérabilités ou les écarts.
Comprendre l’actuel
• Il est nécessaire de définir le périmètre de la migration
• La ou les applications a migrer doivent être revue et analyser
• L’assessement peut être technique :
• sonde sur les serveur
• scan du trafic réseau.
• Plus le temps d’assessement est long, plus d’information serons disponible sur la vie de l’application (1 mois minimum)
• Mais aussi humain
• Meeting avec le métier/Product Owner
• Meeting avec les équipe IT/ support en charge de l’application
• Ce qui est découvert via les solution technique peut alimenter la discussion
• Les choses importante a identifier sont :
• La complexité de l’application
• Les échanges d’information
• La sensibilité des données
• la disponibilité nécessaire de l’application
Exemple 2 -
Assessment
• Le schéma d’architecture de l’application
fournis par PandCorps est le suivant
• Les sonde place sur les serveur on
permis de connaitre le
dimensionnement des machines
et leur utilisation
• L’application semble peut utiliser
la nuit
• Les bases de données on un
volume de 2To
• Aucune communication réseau
vers d’autre serveur n’a été
enregistré
Exemple 2 - Assessment
• Résultat du meeting avec les équipes technique et métier
• Ils confirment que l’application n’est pas utiliser le soir a part pour faire
des backups
• Les données présentes sont des données d’archivage légale
• Il a en fait un export des données qui est fait tous les 6 mois par une
application tierce
Préparation de l’environnent
• De l’architecture actuel il faut imaginer l’architecture cible et définir ce qui
sera nécessaire
• Définir la localisation des ressources
• Définir les règles de sécurité
• Définir le types de ressources cloud a utiliser
• Etablir la « puissance / volumétrie » nécessaires
• Prévoir le coût des ressources
Définir la landing zone
• Landing zone est l’environnent cloud (Tenant Azure, Account AWS)
• Il faut se baser sur les architecture recommander des cloud providers
• La landing zone d’un projet est en général composer des éléments suivants :
Azure AWS Role
Virtual Network Virtual Private Cloud Provides an isolated, private environment in the cloud.
Web Application Firewall Web Application Firewall A firewall that protects web applications from common web exploits
VPN Gateway VPN Gateway Connects virtual networks to other virtual networks, or customer on-
premises networks (Site To Site).
DNS Route 53 Manage your DNS records
ExpressRoute Direct Connect Establishes a dedicated, private network connection from a location to
the cloud provider (not over the Internet).
Monitor CloudWatch
Comprehensive solution for collecting, analyzing, and acting on telemetry
from your cloud and on-premises environments.
Etendre le réseau
• Pour pouvoir migrer il est nécessaire que le réseau on-premise et cloud
soit connecter. Les 2 moyens de le faire sont :
• VPN Site à Site
• Avantages : Simple, faisable en moins d’une journée
• Inconvénients : pas de garantie sur la bande passante. Exemple : Passerelle VPN Gateway limitée à
1.25 Gbps côté Azure
• Direct Access (garder le VPN en failover)
• Avantage : connexion privée indépendante d’Internet. Garantie de bande passante
• Inconvénient : Complexe à mettre en œuvre car c’est un projet à part entière impliquant plusieurs
intervenants. La mise en place peut prendre entre quelques jours et plusieurs semaines. Plus coûteux
que le VPN Site à Site
Exemple 3 –
Architecture cible
• Design de l’architecture 3-
tiers en haute dispo classique
sur AWS
• Interconnexion avec le réseau
on-premise via VPN S2S
Préparer l’environnement cible
• Créer les groupes/utilisateur nécessaire
• Configurer les policies si nécessaire
• Préférer créer l’architecture cible de manière impérative (CLI) ou
déclarative ( IaC), pour être répétable
Example 4 Environnement cible
• Créer VPC, sous réseaux, serveurs, base de données, load balancer,
configure les machine, les pare-feu, les règles de sécurité…
• Connecter l’environnement On-premise avec le cloud via une liaison VPN
S2S
• L’environnent cible doit être prêt a accueillir les données de l’environnent
de production
Etape 5 – Migrer
• Définir les lots (doit on migrer plusieurs application en même temps ?)
• Quel est la volumétrie de donnée a migrer ?
• Quel outil pour migrer mes ressources ?
• La migration doit se faire avec les personnes compétente, Un DBA pour migrer une bdd, un
ingénieur système pour migrer un VM…
Azure AWS Role
Azure Migrate: Server
Migration tool
AWS Server Migration
Service
Aide a migrer des serveurs vers le cloud
Azure Migrate
Database Migration
AWS Database Migration
Service
Aide a migrer des bases de données dans le cloud
File Sync Datasync Permet de déplacer des données vers le cloud
Le basculement
• Définition du basculement : Permettre de rediriger les utilisateurs d’un
serveurs A vers un serveur B sans changer le point d'accès
• Migrer des données ou une configuration serveur peut se faire presque
sans impacte pour les utilisateurs, l’impacte est souvent causé par le
basculement
Basculement
avec downtime
• La mise a jour DNS et
les données de la
bases de données
sont les 2 raisons
principale du
downtime
Basculement
Sans downtime
• Le Blue/Green
déploiement permet
de rediriger les
utilisateurs au fur a
mesure
• Plus adapté a une
mise a jour qu’a une
migration
La migration a tel réussi ?
• Une migration est terminé une fois que les test d’acceptante définis en
avance sont ok. Il peut s’agir de :
• L’application démarre correctement
• On peut se connecter a l’application
• Un nombre définis de use case est possible
• Si des test ne sont pas bon un roll back vers l’ancienne plateforme doit être
possible
Exemple 5 - Migration
• L’application étant moins utilisé en soirée on adoptera une pour une
stratégie de basculement avec downtime la nuit.
• Pour minimiser le temps de downtime le TTL du DNS sera réduit a 10
minutes
• Les données serons migre une premier fois en avance (full load) puis
régulièrement avec seulement le différentiel pour une migration plus
rapide le jour J
• Exécution de use case sélectionné avec le Product Owner seront effectué
après le basculement pour valider le bon fonctionnement.
Former les équipes
• Le changement d’environnent peut être angoissant ou source d’erreur pour les équipe support ou
d’exploitation, il est donc nécessaire de les former, en amont et après la migration
• Workshop
• Shadowing
• Consultant extérieure
• Passage de certification
• Liste de tache qu’une équipe doit savoir faire après une migration :
• Monitoring
• Troubleshooting
• Maintenance
• Evolution
Exemple 6 - Formation
• Liste des workshop a planifier :
• présentation de la solution final et de son architecture
• Méthode de monitoring
• Principaux incident et méthode de troubleshooting
• Maintenance et mise a jours de l’infrastructure
Amélioration continue
• Les choses ne s’arrête pas après un projet de migration, même si c’est en
dehors du mode projet il peut être bon de faire au moins une fois une
revue afin de :
• Optimiser les process grâce a la nouvelle infrastructure cloud
• Optimiser les couts (Taille des VM, autoshudown, instance reserved, démantèlement
de l’ancienne infrastructure)
• Optimiser la sécurité (audit, check de conformité)
Exemple 7
• Mettre en place un suivis des couts
• Mettre en place un suivis de l’utilisation des ressources
• Planifier un audit de sécurité
• Démanteler l’infrastructure on-premise après 6 mois
Résumé
• Pre-migration
• Organise la gouvernance
• Déploiement de sonde
• Meeting avec les métiers
• Design de l’architecture cible
• Création de l’architecture cible
• Configuration de l’environnement cible
• Migration des données initial
• Migration
• La mise a jour DNS
• Migration des données
• Test de l’application
• Post-migration
• Formation des équipe IT a AWS
• Audit de sécurité
• Démantèlement de l’infrastructure on-premise
Est-ce que ceci est un plan de migration complet ? Non bien sur, d’autre etape peuvent être encore ajouter, mais c’est une indication de la bonne direction