SlideShare une entreprise Scribd logo
1  sur  29
Déploiement demodèle
Machine Learning avec
Kubernetes
Partie1:FondamentauxdeDockeretKubernetes
Ibrahima MBODJI
Azure Solutions Architect
Abdoulaye FAYE
Data Scientist
PLAN
Microservices: Avantages
et Défis
développement logiciel 01
Evolution du
Introduction aux
conteneurs
Introduction à
Kubernetes
04
05
06 Kubernetes dans le
cloud: Focus sur Azure
Introduction au Devops
02
03
Evolution du
développement logiciel
01
Processus de Développement logiciel
Processus de Développement logiciel
Methodologies agiles
02
Microservices: Avantages
et Défis
MicroServices
Microservices :Avantages
Mise sur le
marché plus
rapide
Haute
évolutivité
Facilité de
déploiement
Accessible Plus d'Ouverture
Résilient
Microservices :Défis
- Gestion des base de
données
- Gestion des
dépendances
- Gestion de la sécurité
-
- Et ...
03
Introduction au Devops
Introduction au devops
DevOps signifie littéralement la combinaison du développement et
des opérations. Plus précisément, DevOps est l’union des
personnes, des processus et des outils pour fournir des logiciels
plus rapidement, plus fréquemment et de manière plus fiable.
DevOps est plus une question d’un ensemble de pratiques
culturelles que sur des outils ou des implémentations spécifiques.
DevOps
GENS
Collaborer davantage
Partager des objectifs communs
Mettre l’accent sur
l’amélioration
RASSEMBLER LES GENS
PROCESS
Éliminer les déchets
Augmenter l’efficacité
Rationaliser la rétroaction
OFFRIR DE LA VALEUR PLUS
RAPIDEMENT
OUTILS
Améliorer la productivité
Permettre la collaboration
Faciliter l’expérimentation
EXÉCUTION D’UNE STRATÉGIE
DEVOPS
Outillage Devops
Développement de logiciels
Release Management Monitoring
Deployment
Infrastructure
Provisionning
App Configuration
System
configuration
Telemetry
Technical
Monitoring
Storyboarding Source Control
Management
Software
Design
Agile
Portfolio
Management
CI/CD
Implementat
ions
Technical
Debt
Management
Feedback
Mecanisms
Code
Analysis
Test /Change
Management
*These practices are highly correlated with the stage
Les équipes de
développement
d’applications utilisent le
contrôle de version
Les équipes se déploient
sur un ensemble
standard de systèmes
d’exploitation
Étape 1 : Normalisation
La surveillanceet les alertes sont configurables par l’équipe qui opère le service
Réutiliser les modèles de déploiement pour la création d’applications ou de services
Réutiliser les modèles de test pour la création d’applications ou de services
Les équipes apportent des améliorations à l’outillagefourni par d’autres équipes Les configurations sont
gérées par un outil de gestion de la configuration
Les équipes se déploient
sur un seul système
d’exploitation standard
S’appuyersur un ensemble
standard de technologie
Les individus peuvent faire le
travail sans approbation
manuelle à l’extérieur de
l’équipe
Les modèles de déploiement
pour la création
d’applications/services sont
réutilisés
Les modifications apportées à
l’infrastructure sont testées
avant le déploiement
à la production*
Les interventions en cas
d’incidentsont automatisées
Les ressourcessont
disponibles par l’entremise
du libre-service
Les applications sont
déployées en fonction
des besoins de
l’entreprise*
Les équipes de sécurité
sont impliquées dans la
conception technologique
développement*
Stage 2:Standardization
Étape 3 : Expansion
Étape 4 : Livraison
automatisée de
l’infrastructure
Étape 5 : Libre-service
Étape0 : Jeter les bases
Les configurations du système
sont automatisées
L’approvisionnement est
automatisé
Les configs système sont en
contrôle de version*
Les équipes d’infrastructure
utilisent le contrôle de version*
Les configs d’application sont
dans le contrôle de version*
Les configs des stratégies de
sécurité sont automatisées
Etapes de mise en place
04
Introduction au conteneurs
Introduction au conteneurs
Introduction au conteneurs
Introduction au conteneurs
Architecture de
Docker
05
Introduction à Kubernetes
Introduction à Kubernetes
• Crée par Google 2003-2004
• Rendu Open source en 2014 et
adopté par des grandes entreprise
(Microsoft, RedHat, IBM, Docker etc..)
• Kubernetes V1 en 2015
• Adopté par le CNCF en 2015
Introduction à Kubernetes
Architecture de
Kubernetes
Kubernetes dans le cloud:
Focus sur Azure
06
Service Azure Kubernetes (AKS)
Service Kubernetes hautement
disponible, sécurisé et complètement
managé
Favoriser la portabilité des
charges de travail.
Mettre à l’échelle facilement les
conteneurs
Créer des applications plus
extensibles
Microservices avec AKS
Devops avec AKS
DevSecOps pour AKS
Entraînement de modèles Machine Learning avec AKS
Liens Utiles
https://azuredevopslabs.com/labs/vstsextend/kubernetes/
https://azuredevopslabs.com/labs/vstsextend/kubernetes/documentation/
https://kubernetes.io/fr/docs/tutorials/kubernetes-basics/
https://azure.microsoft.com/fr-fr/services/kubernetes-service/#solution-architectures
https://azure.microsoft.com/fr-fr/topic/what-is-kubernetes/#devops-and-kubernetes
https://www.docker.com/resources/what-container
https://docs.docker.com/get-started/
https://azuredevopslabs.com//labs/java/builddocker/
https://azuredevopslabs.com//labs/vstsextend/docker/
https://azure.microsoft.com/en-us/resources/kubernetes-learning-path/
Does anyone have any
questions?
MERCI

Contenu connexe

Similaire à Déploiement de Modèles Machine Learning avec Kubernetes

Présentation DEVOPSS.pptx
Présentation DEVOPSS.pptxPrésentation DEVOPSS.pptx
Présentation DEVOPSS.pptxZALIMAZA
 
Présentation DEVOPS_Black.pptx
Présentation DEVOPS_Black.pptxPrésentation DEVOPS_Black.pptx
Présentation DEVOPS_Black.pptxZALIMAZA
 
Présentation DEVOPS_Mauritanie.pptx
Présentation DEVOPS_Mauritanie.pptxPrésentation DEVOPS_Mauritanie.pptx
Présentation DEVOPS_Mauritanie.pptxZALIMAZA
 
Présentation DEVOPS-Majeur.pptx
Présentation DEVOPS-Majeur.pptxPrésentation DEVOPS-Majeur.pptx
Présentation DEVOPS-Majeur.pptxZALIMAZA
 
Présentation DEVOPS_.pptx
Présentation DEVOPS_.pptxPrésentation DEVOPS_.pptx
Présentation DEVOPS_.pptxZALIMAZA
 
Présentation DEVOPS_hyper.pptx
Présentation DEVOPS_hyper.pptxPrésentation DEVOPS_hyper.pptx
Présentation DEVOPS_hyper.pptxZALIMAZA
 
Présentation DEVOPS_Kola.pptx
Présentation DEVOPS_Kola.pptxPrésentation DEVOPS_Kola.pptx
Présentation DEVOPS_Kola.pptxssuserf298861
 
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...Philippe Beraud
 
Formation devops par la pratique
Formation devops par la pratiqueFormation devops par la pratique
Formation devops par la pratiqueKhaled Ben Driss
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...Publicis Sapient Engineering
 
AGILLY Securité du Cloud.pptx
AGILLY Securité du Cloud.pptxAGILLY Securité du Cloud.pptx
AGILLY Securité du Cloud.pptxGerard Konan
 
Xebicon architectures microservices azure v1.0
Xebicon   architectures microservices azure v1.0Xebicon   architectures microservices azure v1.0
Xebicon architectures microservices azure v1.0Michel HUBERT
 
Introduction à DevOps
Introduction à DevOpsIntroduction à DevOps
Introduction à DevOpsMicrosoft
 
Continuous monitoring: Dev to Ops
Continuous monitoring: Dev to OpsContinuous monitoring: Dev to Ops
Continuous monitoring: Dev to OpsManon PERNIN
 
Continuous monitoring : Dev to Ops
Continuous monitoring : Dev to OpsContinuous monitoring : Dev to Ops
Continuous monitoring : Dev to OpsCellenza
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimLaurent Broudoux
 
Microsoft Azure dev Ops pour le Cloud... et réciproquement…
Microsoft Azure dev Ops pour le Cloud... et réciproquement…Microsoft Azure dev Ops pour le Cloud... et réciproquement…
Microsoft Azure dev Ops pour le Cloud... et réciproquement…Microsoft
 
Microsoft Azure : DevOps pour le Cloud... et réciproquement…
Microsoft Azure : DevOps pour le Cloud... et réciproquement…Microsoft Azure : DevOps pour le Cloud... et réciproquement…
Microsoft Azure : DevOps pour le Cloud... et réciproquement…Microsoft Technet France
 
Tour de France Azure PaaS 4/7 Sécuriser la solution
Tour de France Azure PaaS 4/7 Sécuriser la solutionTour de France Azure PaaS 4/7 Sécuriser la solution
Tour de France Azure PaaS 4/7 Sécuriser la solutionAlex Danvy
 

Similaire à Déploiement de Modèles Machine Learning avec Kubernetes (20)

Présentation DEVOPSS.pptx
Présentation DEVOPSS.pptxPrésentation DEVOPSS.pptx
Présentation DEVOPSS.pptx
 
Présentation DEVOPS_Black.pptx
Présentation DEVOPS_Black.pptxPrésentation DEVOPS_Black.pptx
Présentation DEVOPS_Black.pptx
 
Présentation DEVOPS_Mauritanie.pptx
Présentation DEVOPS_Mauritanie.pptxPrésentation DEVOPS_Mauritanie.pptx
Présentation DEVOPS_Mauritanie.pptx
 
Présentation DEVOPS-Majeur.pptx
Présentation DEVOPS-Majeur.pptxPrésentation DEVOPS-Majeur.pptx
Présentation DEVOPS-Majeur.pptx
 
Présentation DEVOPS_.pptx
Présentation DEVOPS_.pptxPrésentation DEVOPS_.pptx
Présentation DEVOPS_.pptx
 
Présentation DEVOPS_hyper.pptx
Présentation DEVOPS_hyper.pptxPrésentation DEVOPS_hyper.pptx
Présentation DEVOPS_hyper.pptx
 
Présentation DEVOPS_Kola.pptx
Présentation DEVOPS_Kola.pptxPrésentation DEVOPS_Kola.pptx
Présentation DEVOPS_Kola.pptx
 
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
 
Formation devops par la pratique
Formation devops par la pratiqueFormation devops par la pratique
Formation devops par la pratique
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
 
AGILLY Securité du Cloud.pptx
AGILLY Securité du Cloud.pptxAGILLY Securité du Cloud.pptx
AGILLY Securité du Cloud.pptx
 
Xebicon architectures microservices azure v1.0
Xebicon   architectures microservices azure v1.0Xebicon   architectures microservices azure v1.0
Xebicon architectures microservices azure v1.0
 
Cloud migration
Cloud migrationCloud migration
Cloud migration
 
Introduction à DevOps
Introduction à DevOpsIntroduction à DevOps
Introduction à DevOps
 
Continuous monitoring: Dev to Ops
Continuous monitoring: Dev to OpsContinuous monitoring: Dev to Ops
Continuous monitoring: Dev to Ops
 
Continuous monitoring : Dev to Ops
Continuous monitoring : Dev to OpsContinuous monitoring : Dev to Ops
Continuous monitoring : Dev to Ops
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - Ensim
 
Microsoft Azure dev Ops pour le Cloud... et réciproquement…
Microsoft Azure dev Ops pour le Cloud... et réciproquement…Microsoft Azure dev Ops pour le Cloud... et réciproquement…
Microsoft Azure dev Ops pour le Cloud... et réciproquement…
 
Microsoft Azure : DevOps pour le Cloud... et réciproquement…
Microsoft Azure : DevOps pour le Cloud... et réciproquement…Microsoft Azure : DevOps pour le Cloud... et réciproquement…
Microsoft Azure : DevOps pour le Cloud... et réciproquement…
 
Tour de France Azure PaaS 4/7 Sécuriser la solution
Tour de France Azure PaaS 4/7 Sécuriser la solutionTour de France Azure PaaS 4/7 Sécuriser la solution
Tour de France Azure PaaS 4/7 Sécuriser la solution
 

Déploiement de Modèles Machine Learning avec Kubernetes

Notes de l'éditeur

  1. Telemetry : Logs collection User stories are great at capturing product functionality. But they are less suited to describe complex user interactions. This is where scenarios and storyboards come into play: Both are great tools to describe the interaction steps. In this post, I explain what scenarios and storyboards are, how they can be used effectively in an agile context, and how they relate to user stories. Read more at: https://www.romanpichler.com/blog/agile-scenarios-and-storyboards/ Copyright © Pichler Consulting
  2. Foundational Practices of DevOps 2018 State of DevOps report - https://puppet.com/resources/whitepaper/state-of-devops-report
  3. Introduction à la terminologie de Docker et Kubernetes Docker: Docker est une technologie logicielle, qui fournit la virtualisation au niveau du système d’exploitation pour déployer facilement des applications dans un bac à sable (appelé conteneurs) pour fonctionner sur Linux. Images : Une image est un modèle lu uniquement, avec les instructions nécessaires à l’application. Conteneurs : Fournit un environnement isolé dans lequel une application ainsi que son environnement sont exécutés. Kubernetes : Kubernetes est un système open source pour gérer les applications conteneurisées sur plusieurs hôtes, fournissant des mécanismes de base pour le déploiement, la maintenance et l’échelle des applications. Pods: A Pod est le bloc de base de Kubernetes et représente une unité exécutable de l’œuvre. Un pod contient généralement un seul récipient. Services : Un service informe les autres pods des services fournis par votre application. Déploiements : un contrôleur de déploiement fournit des mises à jour déclaratives pour les pods Fichier Manifeste Kubernetes : Kubernetes se manifeste par des déploiements, tandis que les services et les pods peuvent être définis en json ou en yaml. Les extensions de fichiers .yaml, .yml, et .json peuvent être utilisées.
  4. Data Flow Les développeurs utilisent l’IDE comme Visual Studio pour valider les modifications apportées à GitHub. GitHub déclenche une nouvelle build sur Azure DevOps. Azure DevOps crée des packages de microservices en tant que conteneurs et les transmet à Azure Container Registry. Les conteneurs sont déployés sur le cluster AKS. Les utilisateurs accèdent aux services via des applications et un site web. Azure Active Directory est utilisé pour sécuriser l’accès aux ressources. Les microservices utilisent des bases de données pour stocker et récupérer les informations requises. L’administrateur accède aux données via un portail d’administration distinct.
  5. Data Flow Les développeurs utilisent l’IDE comme Visual Studio pour valider les modifications apportées à GitHub. GitHub déclenche une nouvelle build sur Azure DevOps. Azure DevOps crée des packages de microservices en tant que conteneurs et les transmet à Azure Container Registry. Les conteneurs sont déployés sur le cluster AKS. Les utilisateurs accèdent aux services via des applications et un site web. Azure Active Directory est utilisé pour sécuriser l’accès aux ressources. Les microservices utilisent des bases de données pour stocker et récupérer les informations requises. L’administrateur accède aux données via un portail d’administration distinct.
  6. Itérez, testez et déboguez rapidement différentes parties d’une application dans le même cluster Kubernetes. 2Fusionnez et vérifiez le code dans un référentiel GitHub pour une intégration continue. Puis, exécutez des builds et tests automatisés dans le cadre d'une livraison continue. 3Vérifiez la source et l'intégrité des images de conteneur. Les images sont mises en quarantaine jusqu'à leur analyse. 4Approvisionnez des clusters Kubernetes avec des outils tels que Terraform. Les charts Helm installés par Terraform définissent l'état souhaité des ressources et configurations d'application. 5Appliquez des stratégies pour gérer les déploiements sur le cluster Kubernetes. 6Le pipeline de mise en production exécute automatiquement une stratégie de déploiement prédéfinie avec chaque code. 7Ajoutez un audit de stratégie et une correction automatique au pipeline CI/CD. Par exemple, seul le pipeline de mise en production peut créer de nouveaux pods dans votre environnement Kubernetes. 8Activez la télémétrie des applications, le contrôle d'intégrité des conteneurs ainsi que l'analytique des journaux d'activité en temps réel. 9Utilisez des insights pour résoudre les problèmes et documentez des plans pour le sprint suivant.
  7. Les développeurs itèrent, testent et déboguent rapidement différentes parties d’une application ensemble dans le même cluster Kubernetes. Le code est fusionné dans un dépôt GitHub, après quoi la solution Azure Pipelines exécute des builds et des tests automatisés. Le code est fusionné dans un dépôt GitHub, après quoi la solution Azure Pipelines exécute des builds et des tests automatisés. Le pipeline de mise en production exécute automatiquement une stratégie de déploiement prédéfinie à chaque modification du code. La télémétrie d’application, la surveillance de l’intégrité des conteneurs et l’analytique des journaux d’activité en temps réel sont obtenues à l’aide d’Azure Monitor. Data Flow Les développeurs itèrent, testent et déboguent rapidement différentes parties d’une application ensemble dans le même cluster Kubernetes. Le code est fusionné dans un dépôt GitHub, après quoi la solution Azure Pipelines exécute des builds et des tests automatisés. Le pipeline de mise en production exécute automatiquement une stratégie de déploiement prédéfinie à chaque modification du code. Les clusters Kubernetes sont approvisionnés à l’aide d’outils tels que les graphiques Helm qui définissent l’état souhaité des ressources et configurations d’application. L’image conteneur est envoyée à Azure Container Registry. Les opérateurs de cluster définissent des stratégies dans Azure Policy pour régir les déploiements sur le cluster AKS. Azure Policy audite les demandes à partir du pipeline au niveau du plan de contrôle AKS. La télémétrie d’application, la surveillance de l’intégrité des conteneurs et l’analytique des journaux d’activité en temps réel sont obtenues à l’aide d’Azure Monitor. Des insights sont utilisés pour résoudre les problèmes et alimenter les plans de sprint suivants.
  8. Data Flow Créez un package de modèle ML pour un conteneur et le publier sur ACR. Le service Stockage Blob Azure héberge les jeux de données d’apprentissage et un modèle formé. Utilisez Kubeflow pour déployer le travail d’apprentissage sur AKS. La tâche d’apprentissage distribuée à AKS comprend des serveurs de paramètres et des nœuds Worker. Traitez le modèle de production à l’aide de Kubeflow, en promouvant un environnement cohérent entre le test, le contrôle et la production. AKS prend en charge les machines virtuelles compatibles avec le processeur GPU. Le développeur peut créer des fonctionnalités qui interrogent le modèle s’exécutant dans le cluster AKS. https://www.kubeflow.org/