software-engineers-working-on-project-and-programm-2023-11-27-05-08-53-utc.webp
AccueilActualitésNote d'expertModernisation d'une plateforme en ligne en une solution Cloud-Native

Modernisation d'une plateforme en ligne en une solution Cloud-Native

Face à une pandémie mondiale, de nombreuses entreprises ont été contraintes de s'adapter aux évolutions des comportements des clients, aux réglementations sectorielles et aux modifications dans les partenariats de développement.

Moderniser une plateforme informatique pour mieux répondre à ces changements doit être motivée par des objectifs clairs :

 

  • Réduire les délais de mise sur le marché – Accélérer les livraisons pour répondre aux demandes changeantes des entreprises et être en mesure de saisir les opportunités émergentes.
  • Soutenir la croissance future - Concevoir des systèmes pour soutenir la croissance future sans nécessiter de changements considérables et la planification de l'acquisition et l'intégration de matériel IT.
  • Renforcer l’adaptabilité au marché – Bénéficier d’une solution plus souple et plus évolutive pour faire face à l'évolution et à la volatilité des demandes du marché.
  • Augmenter la résilience et la disponibilité – Assurer la résilience aux pannes, la haute disponibilité et la capacité à fonctionner dans un état sain sans temps d'arrêt significatif.
  • Renforcer la sécurité – Renforcer la sécurité afin de répondre aux exigences de conformité et protéger les données des clients et les données propriétaires ainsi que sa réputation.

 

Pour atteindre ces objectifs, il faut adopter une stratégie. Il faut commencer par choisir un fournisseur de services Cloud, qu'il s'agisse d'un Cloud privé ou de l'un des Clouds publics hyper-scaler. Il est plus facile de faire un tel choix après avoir entrepris de petits projets d'innovation basés sur le Cloud, ce qui permet d'intégrer des retours d'expérience concrets dans la prise de décision.

 

En optant pour un fournisseur de services cloud hyper-scaler, une autre option stratégique devient possible : privilégier la plate-forme en tant que service (PaaS) plutôt que l'infrastructure en tant que service (IaaS). Cela permet à l'équipe de développement de se concentrer sur ce qui compte le plus : les fonctions métier à valeur ajoutée.

 

Un autre élément clé de la stratégie est l'isolation de chaque domaine d'activité grâce à l'adoption d'une architecture de micro-services permettant une évolutivité à la fois technique et organisationnelle.

La solution

Le délai de mise sur le marché est raccourci grâce à des mises à jour régulières et plus fréquentes. On passe d'un intervalle de plusieurs mois entre deux versions à un rythme soutenu de deux semaines. Avec des cycles de développement plus courts, les changements sont testés plus tôt. Cela est possible grâce à l'infrastructure en tant que code ( IaC) et à l'intégration et au déploiement continus.

 

  • L'infrastructure en tant que code (IaC)

Pour accélérer et garantir la cohérence du fonctionnement des environnements Cloud Natifs, l'infrastructure est approvisionnée et configurée via l'IaC. L'état souhaité de l'infrastructure Cloud est défini à l'aide d'un code, par opposition à des processus manuels ou à des scripts impératifs complexes.

  • Intégration et déploiement continus (CI/CD)

L'IaC et le code d'application de chaque microservice sont intégrés et déployés en continu via des pipelines DevOps. Ces pipelines permettent d'aller au-delà de la simple construction des artefacts de code et de leur déploiement. Ils sont bien adaptés pour orchestrer des contrôles automatisés supplémentaires tels que l'analyse du code pour la qualité, les tests unitaires pour la fonctionnalité, les tests statiques de sécurité des applications (SAST), les tests dynamiques de sécurité des applications (DAST), les tests d'intégration, les tests de performance et les tests de charge. 

 

Cette approche permet de se concentrer sur les questions de qualité et de sécurité plus tôt dans le cycle de développement, ce qui contribue à réduire le risque de vulnérabilités et de défauts dans le produit final. Il en résulte une solution de meilleure qualité qui répond aux normes de sécurité et aux besoins des utilisateurs.

 

  • Hyper-scale

En optant pour un déploiement sur un hyper-scaler, un grand fournisseur de services cloud qui peut fournir des services informatiques, de stockage et autres à l'échelle de l'entreprise, notre solution cloud-native peut être rapidement mise à l'échelle pour répondre à l'évolution de la demande. Les ressources en nuage peuvent être facilement reconfigurées ou provisionnées en fonction des besoins, sans passer par le processus long et coûteux d'acquisition, de configuration et d'hébergement de matériel supplémentaire.

 

Un hyper-scaler nous aide également à atteindre une haute disponibilité et une résilience aux pannes en nous offrant des centres de données avec du matériel hautement redondant qui sont eux-mêmes redondants. Des fournisseurs comme Azure et AWS proposent plusieurs zones de disponibilité, des zones distinctes conçues pour être isolées des pannes. Par conséquent, pour pallier la défaillance d'une zone de disponibilité dans une région, les données et les charges de travail peuvent être répliquées dans plusieurs autres zones de disponibilité.

 

Par exemple, Azure propose deux régions en Suisse, ce qui permet de maximiser la redondance au sein d'un même pays. En règle générale, la région Azure Suisse Ouest peut être utilisée pour la reprise après sinistre des charges de travail de la Suisse Nord.

 

  • Conception pilotée par domaine (Domain Driven Design)

L'approche "Domain Driven Design" facilite l'adaptabilité au marché en alignant la mise en œuvre technique sur le domaine d'activité. Ainsi, chaque domaine d'activité est mis en œuvre comme un service distinct, fourni de manière indépendante par une équipe dédiée. La taille de ces équipes spécialisées peut varier en fonction des besoins du domaine, ce qui permet d'assurer l'évolutivité de l'organisation. Par conséquent, la solution adopte une architecture de micro-services, chaque service étant capable d'évoluer de manière indépendante.

 

  • Gestion des API

Ces micro-services sont mis à disposition via une passerelle API sur laquelle nous publions les APIs que chaque domaine offre. À partir de ce service, un catalogue et une documentation technique pour ces API facilitent leur découverte. En outre, les questions transversales telles que la validation des jetons, la mise en cache, l'étranglement et la gestion de l'indisponibilité des services sont gérées par le biais de politiques.

 

  • Surveillance

Pour atteindre l'excellence opérationnelle, résoudre les problèmes et valider la sécurité, il est essentiel de surveiller les nombreux composants d'une solution native dans le nuage. Pour ce faire, le service de surveillance natif du service en nuage nous permet d'observer la santé, les dépendances et les performances de l'ensemble de la solution et d'être alerté en cas de conditions anormales.

 

  • Sécurité

En plus de la surveillance de la solution, une solution de détection des menaces est mise en place. La détection des menaces nous permet d'identifier de manière proactive les menaces potentielles pour la sécurité et de prendre des mesures pour les prévenir ou les atténuer avant qu'elles ne causent des dommages.

Avantages

Chez ELCA, nous avons récemment aidé une société active dans le domaine des jeux à moderniser sa plateforme en ligne en la transformant en une solution Cloud Native sur Azure.

 

L'avantage de la mise en œuvre de ces éléments dans une solution est une réduction de la complexité opérationnelle, ce qui se traduit par une équipe opérationnelle plus réduite. Le client bénéficie également d’un stack plus standardisé, ce qui réduit la dépendance à l'égard des partenaires d'intégration. En déplaçant les charges de travail et en utilisant un fournisseur de services Cloud, la solution bénéficie des connaissances et des capacités du fournisseur en matière de sécurité et de commodités en tant que service (base de données, calcul, stockage, surveillance, ...).

 

La nouvelle solution offre également une meilleure élasticité, ce qui lui permet de s'adapter aux besoins de l'entreprise, qu'ils soient à court ou à long terme. Et en ayant opté pour une architecture micro-services, cette élasticité est combinée à une grande flexibilité organisationnelle. Cela permet à chaque domaine d'activité d'évoluer et à de nouveaux domaines d'être rapidement ajoutés, tandis que, sur le plan organisationnel, les équipes qui développent ces domaines peuvent également croître et évoluer en fonction des besoins.

ppt_347_transform-your-it-chart_chart4_fr_new.svg

Conclusion

Les événements qui bouleversent le monde ces dernières années ont eu un impact considérable sur de nombreux secteurs d'activité. Le passage à une solution Cloud-Native présente de nombreux avantages à court et à long terme, notamment la possibilité d'être mieux préparé à de futurs événements inattendus.

Philippe Cuvecle

Lead Architect

Rencontrez Philippe Cuvecle, notre Lead Architect spécialisé dans cloud transformation et cloud-native architectures. Contactez Philippe pour savoir comment il peut vous aider à faire avancer vos initiatives cloud transformation.

Contenu Relatif