Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Accélérez MLOps avec Backstage et les modèles Amazon SageMaker AI en libre-service
Ashish Bhatt, Shashank Hirematt et Shivanshu Suryakar, Amazon Web Services
Récapitulatif
Organisations qui utilisent des systèmes d'opérations d'apprentissage automatique (MLOps) sont confrontées à des défis importants en matière de mise à l'échelle, de standardisation et de sécurisation de leur infrastructure de machine learning. Ce modèle introduit une approche transformatrice qui combine Backstage
Les modules IaC pour ce modèle sont fournis dans le référentiel GitHub AWS AIOps des modules
En utilisant Backstage comme plateforme en libre-service et en intégrant des modèles d' SageMaker IA préconfigurés, vous pouvez :
Réduisez le délai de rentabilisation de vos initiatives de machine learning.
Contribuez à renforcer la cohérence de la sécurité et de la gouvernance.
Fournissez aux data scientists des environnements normalisés et conformes.
Réduisez les frais d'exploitation et la complexité de l'infrastructure.
Ce modèle fournit une solution qui répond aux défis critiques MLOps et fournit également un cadre évolutif et reproductible qui permet l'innovation tout en respectant les normes organisationnelles.
Public cible
Ce modèle est destiné à un large public impliqué dans le ML, l'architecture cloud et l'ingénierie des plateformes au sein d'une organisation. Cela consiste notamment à :
Les ingénieurs de ML qui souhaitent standardiser et automatiser les déploiements de flux de travail ML.
Les scientifiques des données qui souhaitent accéder en libre-service à des environnements ML préconfigurés et conformes.
Ingénieurs de plateforme chargés de créer et de maintenir des plateformes de développement internes et une infrastructure partagée.
Des architectes cloud qui conçoivent des solutions cloud évolutives, sécurisées et économiques pour MLOps.
DevOps ingénieurs intéressés par l'extension des pratiques d'intégration continue et de livraison continue (CI/CD) au provisionnement de l'infrastructure ML et aux flux de travail.
Responsables techniques et responsables qui supervisent les initiatives de machine learning et souhaitent améliorer la productivité, la gouvernance et les délais de mise sur le marché des équipes.
Pour plus d'informations sur MLOps les défis, les MLOps modules d' SageMaker IA et la manière dont la solution fournie par ce modèle peut répondre aux besoins de vos équipes de ML, consultez la section Informations supplémentaires.
Conditions préalables et limitations
Prérequis
AWS Identity and Access Management rôles et autorisations
(IAM) pour le provisionnement de ressources dans votre Compte AWS Compréhension des concepts d'Amazon SageMaker Studio, SageMaker des projets, des SageMaker pipelines et du SageMaker Model Registry
Compréhension des principes de l'IaC et expérience avec des outils tels que AWS Cloud Development Kit (AWS CDK)
Limites
Couverture limitée des modèles. Actuellement, la solution ne prend en charge que les AIOps modules SageMaker liés à l'IA issus de la AIOps solution
globale. D'autres modules, tels que Ray on Amazon Elastic Kubernetes Service (Amazon EKS), Apache Airflow et MLflow Finetuning for Amazon Bedrock, ne sont pas encore disponibles sous forme de modèles Backstage. Paramètres par défaut non configurables. Les modèles utilisent des configurations par défaut fixes issues des AIOps SageMaker modules, sans aucune personnalisation. Vous ne pouvez pas modifier les types d'instances, les tailles de stockage, les configurations réseau ou les politiques de sécurité via l'interface Backstage, ce qui limite la flexibilité pour des cas d'utilisation spécifiques.
AWS-support uniquement. La plateforme est conçue exclusivement pour les AWS déploiements et ne prend pas en charge les scénarios multicloud. Organisations qui utilisent des services cloud externes AWS Cloud ne peuvent pas utiliser ces modèles pour leurs besoins en infrastructure de machine learning.
Gestion manuelle des informations d'identification. Vous devez fournir manuellement vos AWS informations d'identification pour chaque déploiement. Cette solution ne permet pas d'intégration avec les fournisseurs d'identité d'entreprise ni de rotation automatique des informations d'identification. AWS IAM Identity Center
Gestion du cycle de vie limitée. Les modèles ne disposent pas de fonctionnalités complètes de gestion du cycle de vie des ressources, telles que des politiques de nettoyage automatisées, des recommandations d'optimisation des coûts et la détection de la dérive de l'infrastructure. Vous devez gérer et surveiller manuellement les ressources déployées après leur création.
Architecture
Le schéma suivant montre l'architecture de la solution pour un portail de développement unifié qui normalise et accélère le déploiement de l'infrastructure ML avec l' SageMaker IA dans tous les environnements.

Dans cette architecture :
AWS les plans de modernisation des applications
fournissent la configuration de l'infrastructure avec un cluster Amazon EKS comme base pour le framework Cloud Native Operational Excellence (CNOE) . Cette solution complète répond aux défis complexes de gestion de l'infrastructure native du cloud en fournissant une plateforme de développement interne (IDP) évolutive. Les plans proposent une approche structurée pour mettre en place une infrastructure robuste et flexible capable de s'adapter à l'évolution de vos besoins organisationnels. Le framework open source CNOE consolide les DevOps outils et résout la fragmentation de l'écosystème grâce à une approche d'ingénierie de plate-forme unifiée. En réunissant des outils et des technologies disparates, il simplifie le paysage complexe du développement cloud natif, afin que vos équipes puissent se concentrer sur l'innovation plutôt que sur la gestion de la chaîne d'outils. Le framework fournit une méthodologie standardisée pour sélectionner, intégrer et gérer les outils de développement.
Avec CNOE, Backstage est déployé en tant que out-of-the-box solution au sein du cluster Amazon EKS. Backstage est doté d'une authentification robuste via Keycloak
et de flux de travail de déploiement complets via Argo CD. Cette plate-forme intégrée crée un environnement centralisé pour gérer les processus de développement et fournit aux équipes un endroit unique pour accéder, déployer et surveiller leur infrastructure et leurs applications dans plusieurs environnements. Un GitHub référentiel contient des modèles de AIOps logiciels préconfigurés qui couvrent l'ensemble du cycle de vie de l' SageMaker IA. Ces modèles répondent aux besoins critiques en matière d'infrastructure ML, notamment le provisionnement de SageMaker Studio, la formation des modèles, les pipelines d'inférence et la surveillance des modèles. Ces modèles vous aident à accélérer vos initiatives de machine learning et à garantir la cohérence entre les différents projets et équipes.
GitHub Actions
implémente un flux de travail automatisé qui déclenche dynamiquement le provisionnement des ressources via l'utilitaire Seed-Farmer . Cette approche intègre le catalogue Backstage au référentiel des AIOps modules et crée un processus de déploiement d'infrastructure rationalisé. L'automatisation réduit les interventions manuelles, minimise les erreurs humaines et garantit une création d'infrastructure rapide et cohérente dans différents environnements. AWS CDKCela vous aide à définir et à provisionner l'infrastructure sous forme de code, et garantit un déploiement des ressources reproductible, sécurisé et conforme sur l'ensemble des spécifications Comptes AWS. Cette approche fournit une gouvernance maximale avec une intervention manuelle minimale, ce qui vous permet de créer des modèles d'infrastructure standardisés qui peuvent être facilement répliqués, contrôlés par version et audités.
Outils
Services AWS
AWS Cloud Development Kit (AWS CDK)est un framework de développement logiciel qui vous aide à définir et à provisionner AWS Cloud l'infrastructure dans le code.
Amazon Elastic Kubernetes Service (Amazon EKS) vous permet d'exécuter AWS Kubernetes sans avoir à installer ou à gérer votre propre plan de contrôle ou vos propres nœuds Kubernetes.
Amazon SageMaker AI est un service de machine learning géré qui vous aide à créer et à former des modèles de machine learning, puis à les déployer dans un environnement hébergé prêt pour la production.
Autres outils
Backstage
est un framework open source qui vous aide à créer des portails de développement internes. GitHub Actions
est une CI/CD plateforme qui automatise les flux de travail de développement de logiciels, y compris les tâches telles que la création, le test et le déploiement de code.
Référentiels de code
Ce modèle utilise le code et les modèles des GitHub référentiels suivants :
AIOps plate-forme de développement interne (IDP) avec référentiel Backstage
SageMaker Modules liés à l'IA issus du référentiel de AWS AIOps modules
Ingénierie moderne sur le AWS
référentiel
Mise en œuvre
Cette implémentation utilise un modèle de déploiement de niveau production pour Backstage, issu de l'ingénierie moderne sur le référentiel
La section Epics de ce modèle décrit l'approche de mise en œuvre. Pour obtenir des instructions de step-by-step déploiement détaillées, consultez le guide de déploiement
Déploiement initial de la plateforme Backstage
Intégration de modèles de SageMaker logiciels à Backstage
Utilisation et maintenance des modèles Backstage
Le guide de déploiement inclut également des conseils pour la maintenance continue, le dépannage et le dimensionnement de la plateforme.
Bonnes pratiques
Suivez ces bonnes pratiques pour garantir la sécurité, la gouvernance et l'excellence opérationnelle lors de la mise en œuvre de votre MLOps infrastructure.
Gestion des modèles
N'apportez jamais de modifications importantes aux modèles dynamiques.
Testez toujours les mises à jour de manière approfondie avant le déploiement en production.
Conservez des versions de modèles claires et bien documentées.
Sécurité
Épinglez GitHub les actions à des algorithmes de hachage sécurisés spécifiques (SHAs) pour aider à prévenir les attaques contre la chaîne d'approvisionnement.
Utilisez des rôles IAM dotés du moindre privilège avec des autorisations détaillées.
Stockez les informations d'identification sensibles dans GitHub Secrets
et AWS Secrets Manager. Ne codez jamais en dur les informations d'identification dans les modèles.
Gouvernance et suivi
Mettez en œuvre des normes complètes de balisage des ressources.
Permettez un suivi précis des coûts et une surveillance de la conformité.
Maintenez des pistes d'audit claires pour les modifications de l'infrastructure.
Ce guide fournit une base solide pour la mise en œuvre de ces meilleures pratiques en utilisant les modules Backstage, SageMaker AI et IaC.
Épopées
| Tâche | Description | Compétences requises |
|---|---|---|
Déployez Backstage. | Cette étape utilise les plans de l'ingénierie moderne sur L'infrastructure utilise Amazon EKS comme plate-forme d'orchestration de conteneurs pour le déploiement de composants IDP. L'architecture Amazon EKS inclut des configurations réseau sécurisées pour établir une isolation stricte du réseau et contrôler les modèles d'accès. La plateforme intègre des mécanismes d'authentification pour sécuriser l'accès des utilisateurs à tous les services et environnements. | Ingénieur de plateforme |
Configurez vos modèles d' SageMaker IA. | Cette étape utilise les scripts de la plateforme de développement GitHub AIOps interne (IDP) avec le référentiel Backstage Ce processus crée un référentiel contenant les modèles d' SageMaker IA nécessaires à l'intégration avec Backstage. | Ingénieur de plateforme |
Intégrez les modèles d' SageMaker IA à Backstage. | Suivez les instructions de la section Intégration des SageMaker modèles Cette étape intègre les AIOps modules (modèles d'SageMaker IA de la dernière étape) dans votre déploiement Backstage afin que vous puissiez répondre en libre-service à vos besoins en matière d'infrastructure ML. | Ingénieur de plateforme |
Utilisez les modèles d' SageMaker IA de Backstage. | Suivez les instructions de la section Utilisation de SageMaker modèles Dans le portail Backstage, vous pouvez choisir parmi les modèles d' SageMaker IA disponibles, notamment des options pour les environnements SageMaker Studio, les SageMaker blocs-notes, les modèles de SageMaker projets personnalisés et les pipelines de déploiement de modèles. Une fois que vous avez fourni les paramètres de configuration, la plateforme crée automatiquement des référentiels dédiés et provisionne les AWS ressources via GitHub Actions et Seed-Farmer. Vous pouvez suivre les progrès via GitHub les journaux d'actions et le catalogue de composants Backstage. | Scientifique des données, Ingénieur de données, Développeur |
| Tâche | Description | Compétences requises |
|---|---|---|
Mettez à jour les modèles d' SageMaker IA. | Pour mettre à jour un modèle d' SageMaker IA dans Backstage, procédez comme suit.
| Ingénieur de plateforme |
Créez et gérez plusieurs versions d'un modèle. | Pour des modifications importantes ou des mises à niveau, vous souhaiterez peut-être créer plusieurs versions d'un modèle d' SageMaker IA.
| Ingénieur de plateforme |
| Tâche | Description | Compétences requises |
|---|---|---|
Élargissez la couverture des modèles au-delà de SageMaker l'IA. | La solution actuelle n'implémente que des AIOps modèles SageMaker liés à l'IA. Vous pouvez étendre l'environnement ML en ajoutant des AIOps modules Vous pouvez également implémenter des modèles d'héritage pour créer des versions spécialisées des modèles de base. Cette extensibilité vous permet de gérer diverses AWS ressources et applications au-delà de l' SageMaker IA tout en préservant l'expérience simplifiée des développeurs et en respectant les normes de votre entreprise. | Ingénieur de plateforme |
Utilisez l'injection dynamique de paramètres. | Les modèles actuels utilisent des configurations par défaut sans personnalisation et exécutent la CLI Seed-Farmer pour déployer des ressources avec des variables par défaut. Vous pouvez étendre la configuration par défaut en utilisant l'injection dynamique de paramètres pour les configurations spécifiques au module. | Ingénieur de plateforme |
Améliorez la sécurité et la conformité. | Pour renforcer la sécurité lors de la création de ressources AWS, vous pouvez activer l'intégration du contrôle d'accès basé sur les rôles (RBAC) avec l'authentification unique (SSO), le SAML, OpenID Connect (OIDC) et les politiques en tant que code d'application. | Ingénieur de plateforme |
Ajoutez un nettoyage automatique des ressources. | Vous pouvez activer des fonctionnalités pour les politiques de nettoyage automatisées et également ajouter la détection et la correction des dérives de l'infrastructure. | Ingénieur de plateforme |
| Tâche | Description | Compétences requises |
|---|---|---|
Supprimez l'infrastructure des coulisses et les ressources d' SageMaker IA. | Lorsque vous avez fini d'utiliser votre environnement ML, suivez les instructions de la section Nettoyage et gestion des ressources | Ingénieur de plateforme |
Dépannage
| Problème | Solution |
|---|---|
AWS CDK échecs de bootstrap | Vérifiez les AWS informations d'identification et la configuration de la région. |
Problèmes d'accès au cluster Amazon EKS | Vérifiez la configuration de kubectl et les autorisations IAM. |
Problèmes de connectivité avec Application Load Balancer | Assurez-vous que les groupes de sécurité autorisent le trafic entrant sur le port 80/443. |
GitHub problèmes d'intégration | Vérifiez les autorisations des GitHub jetons et l'accès à l'organisation. |
SageMaker Échec du déploiement de l'IA | Vérifiez les Service AWS quotas et les autorisations IAM. |
Ressources connexes
Ingénierie de plateforme (dans le guide AWS Cloud Adoption Framework : Platform perspective)
Modèles de logiciels Backstage (site
Web Backstage) AIOps référentiel de modules
(collection de modules iAc réutilisables pour le ML) AIOps plate-forme de développement interne (IDP) avec référentiel Backstage
Ingénierie moderne sur le AWS
référentiel Site Web d'excellence opérationnelle native dans le cloud (CNOE)
Informations supplémentaires
Défis commerciaux
Organisations qui lancent ou étendent leurs MLOps initiatives sont fréquemment confrontées aux défis commerciaux et techniques suivants :
Environnements incohérents. L'absence d'environnements de développement et de déploiement standardisés complique la collaboration et augmente les risques liés au déploiement.
Frais généraux liés au provisionnement manuel. La configuration manuelle d'une infrastructure de machine learning à l'aide de SageMaker Studio, de buckets Amazon Simple Storage Service (Amazon S3), de rôles IAM et de pipelines est chronophage CI/CD et source d'erreurs, et détourne les data scientists de leur tâche principale, à savoir le développement de modèles.
Manque de découvrabilité et de réutilisation. L'absence de catalogue centralisé complique la recherche de modèles, d'ensembles de données et de pipelines de machine learning existants. Cela entraîne des tâches redondantes et des occasions manquées de réutilisation.
Gouvernance et conformité complexes. Il peut être difficile de s'assurer que les projets de machine learning respectent les politiques de sécurité organisationnelles, les réglementations en matière de confidentialité des données et les normes de conformité telles que la loi HIPAA (Health Insurance Portability and Accountability Act) et le règlement général sur la protection des données (RGPD) sans garde-fous automatisés.
Le délai de valorisation est lent. L'effet cumulatif de ces défis entraîne des cycles de vie prolongés des projets de ML et retarde la réalisation de la valeur commerciale des investissements dans le ML.
Risques liés à la sécurité. Des configurations et des processus manuels incohérents peuvent introduire des failles de sécurité qui compliquent l'application du principe du moindre privilège et l'isolation du réseau.
Ces problèmes prolongent les cycles de développement, augmentent les frais opérationnels et introduisent des risques de sécurité. La nature itérative du machine learning nécessite des flux de travail reproductibles et une collaboration efficace.
Gartner prévoit que d'ici 2026, 80 % des entreprises d'ingénierie logicielle disposeront d'équipes de plateforme. (Voir L'ingénierie des plateformes permet aux développeurs d'être meilleurs, plus rapides et plus heureux
MLOps SageMaker modules
Les AIOps modules
L'utilisation directe AIOps des modules nécessite souvent que les équipes de la plateforme déploient et gèrent ces modèles IaC, ce qui peut présenter des défis pour les data scientists qui souhaitent accéder en libre-service. La découverte et la compréhension des modèles disponibles, la configuration des paramètres nécessaires et le déclenchement de leur déploiement peuvent nécessiter de naviguer dans les Service AWS consoles ou d'interagir directement avec les outils IaC. Cela peut créer des frictions, augmenter la charge cognitive des data scientists qui préfèrent se concentrer sur les tâches de machine learning, et potentiellement entraîner un paramétrage incohérent ou des écarts par rapport aux normes organisationnelles si ces modèles ne sont pas gérés via une interface centralisée et conviviale. L'intégration de ces puissants AIOps modules à un IDP tel que Backstage permet de relever ces défis en fournissant une expérience rationalisée en libre-service, une meilleure visibilité et des contrôles de gouvernance renforcés pour l'utilisation de ces éléments de base standardisés. MLOps
Dans les coulisses en tant qu'IDP
Une plate-forme de développement interne (IDP) est une couche en libre-service créée par les équipes de plateforme pour simplifier et normaliser la façon dont les développeurs créent, déploient et gèrent les applications. Il réduit la complexité de l'infrastructure et permet aux développeurs d'accéder facilement aux outils, aux environnements et aux services via une interface unifiée.
L'objectif principal d'un IDP est d'améliorer l'expérience et la productivité des développeurs en :
Activation du libre-service pour des tâches telles que la création et le déploiement de services.
Promouvoir la cohérence et la conformité grâce à des modèles standard.
Intégrer des outils tout au long du cycle de développement (CI/CD, surveillance et documentation).
Backstage est un portail de développement open source créé par Spotify et qui fait désormais partie de la Cloud Native Computing Foundation (CNCF). Il aide les organisations à créer leur propre IDP en fournissant une plate-forme centralisée et extensible pour gérer les composants logiciels, les outils et la documentation. Avec Backstage, les développeurs peuvent :
Découvrez et gérez tous les services internes via un catalogue de logiciels.
Créez de nouveaux projets en utilisant des modèles prédéfinis via le plugin Scaffolder.
Accédez à des outils intégrés tels que des CI/CD pipelines, des tableaux de bord Kubernetes et des systèmes de surveillance à partir d'un seul endroit.
Maintenez une documentation cohérente basée sur le markdown grâce à. TechDocs
FAQ
Quelle est la différence entre l'utilisation de ce modèle Backstage et le déploiement manuel de SageMaker Studio via la SageMaker console ?
Le modèle Backstage offre plusieurs avantages par rapport au déploiement manuel sur AWS console, notamment des configurations standardisées conformes aux meilleures pratiques organisationnelles, le déploiement automatisé d'iAc à l'aide de Seed-Farmer et le AWS CDK, des politiques de sécurité et des mesures de conformité intégrées, ainsi que l'intégration aux flux de travail des développeurs de votre organisation via le biais de celui-ci. GitHub Le modèle crée également des déploiements reproductibles avec contrôle de version, ce qui facilite la réplication des environnements à différentes étapes (développement, préparation, production) et garantit la cohérence entre les équipes. En outre, le modèle inclut des fonctionnalités de nettoyage automatique et s'intègre au système de gestion des identités de votre organisation via Backstage. Le déploiement manuel via la console nécessite une AWS expertise approfondie et ne fournit pas de contrôle de version ni le même niveau de standardisation et de gouvernance que celui proposé par le modèle. Pour ces raisons, les déploiements de console sont plus adaptés aux expériences ponctuelles que les environnements ML de production.
Qu'est-ce que Seed-Farmer et pourquoi cette solution l'utilise-t-elle ?
Seed-Farmer est un outil d'orchestration de AWS déploiement qui gère les modules d'infrastructure en utilisant le. AWS CDK Ce modèle utilise Seed-Farmer car il fournit des composants d'infrastructure standardisés et réutilisables spécialement conçus pour les AI/ML charges de travail, gère Services AWS automatiquement les dépendances complexes et garantit des déploiements cohérents dans différents environnements.
Dois-je installer le pour AWS CLI utiliser ces modèles ?
Non, il n'est pas nécessaire de l'installer AWS CLI sur votre ordinateur. Les modèles s'exécutent entièrement via GitHub Actions dans le cloud. Vous fournissez vos AWS informations d'identification (clé d'accès, clé secrète et jeton de session) via l'interface Backstage, et le déploiement s'effectue automatiquement dans l'environnement GitHub Actions.
Combien de temps faut-il pour déployer un environnement SageMaker Studio ?
Un déploiement de SageMaker Studio prend généralement 15 à 25 minutes. Cela inclut le AWS CDK démarrage (2 à 3 minutes), la configuration de la chaîne d'outils Seed-Farmer (3 à 5 minutes) et la création de ressources (10 à 15 minutes). L'heure exacte dépend de votre configuration réseau Région AWS et de la complexité de celle-ci.
Puis-je déployer plusieurs SageMaker environnements dans le même environnement Compte AWS ?
Oui, vous pouvez. Chaque déploiement crée des ressources avec des noms uniques basés sur le nom du composant que vous indiquez dans le modèle. Attention toutefois aux Service AWS quotas : chaque compte peut avoir un nombre limité de SageMaker domaines par région. Vérifiez donc vos quotas avant de créer plusieurs environnements.