Applications Cloud Native : les bonnes pratiques

Définitions, enjeux, usages, architectures, technologies, outils, méthodes, sécurité et gouvernance
Sommaire

LE MOT DE L’INTERVENANT

Dans cette formation Cloud Native, nous allons expliquer de manière...

Dans cette formation Cloud Native, nous allons expliquer de manière progressive et pragmatique les techniques de construction d’applications conformes aux exigences du Cloud. Nous aborderons les aspects les plus techniques du Cloud mais aussi les méthodes de migration et de gouvernance économique.

Habib GUERGACHI
Vingt-cinq ans d’expérience en Delivery d’Architectures logicielles complexes auprès de multinationales, de géants du Web et de startups. Douze ans d’expérience en conseil auprès des DG, DSI, DRH et Directions Métiers. Fondateur de Zengularity SA. Angel Investor dans Play framework, Libredemat et prismic.io. Administrateur de Foyer SA (LU) et conférencier exclusivement chez Capgemini Institut depuis 1998.
Lire la suite Cacher le texte

 

 

En trois jours, un état de l’art complet et pragmatique sur la mise en œuvre de la nouvelle génération d’applications Cloud Native conformes aux principes et exigences du Cloud ainsi que la transformation du SI existant.

  • Comprendre de manière détaillée les technologies contemporaines et des écosystèmes associés au Cloud : IaaS, CaaS, PaaS, SaaS, Serverless, Container, DevOps, SecDevOps, NoSQL, Sharding, Big Data, Ressources, REST, Microservices, Élasticité, Sécabilité, Scalabilité infinie, Autoscaling, Self-Healing, Stateless, Idempotence, Découplage temporel, etc.
  • Comprendre de manière approfondie les pratiques les plus évoluées pour concevoir, développer, tester, exploiter, sécuriser et gouverner les applications dans des environnements Cloud.
  • Décoder comment les applications modernes, grâce à l’élasticité offerte par le Cloud, ajustent en temps réel les ressources consommées, et en analyser les pré-requis.
  • Découvrir comment gérer simultanément des milliers, voire millions, d’utilisateurs sans impact sur le temps de réponse.
  • Assimiler comment l’automatisation totale des déploiements des applications remet en cause les notions de plans de continuité et de reprise d’activité.
  • Découvrir comment faire de la mise en production un non évènement grâce à l’industrialisation des procédures d’exploitation.
  • Les pratiques de gouvernance d’un SI Cloud Native : Responsabilités, organisation, méthodes, performance, KPI, etc.
  • Des cas pratiques de transformation d’un SI existant vers le Cloud Native. Balayage des principales étapes ainsi que les retours terrains associés.
  • Présentation des principaux acteurs de l’écosystème Cloud Native Applications (CNCF, CCSK, Kubernetes, Heroku, Openshift, Istio, Rancher, Terraform, Aiven, plateformes AWS (EKS, Elastic Beanstalk, Lambda, S3, etc.), GCP (GKE, Cloud Storage, Cloud Functions, etc.), Alibaba Cloud (OSS, Container Service for Kubernetes, ApsaraDB, ASM, etc.), Azure (Azure Container Instances, Blob Storage, Azure Container Registry, etc.)


Rappel des fondamentaux


Terminologie

  • Définition formelle et précise du Cloud.
  • L’architecture générique d’une plateforme Cloud.
  • Les principales familles de Cloud : privé, public et hybride.

IaaS (Infrastructure de Service)

  • Les principales familles d’un IaaS.
  • Rôle des infrastructures low cost dans un IaaS.
  • Les fonctions essentielles remplies par une plateforme IaaS.

CaaS (Container as a Service)

  • IaaS «  Bare-Metal  » vs IaaS virtualisé vs IaaS conteneurisé.
  • Introduction aux concepts de Containers.
  • Les zones de recouvrement entre IaaS, CaaS et PaaS.

PaaS (Platform as a Service)

  • Analyse détaillée des ruptures technologiques apportées par Kubernetes.
  • Comprendre les frontières entre le CaaS et le PaaS..
  • Les fonctions de base d’un PaaS pour le déploiement et l’exploitation.

SaaS (Software as a Service)

  • Les critères d’éligibilité d’une Application au rang de SaaS.
  • Typologie des architectures SaaS : multi-entité, multi-instance, multitenancy. etc.
  • Les confusions avec ASP, Infogérance, etc.

Briques de base du Cloud Native


Microservices

  • Définition de Microservice.
  • Principes de construction d’une Architecture Microservices.
  • Avantages et limites des Microservices.

Composabilité

  • Introduction aux principes de «  Composabilité  ».
  • Les critères SoC (Separation of Concerns).
  • Les prérequis pour assurer la «  testabilité  ».

Sécabilité

  • La sécabilité entre composants.
  • Impact de la sécabilité sur les performances.
  • Les principes d’implémentation dans le Cloud.

Stateless

  • Gestion de la session utilisateur.
  • Les limites des Applications Stateless.
  • Gestion de session et maîtrise des temps de réponse.

Scalabilité

  • Scalabilité horizontale vs verticale.
  • Les limites de scalabilité «  Compute  » vs «  Data Processing  ».
  • Que penser de la scalabilité infinie ?

Testabilité

  • Les idées reçues sur les tests fonctionnels.
  • Tests de performances en environnement Cloud.
  • Les techniques d’implémentation de l’A/B Testing.

Élasticité

  • Les prérequis pour mettre en œuvre une élasticité dynamique ?
  • Avantages et inconvénients de l’élasticité programmée.
  • Réalité de l’élasticité sur AWS (Amazon Web Services).

Disponibilité

  • Comment faire de la panne un non-événement ?
  • Introduction à «  Chaos Monkey  ».
  • Disponibilité des traitements et données.

Sécurité

  • Comment gérer l’authentification et la propagation d’identité ?
  • Que penser de la gestion des autorisations centralisée ?
  • Introduction aux principes ZTA (Zero Trust Architectures)

Services métier Cloud Native


Ressources

  • Rappel des principes REST et Service REST.
  • Les bénéfices des interfaces uniformes REST.
  • Principe de la représentation de la ressource.

API

  • Les différences entre un Service et une API.
  • La problématique de versioning d’API.
  • Les pratiques de documentation des API.

Architecture API

  • Les types d’API : P/R, R/R, Stream, etc.
  • Construction une API à scalabilité infinie.
  • Compatibilité ascendante et descendante.

API Management

Programmation avancée

  • Que penser de la programmation asynchrone réactive ?
  • Quels bénéfices de la programmation concurrentielle ?
  • Quel modèle de programmation pour quelle performance ?

Socle d’exécution

  • Les limites du serveur d’Application dans le Cloud.
  • Serveur d’applications vs frameworks Web.
  • Les bénéfices et inconvénients des VM dans des architectures ultra-performantes.

Gestion du cache

  • Rôle du cache dans les fortes montées en charge.
  • Les techniques de mise à jour du cache en temps réel.
  • Quel sont les impacts du cache sur la conception fonctionnelle ?

Serverless

  • Introduction au modèle d’exécution Serverless.
  • Quel impact sur l’industrie de conception et développement de logiciels ?
  • Exemple d’innovations à base de Serverless AWS Lambda, Google Cloud Functions.

Architectures de données Cloud Native


Traitement de la Data dans le Cloud

  • Les principes fondamentaux d’une Architecture Data sur le Cloud ?
  • Etude de cas : «  vision 360° temps réel d’un client en assurance  ».
  • Introduction aux algorithmes de Sharding.

Architectures avancées des données

  • Introduction au CQRS (Command Query Responsibility Segregation).
  • Le théorème CAP (Consistency, Availability and Partitioning).
  • Propagation des mises à jour en mode Eventual Consistency.

Le Big Data dans la pratique

  • Les seuils de volumes en Big Data.
  • Le problème des données volumineuses et multi structurées.
  • Les traitements Cloud Native de données Big Data.

Comprendre les spécificités techniques en Big Data

  • Introduction aux trois états de données.
  • Introduction aux contraintes Cloud des algorithmes.
  • Comprendre les limites du Cloud Native en Big Data.

Cloud Native face aux volumes et vitesse

  • Les nouveaux problèmes d’écriture de données persistantes en temps réel.
  • Les nouveaux moteurs SQL : NoSQL, Not Only SQL et New SQL.
  • Principaux modèles de stockage : clé/valeur, colonne, document, graphe, etc.

Architectures évoluées et traitements Big Data

Data et conformité juridique

  • Introduction aux contraintes informatiques de la GDPR.
  • Impact juridiques de la localisation des règles métier ?
  • Les limites techniques de l’application de la RGPD.
  • Les contraintes juridiques de la RGPD.
  • Comment assurer le principe de «  Compliance by Design  » ?
  • Les trois exigences DPM à respecter sur les données.

DevOps et DevSecOps


Sécurité

  • Quels ruptures dans le domaine de la sécurité ?
  • Quels nouveaux prérequis de Sécurité dans le Cloud.
  • Les nouvelles techniques pointues en Sécurité dans le Cloud.

DevOps

  • Introduction aux principes du DevOps.
  • Comment se concrétise le DevOps dans la réalité opérationnelle ?
  • Les principes du DevOps et liens avec les pratiques ITSM et l’agilité.
  • Que penser des cursus de certification ?

DevSecOps

  • Introduction aux techniques de "Security By Design" et "Privacy By Design"
  • Les pratiques modernes de gestion de la confidentialité sur Cloud publiques.
  • Les techniques évoluées de chiffrement de bout en bout.

Infrastructure As Code (IaC)

  • Introduction aux principes du IaC (Infrastructure As Code).
  • Pourquoi l’IaC est au cœur de la «  Sécurité By Design  » ?
  • Les pratiques de gouvernance de l’IaC, DevOps et SecDevOps.

« Cloudification » du Legacy


Migration de l’existant vers le Cloud

  • Description des 3 principales approches de migration.
  • Intérêt et limite de chaque approche.
  • Les limites contractuelles par approche.

Inventaire de l’existant

  • Comment choisir l’approche de portage de l’existant.
  • Comment cartographier les applications.
  • Comment cartographier les données.
  • Comment cartographier l’infrastructure.

Gouvernance de la migration

  • Le modèle de gouvernance du portage.
  • Les 10 rôles majeurs et les compétences associées.
  • Les principaux KPI à suivre.
  • Comment gérer la trajectoire et les priorités ?

L’usine de migration

  • La typologie des usines de migration.
  • Les principaux composants de l’usine.
  • Les limites de l’automatisation.
  • Les offres des géants du Web.

Marché des outils et des technologies


Ce chapitre dresse un panorama critique de l’offre actuelle du marché des outils : stratégie et typologie des acteurs et des offres, caractéristiques des offres et principales contre-indications, etc.

Synthèse et perspectives


  • La liste des chantiers organisationnels, architecturaux et technologiques à mener.
  • Les décisions majeures à prendre pour réussir la construction d’un SI nouvelle génération en mesure d’accompagner l’entreprise vers la transformation digitale dans le Cloud