Cet article présente les options Google Cloud aux organisations qui effectuent une évaluation interne de la migration d'une application Web à deux niveaux vers le cloud. ## Types d'applications Les applications Web à deux niveaux consistent en un serveur Web exécutant une application et une base de données pour stocker les données d'application. L'exécution de Linux, Apache, MySQL et PHP, communément appelée pile LAMP, est un exemple courant d'application Web à deux niveaux. Les variations de la distribution Linux, du logiciel de serveur Web, de la base de données ou du langage de programmation affectent les détails techniques de toute migration, mais la vue d'ensemble et les étapes de la migration sont cohérentes ## Phases de migration Les migrations vers le cloud se produisent dans les quatre phases suivantes Évaluation Identifiez toutes les caractéristiques de votre charge de travail, répertoriez les ressources nécessaires pour exécuter votre charge de travail dans le cloud et indiquez toutes les dépendances et connexions clés avec d'autres charges de travail. À l'aide de la liste complète des caractéristiques, vous pouvez alors commencer à planifier les applications et les charges de travail à déplacer, et dans quel ordre Dans les entreprises modernes, il existe de nombreux types d'applications, des applications destinées aux clients, aux applications de back-office, aux outils de développement et aux applications expérimentales. Déplacer toutes ces applications en même temps et de la même manière serait risqué et inefficace Un exemple serait de trier les applications dans les trois grandes catégories suivantes : - Des applications faciles à déplacer. Ceux-ci ont moins de dépendances, sont plus récents, sont écrits en interne, n'ont donc aucune considération de licence et sont plus tolérants à la mise à l'échelle et à la prise en charge des modèles de conception cloud - Applications difficiles à déplacer. Ceux-ci ont plus de dépendances, sont moins tolérants à la mise à l'échelle, sont difficiles à exécuter avec les services cloud ou ont des exigences de licence complexes - Les applications qui ne peuvent pas être déplacées. Certaines applications qui pourraient ne pas être de bons candidats pour migrer s'exécutent sur du matériel spécialisé ou plus ancien, ont des exigences commerciales ou réglementaires qui les obligent à rester dans votre centre de données, ou ont des exigences de licence complexes qui ne Âne leur permet pas de migrer vers le cloud Ce ne sont là que quelques exemples de façons de trier les candidatures. Il est probable que vos applications aient beaucoup plus de facteurs décisifs que vous pouvez utiliser pour créer une matrice de priorisation de toutes les applications. À partir de ce classement, vous pouvez choisir votre première application à déplacer et commencer à planifier votre fondation Google Cloud Fondation Architecte et planifie les détails spécifiques pour déployer le nouvel environnement cloud. Ceux-ci inclus: - L'architecture cloud et le modèle de sécurité pour fournir une base d'infrastructure pour vos charges de travail Ressources réseau pour permettre une communication sécurisée et fiable entre les applications. Cela nécessite une planification approfondie de la gestion des identités et des accès (IAM), de la conception du cloud privé virtuel (VPC) et des méthodes d'accès externes La technologie et les outils de l'état final sur lesquels vos charges de travail seront exécutées Prise en compte de la gestion des dépendances, des délais et des méthodes de déplacement des données Migration Déplacez les données et déployez les services, l'infrastructure et le code vers votre destination. Vous devez utiliser l'automatisation et les outils pour prendre en charge ces opérations Optimisation Validez si les décisions et les hypothèses que vous avez prises lors des phases d'évaluation et de fondation correspondent à la réalité après la phase de migration. Vous identifiez les changements dont vous pourriez avoir besoin. Réfléchissez à la manière d'explorer d'autres options cloud natives, telles que le passage de l'infrastructure en tant que service (IaaS) à la plate-forme en tant que service (PaaS), ou en tirant parti des offres de services gérés. En fonction du résultat de la phase d'optimisation, vous pouvez recommencer le cycle pour apporter des changements ou des modifications. Commencez toujours par la phase d'évaluation et utilisez votre expérience pour devenir plus efficace à chaque itération ## Types de migration Les trois stratégies de migration les plus courantes pour déplacer des applications vers le cloud sont décrites dans les sections suivantes Soulevez et déplacez Utiliser * soulevez et déplacez * lorsque vous souhaitez déplacer des applications tout en changeant comme le moins possible dans leur fonctionnement. Cela fonctionne mieux pour les applications qui peut s'exécuter sans modification dans le cloud, lorsque le déplacement rapide de l'application est un priorité, ou lorsque l'entreprise a peu d'appétit ou a peu besoin de changement. Cette la migration nécessite plus de travail de la part du personnel d'infrastructure et d'exploitation pour prendre en charge les changements fondamentaux dans l'emplacement où le service s'exécutera, et moins de travail des développeurs car très peu de code, voire aucun, ne devrait être modifié Par exemple, si les deux niveaux de votre application Web sont hébergés sur des machines virtuelles, vous pouvez les migrer tels quels à l'aide de Migrate to Virtual Machines. Lorsque ces machines virtuelles sont sur le cloud, vous pouvez alors envisager de passer à une plate-forme de calcul native plus cloud pour des avantages supplémentaires. Améliorer et déplacer Utiliser *améliorer et déplacer* lorsque vous souhaitez moderniser votre application dans le processus de migration vers le cloud. Ceci est couramment utilisé lorsque l'application n'est pas pris en charge dans le cloud tel quel, ou lorsque des mises à jour majeures de logiciels ou le matériel est déjà délimité et planifié. Cette migration nécessite une infrastructure, opérations et les développeurs à travailler ensemble pour améliorer le fonctionnement du application dans le cloud, et permet à l'application de tirer parti de avantages cloud natifs comme plus de portabilité, d'évolutivité et de fiabilité Une autre variante de cette stratégie consiste à s'améliorer et à se déplacer en un seul mouvement. Si les deux niveaux de votre application Web sont hébergés sur des VM, vous pouvez utiliser Migrer vers des conteneurs pour déplacer et convertir automatiquement ces VM en conteneurs s'exécutant sur Google Kubernetes Engine (GKE). Déchirer et remplacer Utiliser * extraire et remplacer * lorsque vous souhaitez créer une nouvelle solution dans le cloud, et coucher la version actuelle de votre solution sur site. Ceci est couramment utilisé lorsque les conditions suivantes s'appliquent : - L'application existante ne vaut pas la peine d'être maintenue dans le cloud, techniquement ou financièrement - La licence du logiciel dans le cloud est prohibitive ou peu pratique - L'application cesse complètement de répondre aux besoins de l'entreprise Étant donné que l'extraction et le remplacement nécessitent de réécrire une application à partir de zéro, cela n'est pas couvert dans ce guide de migration. ## Phase d'évaluation Avant de commencer toute migration, vous devez avoir une compréhension approfondie de votre point de départ Toute question sans réponse constitue un risque pour le succès de la migration. Passer du temps dans la phase d'évaluation permet d'assurer une phase de migration fluide et sans incident. Passez autant de temps que possible pour capturer autant d'informations pertinentes que possible à l'appui de votre migration Pile de logiciels d'application Travaillez avec vos équipes d'infrastructure, d'exploitation et de développement pour identifier les détails suivants : - Système d'exploitation : distribution exacte, version, correctifs, packages installés - Serveur Web : package logiciel exact, numéro de version, packages ou autre modification logicielle, ainsi que tous les fichiers de configuration et règles du logiciel de serveur Web - Base de données : nom exact du logiciel, version, schéma, stratégie de réplication et calendrier de sauvegarde - Environnements d'exécution : versions exactes de tous les environnements backend et frontend Ressources matérielles du système Pour les niveaux serveur Web et base de données, répondez aux questions suivantes : - Combien de serveurs tournent actuellement ? - Quelle est l'allocation totale des processeurs, y compris la génération, le type d'architecture et la vitesse ? - Quels sont la RAM et l'espace disque alloués à chaque serveur ? Des disques durs ou SSD sont-ils utilisés ? RAID? - Quelle est l'utilisation actuelle, l'utilisation moyenne et l'utilisation maximale du CPU, de la RAM et de l'espace disque ?Examinez votre moyenne et votre pic dans le contexte de votre utilisation professionnelle spécifique.Par exemple, une entreprise soutenant les Jeux olympiques peut avoir besoin de regarder deux ans en arrière pour voir à quoi ressemble le véritable pic, tandis que d'autres applications peuvent avoir un taux d'exécution plus stable.Regardez la chronologie des cas d'utilisation les plus typiques pour la moyenne et votre chronologie d'utilisation la plus lourde pour le pic.Recherchez également les modèles d'utilisation cycliques, tels que les week-ends, les soirées et les jours ouvrables- Pour la base de données, quelle stratégie de sauvegarde, de réplication ou de partitionnement est utilisée, et comment qui impactent les besoins en espace disque et le nombre de serveurs requis ?Ressources réseauAnalysez l'architecture réseau qui permet à votre application de fonctionner.Assurez-vous que vous disposez de diagrammes de topologie de réseau logique et physique précis et à jour de l'infrastructure qui prend en charge votre application.Les schémas doivent clairement décrire toutes les connexions, dépendances et services réseauRépondez aux questions suivantes :- Comment les clients accèdent-ils à votre application ?Via un navigateur Web ?Directement via une adresse IP ?Via une application mobile ?Vous utilisez une connexion de réseau privé virtuel ?- Avez-vous une liste de tous les certificats SSL/TLS et clés de chiffrement applicables ?- Où sont hébergés tous les certificats SSL/TLS applicables ?Quand expirent-ils ?Comment renouveler les certificats ?Comment obtenez-vous de nouveaux certificats ?Avez-vous accès à tous les certificats actuels ?- Avez-vous une liste de tous les domaines applicables qui prennent en charge l'application ?- Où sont hébergés ces domaines ?Quand expirent-ils ?Comment les renouvelez-vous ?Avez-vous accès aux comptes qui contrôlent l'enregistrement ?- Où votre DNS est-il hébergé et contrôlé ?- Avez-vous accès à tous les systèmes et outils qui contrôlent le DNS ?Quels sont les mappages CNAME vers IP actuels pour chaque domaine, et avez-vous une sauvegarde ?- Quels sont vos paramètres DNS de durée de vie (TTL) ?- Où vos pare-feux et autres dispositifs d'accès et de contrôle réseau s'intègrent-ils dans l'architecture ?Quelles règles sont désormais en place pour autoriser ou refuser le trafic ?Qui est responsable et quelle est la procédure pour modifier ou mettre à jour ces règles ?- Utilisez-vous des services réseau externes ?Par exemple, un fournisseur de réseau de distribution de contenu (CDN) ou un service de protection contre le déni de service distribué (DDoS) ?## Phase de fondationGoogle Cloud offre de nombreuses options pour exécuter des charges de travail de calcul et de base de données pour des applications multiniveaux telles que LAMP.Cette section présente ces options et explique pourquoi vous pouvez en choisir une plutôt qu'une autreOptions centrées sur le calculCompute EngineCompute Engine est un IaaS offre qui vous permet d'exécuter une machine virtuelle (VM) sur Google Cloud.Vous pouvez installer des frameworks Web, des logiciels serveur, des bases de données et tout autre logiciel pris en charge par votre système d'exploitation.Si vous exécutez votre propre application LAMP sur du métal nu, sur une machine virtuelle, dans un centre de données ou sur un autre fournisseur de cloud, cette option pourrait répliquer étroitement, sinon exactement, votre serveur existant.Cette option offre le meilleur contrôle sur la configuration du système d'exploitation et les paramètres du logiciel du serveur Web.Compute Engine permet un contrôle approfondi des types de machines, des groupes d'instances, des options de stockage, des équilibreurs de charge et de nombreux autres détails.Reportez-vous à la documentation complète de Compute Engine pour plus de démarrages rapides, de didacticiels, etc.Le déplacement direct de votre application vers Compute Engine est la migration lift-and-shift la plus courante.Pour obtenir des conseils sur le mappage des ressources sur site vers Compute Engine, consultez Bonnes pratiques pour migrer des machines virtuelles vers Compute EngineCloud Deployment ManagerGoogle Cloud Marketplace également propose une installation LAMP simple via Deployment Manager.Vous pouvez lancer un serveur avec Debian Linux, Apache, MySQL, PHP et phpMyAdmin déjà installés et configurés dans une configuration par défaut.Vous obtenez un serveur Web entièrement fonctionnel et des informations d'identification pour l'installation de MySQL en quelques minutes seulementGoogle Kubernetes EngineGKE est un environnement géré et prêt pour la production pour déployer des applications conteneurisées.En utilisant GKE, vous cessez de gérer un système d'exploitation en conteneurisant votre logiciel de serveur Web.Par exemple, les serveurs Web Apache et NGINX sont disponibles à partir de chaque référentiel de conteneurs public.Si vous utilisez des conteneurs pour exécuter des charges de travail dans votre environnement, GKE est un service efficace pour maintenir un workflow de déploiement et de test similaire lorsque vous migrez votre charge de travail LAMP vers Google Cloud.Si vous n'utilisez pas de conteneurs, envisagez d'explorer GKE pour des déploiements et une récupération plus rapides, une plus grande efficacité dans l'utilisation des ressources et ne pas avoir à gérer le système d'exploitation sous-jacent et la machine virtuellePour Pour en savoir plus sur la gestion des applications de conteneur à grande échelle, reportez-vous à la documentation GKE pour obtenir des démarrages rapides, des didacticiels, des concepts, des guides pratiques et d'autres ressources pour vous aider à démarrerDéplacer votre application LAMP sur site vers GKE est une migration d'amélioration et de déplacement, tandis que le passage d'une infrastructure autogérée basée sur des conteneurs est une migration de type "lif-and-shift"App EngineApp Engine est une plate-forme sans serveur pour créer des applications hautement évolutives.Selon le type d'application que vous exécutez, App Engine peut éliminer le besoin de gérer des serveurs, des conteneurs ou des déploiements, ce qui permet à vos développeurs de se concentrer sur l'écriture de code et de réduire la complexité de la gestion de toute infrastructure sous-jacente.Toutes les charges de travail ne sont pas de bons candidats pour passer à App Engine, mais celles qui le sont voient leurs coûts et leur complexité diminuer tout en augmentant la vitesse de mise à l'échelle et la résilience de l'application sous chargeApp Engine est disponible en deux versions : l'environnement standard couvre une variété de langages (y compris PHP pour notre application LAMP) et l'environnement flexible permet une plus grande personnalisation des environnements d'exécution, des performances et de l'infrastructure.Explorez la documentation de la langue de votre choix pour en savoir plusOptions de base de données Autogéré sur Compute Engine Vous pouvez installer MySQL, PostgreSQL ou toute autre base de données SQL sur une instance Compute Engine. Cela offre le même niveau de contrôle que vous auriez lors de l'exécution de MySQL sur un poste de travail, sur un serveur dans un centre de données ou en tant que machine virtuelle dans un autre fournisseur de cloud. Lorsque vous exécutez votre base de données sur une machine virtuelle, il est de votre responsabilité de configurer, de surveiller et de maintenir le basculement, la réplication, le partitionnement et la haute disponibilité. Vous pouvez traiter la base de données comme une charge de travail de calcul, en tenant compte du processeur, de la RAM et de l'espace disque pour vous assurer qu'il y a suffisamment de ressources pour que l'application s'exécute de manière fiable. Tout comme le déplacement de la charge de travail de calcul vers Compute Engine, cette approche représente une migration lift-and-shift Cloud SQL Cloud SQL est un service de base de données entièrement géré qui décharge l'installation, la configuration et la maintenance de votre base de données sur Google Cloud. Il automatise les sauvegardes, la réplication, les correctifs et les mises à jour, et vous permet de vous concentrer sur votre application. Les bases de données Cloud SQL peuvent être utilisées par des charges de travail exécutées sur n'importe quel service de calcul de Google, y compris Compute Engine, GKE et App Engine. À moins que vous n'ayez besoin d'un niveau de contrôle approfondi sur votre base de données MySQL, Cloud SQL est une option facile à configurer et complète pour exécuter une charge de travail LAMP. Cloud SQL peut exécuter et prendre en charge MySQL et PostgreSQL de manière native. Si vous migrez de l'une de ces bases de données vers Cloud SQL, il s'agit d'une migration lift-and-shift. Si vous explorez de nouvelles méthodes de réplication, de stratégie de sauvegarde ou de simplicité dans la gestion de votre infrastructure, il peut s'agir d'une migration améliorée et déplacée Autres options de stockage Cloud Storage est un magasin d'objets ou de blob évolutif, entièrement géré, hautement fiable et économique, idéal pour stocker des images, des actifs statiques et d'autres données non structurées. Cloud Storage peut être utilisé pour héberger un site Web statique, mais n'est pas conçu pour stocker le contenu actif d'une base de données. C'est également un emplacement idéal pour stocker des objets de sauvegarde et de reprise après sinistre, ainsi que des données à utiliser pour la diffusion en continu. Envisagez d'utiliser Cloud Storage comme emplacement pour stocker les sauvegardes de votre base de données pendant et après votre migration Firestore Firestore est une base de données de documents NoSQL entièrement gérée, sans serveur et native du cloud qui simplifie le stockage, la synchronisation et l'interrogation des données pour vos applications mobiles, Web et Internet des objets (IoT) à l'échelle mondiale. Ses bibliothèques clientes offrent une synchronisation en direct et une prise en charge hors ligne, tandis que ses fonctionnalités de sécurité et ses intégrations avec Firebase et Google Cloud accélèrent la création d'applications véritablement sans serveur. Si votre application comporte du contenu qui pourrait bénéficier d'un format NoSQL, tel que des profils utilisateur, des catalogues de produits ou l'état du jeu, vous devez explorer Firestore dans la phase d'optimisation de votre migration. Base de feu Firebase est une plate-forme de développement mobile complète qui inclut des options de stockage et de base de données. Si votre application prend en charge une charge de travail mobile, la plate-forme Firebase doit être envisagée dans votre phase d'optimisation Clé à nuage Spanner est un service de base de données de niveau entreprise, distribué dans le monde entier et fortement cohérent, conçu pour le cloud. Il combine les avantages des structures de bases de données relationnelles avec l'évolutivité horizontale des bases de données non relationnelles. Si votre application peut bénéficier d'une gérabilité, d'une évolutivité et de transactions améliorées avec une forte cohérence, envisagez de migrer votre base de données vers Spanner dans votre phase d'optimisation. Google Cloud propose de nombreuses autres options de stockage pour prendre en charge diverses charges de travail ## Phase de migration Une fois que vous avez terminé votre évaluation et planifié votre migration, vous pouvez commencer à déplacer des données, des services et des ressources vers Google Cloud. Chaque application a ses propres besoins. Cette section passe en revue quelques exemples pour aider à démontrer ce que cette phase implique Ascenseur et déplacement : Compute Engine La première étape pour commencer votre migration lift-and-shift vers consiste à établir un service multiniveau compatible dans Compute Engine. Bien qu'il existe de nombreuses approches à cela; voici les trois plus courants : - Installation manuelle. Lancez une machine virtuelle avec le système d'exploitation de votre choix, puis mettez à jour manuellement les référentiels, installez et configurez le logiciel, puis provisionnez et configurez manuellement la base de données et l'environnement d'exécution. Cette approche offre un haut niveau de contrôle, mais prend plus de temps, est plus sujette aux erreurs et est moins reproductible que les autres méthodes - Automatique. Utilisez Migrate to VMs pour migrer une pile de VM (dans un ordre spécifié) depuis sur site vers des VM de taille appropriée, automatiquement provisionnées et configurées dans Compute Engine - Marché Cloud. Lancez une pile LAMP préconfigurée dans votre projet Google Cloud. Assurez-vous de vérifier que les versions de système d'exploitation et de logiciel fournies fonctionneront avec votre application. Explorez la documentation de Cloud Marketplace pour en savoir plus - Déploiement automatisé. Créez des machines virtuelles prêtes pour la production à l'aide de concepts d'intégration continue/déploiement continu et d'une variété d'outils de gestion de configuration (Chef, Puppet, Ansible, Salt), d'outils d'infrastructure en tant que code (Deployment Manager, Terraform) et de cadres d'automatisation (Cloud Build). Le déploiement automatisé permet des méthodes testables, reproductibles et automatisées pour déployer des machines virtuelles et des logiciels qui répondent à vos besoins en matière d'application et de gouvernance Améliorer et déplacer : GKE et Cloud SQLPour passer à une solution de conteneurs gérés, vous devez d'abord établir les bases de votre cluster et de votre solution SQL géréeLancer un cluster GKELa création d'un cluster sur GKE et la gestion de ce cluster sont les premières étapes.Utilisez les informations de vos phases d'évaluation et de fondation pour dimensionner et configurer votre cluster initial de manière appropriée et pour appliquer les bonnes pratiques de renforcement de la sécuritéOptions de lancement pour Cloud SQLUtilisation les informations de base de données obtenues lors de vos phases d'évaluation et de fondation, créez une nouvelle instance Cloud SQL et suivez d'autres guides pratiques pour créer la base de données de votre application.Google fournit une liste des bonnes pratiques Cloud SQL, des guides de configuration de la haute disponibilité et d'autres didacticiels pour la mise à l'échelle horizontale.Explorez les options de connexion de Google Kubernetes Engine à Cloud SQL et choisissez celle qui convient le mieux à votre application et à votre niveau d'expérienceAmélioration et migration sans serveur : App Engine et Cloud SQLSi vous décidez de migrer votre application LAMP vers un framework sans serveur, vous devrez peut-être modifier votre application pour prendre en charge App Engine.Chaque application est différente et il existe de nombreuses stratégies.Commencez par passer en revue les éléments suivants :- Obtenez un aperçu de l'architecture des microservices sur App Engine- Comprendre comment créer et nommer dev, test, QA, staging et des environnements de production avec des microservices dans App Engine- Découvrez les bonnes pratiques de conception d'API pour communiquer entre les microservices- Découvrez les bonnes pratiques pour les performances des microservicesEn fonction de votre expérience organisationnelle et personnelle et de votre familiarité avec l'exécution de code sans serveur, la stratégie d'amélioration et de déplacement sans serveur peut prendre beaucoup plus de temps que les options de levage et de déplacement.Cependant, vous apporter le meilleur du sans serveur pourrait être un atout considérable pour votre organisation## Phase d'optimisationUne fois votre application exécutée sur Google Cloud, vous pouvez valider vos hypothèses et décisions des trois phases précédentes.Les migrations complètes peuvent prendre beaucoup de temps et de nombreux détails peuvent changer tout au long du processus.L'optimisation couvre de nombreux domaines, mais voici quelques catégories courantesOptimisation des coûtsLe passage du sur site au cloud modifie la façon dont vous dépensez de l'argent pour les applications , services et infrastructures.Vous pouvez effectuer une évaluation d'un service sur site hérité et découvrir après la migration que le matériel moderne, la mémoire plus rapide et les nouvelles architectures de processeur l'exécutent plus efficacement.Cela peut signifier que vos VM sont surprovisionnées et gaspillent de l'argentVous pouvez envisager d'utiliser des instances de VM préemptives sur Compute Engine.Peut-être que vous n'aviez pas besoin d'autant d'équilibreurs de charge que vous le pensiez, ou que vous avez réussi à nettoyer votre base de données lors du déplacement et que vous disposez maintenant d'un espace que vous n'utilisez pas.Trouver des moyens d'économiser de l'argent et de réduire les coûts d'exploitation dans le cloud peut devenir un travail à temps plein qui s'autofinance.Google Cloud propose un certain nombre d'outils de gestion des coûts qui peuvent vous aider à comprendre la tarification du cloudAutomatisationL'automatisation correcte de vos charges de travail de calcul dans le cloud peut entraîner des coûtséconomies et gains d'efficacitéDeployment Managerest un produit Google Cloud conçu pour vous aider à créer et à gérer des ressources cloudà l'aide de modèles simplesCréer des scripts avecgcloudest une option si vous préférez écrire vos propres automatisations.Alors que les avantages financiersviennent avec l'automatisation, d'autres avantages incluent ce qui suit :- Processus standard et reproductibles pour réduire les taux d'erreur- Suivi vérifiable pour la conformité et la gouvernance- Meilleure compréhension du fonctionnement de votre application, de ses pannes et de la manière de la réparerL'automatisation augmente la disponibilité en réduisant la dépendance à l'égard des alertes et du temps de réaction humaine, réduit la dette technique en documentant le flux de travail et permet à vos ingénieurs de se concentrer moins sur le maintien de la lumière allumée et plus sur la création de meilleurs produits, outils et services.Ces concepts sont au cœur de l'ingénierie de la fiabilité du site (SRE).Google Cloud propose un livre en ligne gratuit sur l'ingénierie de la fiabilité des sites, ainsi qu'un manuel SRE fournissant des exemples pratiques et des études de casDécoupler votre infrastructure et votre codeVous découplez les services plusieurs fois au fur et à mesure qu'une application se développe.Séparer les services connectés et savoir les faire évoluer indépendamment améliore la disponibilité et la fiabilité de vos applications.Il y a généralement trois étapes dans ce processus :- Implémentez l'infrastructure en tant que code (IaC) partout.En mettant en œuvre des processus IaC et de gestion de la configuration, vous obtenez des éléments de base traçables, auditables et reproductibles pour le provisionnement et la configuration de l'ensemble de votre infrastructure- Découplez vos services existants en microservices.Utilisez un middleware orienté message, comme Pub/Sub, pour permettre à chaque microservice d'être son propre domaine de défaillance- Commencez la migration des services de l'infrastructure en tant que service vers la plate-forme en tant que service , ou même fonctionne comme un service ou sans serveur comme un service.Le passage du "code et de l'infrastructure monolithiques"aux "microservices découplés fonctionnant efficacement sur tout le spectre IaaS"est un objectif précieux qui demandera du temps, des efforts et du dévouementOptimisation des performancesLe réglage des performances peut générer des gains significatifs en termes d'utilisation du système et de temps de réponse.Chaque charge de travail a une méthode différente pour le réglage des performances, des fichiers de configuration logicielle au réglage des indicateurs du noyau.Pour les applications LAMP, le réglage des performances relève généralement de trois catégories :- Réglage du cloud, du réseau et du système d'exploitation : - 5 étapes pour améliorer les performances du réseau Google Cloud peuvent vous aider à comprendre comment tirer le meilleur parti de Google Cloud Networking - L'optimisation TCP pour les performances du réseau dans Google Cloud peut vous aider si vous avez des exigences de latence TCP spécifiques - L'optimisation des disques persistants et des performances SSD locales peut vous aider à en savoir plus sur l'architecture pour les charges de travail lourdes IOPS - L'amélioration des performances sur Compute Engine peut améliorer les performances des applications d'API lors de l'interaction avec d'autres API et services Google Cloud - Paramétrage du serveur Web : - Apache Performance Tuning et NGINX Performance Tuning, ou une recherche générale sur Google pour "le réglage des performances de votre serveur Web"vous mènera dans la bonne direction Réglage de la base de données : ## Et après - Mise en place de LAMP sur Compute Engine - Déployer une pile LAMP - En savoir plus sur l'exécution de charges de travail de calcul sur Compute Engine ou GKE Connecter GKE à Cloud SQL Explorer Migrer vers des VM et Migrer vers des conteneurs Créez une application hautement évolutive sur une plate-forme sans serveur entièrement gérée avec App Engine En savoir plus sur les options de base de données sur Google Cloud Découvrez les architectures de référence, les diagrammes, les didacticiels et les bonnes pratiques concernant Google Cloud. Jetez un œil à notre centre d'architecture cloud.