Planifier le déploiement
La conversion d'une application monolithique en architecture de microservices implique la mise en conteneur de votre application monolithique en tant qu'image d'accueil, puis la mise à disposition de cette image dans n'importe quel référentiel de code source, tel que GitHub, GitLab ou Bitbucket.
- Créer des conteneurs pour votre application monolithique
Après avoir logé le code de votre application dans une bibliothèque de code source, telle que Bitbucket, GitHub ou Gitlab, téléchargez le code source sur votre machine locale.
Une fois le téléchargement terminé, exécutez la commande Docker pour créer l'image Docker. Une fois l'image Docker créée, créez un référentiel dans Oracle Cloud Infrastructure Registry (OCIR) et exécutez une commande push Docker à l'aide des informations d'identification d'authentification pour stocker les images dans OCIR.
- Déployer votre application monolithique dans vos conteneurs
Créez un cluster Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), puis déployez l'image Docker que vous avez propagée vers l'OCIR vers le cluster Kubernetes. Créez un équilibreur de charge d'application pour acheminer le trafic via le port 80 et distribuer les demandes. L'architecture ci-dessous est mise en conteneur, mais toujours monolithique car chaque conteneur a tous les services.
- Décomposer l'application monolithique
L'utilisateur final effectue une demande, la charge est distribuée par l'équilibreur de charge et les appels REST sont acheminés en conséquence. Dans le diagramme ci-dessous, nous avons séparé chaque processus de service ou d'application pour qu'il s'exécute indépendamment sur chaque conteneur. Par exemple, le service d'authentification s'exécute dans son propre conteneur, tout comme le service Users et le service Analysis. Il existe un isolement complet entre ces services que vous pouvez mettre à jour ou modifier indépendamment, en fonction de vos exigences actuelles.
- Déployer les microservices
Au cours de cette dernière étape, vous déployez les microservices et transférez en toute sécurité le trafic de l'application hors des instances d'application monolithiques.
- Démarrez les microservices et permutez le trafic entrant en mettant à jour les URL respectives.
- Ajustez l'équilibreur de charge pour acheminer le trafic vers les URL mises à jour.
- Enfin, arrêtez les instances d'application monolithiques. Observez et surveillez le trafic et les demandes entrant et assurez-vous que l'application fonctionne bien dans le nouvel environnement.