La suite d'IA cloud native s'installe sur les clusters ACK Pro, ACK Serverless Pro et ACK Edge Pro exécutant Kubernetes 1.18 ou une version ultérieure. Cette rubrique explique comment installer la suite et configurer les consoles d'exploitation et de développement pour l'IA cloud native.
Prérequis
Assurez-vous que :
Vous avez créé un cluster ACK Pro, ACK Serverless Pro ou ACK Edge Pro exécutant Kubernetes 1.18 ou une version ultérieure.
(Pour la console d'exploitation de l'IA) Vous avez sélectionné les options Container Monitoring et Log Service sur la page Component Configurations lors de la création du cluster, ou installé les composants ack-arms-prometheus et loongcollector sur la page Add-ons. Consultez les rubriques Utiliser Alibaba Cloud Prometheus pour la surveillance et Collecter les journaux de conteneurs depuis un cluster ACK.
Déployer la suite
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de gauche, choisissez Applications > Cloud-native AI Suite.
Sur la page Cloud-native AI Suite, cliquez sur Deploy.
-
Sur la page de déploiement, sélectionnez les composants à installer. Consultez la section Référence des composants pour plus de détails sur la compatibilité.
Si vous sélectionnez simultanément Kube Queue , Console et Kubeflow Pipelines , le composant Arena est requis.
Cliquez sur Deploy Cloud-native AI Suite. Le système vérifie l'environnement et les dépendances, puis déploie les composants sélectionnés.
Référence des composants
Le tableau suivant répertorie tous les composants, leurs namespaces et les types de clusters pris en charge.
| Configuration | Composant | Namespace | ACK Pro | ACK Serverless Pro | ACK Edge Pro |
|---|---|---|---|---|---|
| Elasticity | ack-alibaba-cloud-metrics-adapter | kube-system | Oui | Non | Oui |
| Acceleration (accélération des données Fluid) | ack-fluid | fluid-system | Oui | Oui | Oui |
| Scheduling (planification des tâches par lots, partage GPU, planification GPU consciente de la topologie et planification NPU) | ack-ai-installer | kube-system | Oui | Non | Oui |
| Kube Queue | ack-kube-queue | kube-queue | Oui | Oui | Oui |
| Arena (CLI) | ack-arena | kube-system | Oui | Oui | Oui |
| Console (Platform for AI) | ack-pai | pai-system | Oui | Non | Oui |
| Console (AI Dashboard) | ack-ai-dashboard | kube-ai | Oui | Non | Oui |
| Console (AI Developer Console) | ack-ai-dev-console | kube-ai | Oui | Non | Oui |
| Console Data Storage | ack-mysql | kube-ai | Oui | Non | Oui |
| Workflow (Kubeflow Pipelines) | ack-ai-pipeline | kube-ai | Oui | Non | Oui |
| Monitoring | ack-arena-exporter | kube-ai | Oui | Non | Oui |
Le composant ack-pai intègre des algorithmes et moteurs optimisés par Platform for AI (PAI), notamment Data Science Workshop (DSW), Deep Learning Containers (DLC) et Elastic Algorithm Service (EAS), afin d'améliorer l'élasticité et l'efficacité du développement, de l'entraînement et de l'inférence en IA.
Pour configurer des paramètres personnalisés pour les composants de Scheduling, cliquez sur Advanced sur la page de déploiement.
Si vous avez sélectionné Arena, configurez le client Arena séparément après l'installation.
Consultez les rubriques Accélération des données Fluid, ack-ai-installer, ack-kube-queue et ack-ai-pipeline.
Configurer la console d'IA
À partir du 22 janvier 2025, la console d'IA (AI Dashboard et AI Developer Console) est disponible uniquement pour les utilisateurs figurant sur la liste d'autorisation. Les déploiements existants ne sont pas affectés. Les utilisateurs non autorisés peuvent installer et configurer la console d'IA via la communauté open source. Consultez le dépôt data-on-ack .
Autoriser la console d'IA
-
Dans la section Ecosystem Tools, sélectionnez Console. Une boîte de dialogue Note s'affiche.
Si le statut d'autorisation indique Authorized, passez directement à la section Sélectionner une méthode d'accès.
Si le statut indique Unauthorized en rouge et que le bouton OK n'est pas disponible, procédez à l'autorisation comme décrit ci-dessous.
-
Créez une stratégie personnalisée dans Resource Access Management (RAM).
Connectez-vous à la console RAM. Dans le volet de navigation de gauche, choisissez Permissions > Policies.
Cliquez sur Create Policy.
-
Sur l'onglet JSON, saisissez la stratégie suivante et cliquez sur OK. Nommez la stratégie
k8sWorkerRolePolicy-{ClusterID}.{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "cs:*", "log:GetProject", "log:GetLogStore", "log:GetConfig", "log:GetMachineGroup", "log:GetAppliedMachineGroups", "log:GetAppliedConfigs", "log:GetIndex", "log:GetSavedSearch", "log:GetDashboard", "log:GetJob", "ecs:DescribeInstances", "ecs:DescribeSpotPriceHistory", "ecs:DescribePrice", "eci:DescribeContainerGroups", "eci:DescribeContainerGroupPrice", "log:GetLogStoreLogs", "ims:CreateApplication", "ims:UpdateApplication", "ims:GetApplication", "ims:ListApplications", "ims:DeleteApplication", "ims:CreateAppSecret", "ims:GetAppSecret", "ims:ListAppSecretIds", "ims:ListUsers" ], "Resource": "*" } ] }
-
Attachez la stratégie personnalisée au rôle RAM du cluster.
Dans la console RAM, dans le volet de navigation de gauche, choisissez Identities > Roles.
Recherchez
KubernetesWorkerRole-{ClusterID}et cliquez sur Grant Permission dans la colonne Actions.Dans le panneau Grant Permission, recherchez
k8sWorkerRolePolicy-{ClusterID}.Sélectionnez la stratégie et cliquez sur Grant permissions.
Revenez à la boîte de dialogue Note et cliquez sur Authorization Check. Le statut passe à Authorized et le bouton OK devient disponible.
Sélectionner une méthode d'accès
Dans la boîte de dialogue Note, sélectionnez une méthode d'accès et cliquez sur OK.
| Méthode d'accès | Utilisation recommandée | Notes |
|---|---|---|
| Private IP | Production | Accès à la console via le réseau interne |
| Internal Domain | Production | Utilise un nom de domaine privé |
| Public Domain | Tests uniquement | Mappez le domaine public à l'adresse IP publique du SLB NGINX Ingress dans votre fichier hosts local |
Consultez la rubrique Accéder à la console d'exploitation de l'IA.
Configurer le stockage des données de la console
Après avoir sélectionné Console sous Interaction Mode, l'option Console Data Storage apparaît. Choisissez une méthode de stockage.
MySQL préinstallé (tests uniquement)
Si vous ne sélectionnez pas ApsaraDB RDS, le cluster utilise par défaut une base de données MySQL intégrée.
Cette option est recommandée uniquement pour les tests. En cas de défaillance du cluster ou de perte de stockage, les données peuvent être perdues.
Le déploiement crée un disque de 120 Go en tant que PersistentVolumeClaim (PVC) à l'aide de la StorageClass. ACK ne gère pas le cycle de vie du disque. Supprimez le disque manuellement lorsqu'il n'est plus nécessaire.
ApsaraDB RDS (production)
Utilisez ApsaraDB RDS pour les charges de travail de production.
En cas d'erreur de connexion, consultez la rubrique Résoudre les échecs de connexion aux instances .
Pour modifier la méthode de stockage, désinstallez et réinstallez la suite. Supprimez le Secretkubeai-rdsdans le namespacekube-aiavant la réinstallation, s'il existe.
Achetez une instance ApsaraDB RDS et créez une base de données ainsi qu'un compte. Consultez les rubriques Démarrage rapide pour ApsaraDB RDS et Présentation de la facturation.
Cliquez sur Deploy Cloud-native AI Suite en bas de la page de déploiement.
Dans la console ACK, cliquez sur le nom du cluster. Dans le volet de navigation de gauche, choisissez Configurations > Secrets.
Dans la liste déroulante Namespace, sélectionnez
kube-ai.Cliquez sur Create from YAML.
-
Saisissez le modèle YAML suivant pour créer un Secret nommé
kubeai-rds, puis cliquez sur Create.Paramètre Description MYSQL_HOSTLe point de terminaison de connexion ApsaraDB RDS MYSQL_DB_NAMELe nom de la base de données MYSQL_USERLe nom d'utilisateur du compte de base de données MYSQL_PASSWORDLe mot de passe du compte de base de données apiVersion: v1 kind: Secret metadata: name: kubeai-rds namespace: kube-ai type: Opaque stringData: MYSQL_HOST: "Your RDS endpoint" MYSQL_DB_NAME: "Database name" MYSQL_USER: "Database username" MYSQL_PASSWORD: "Database password"
Configurer le stockage des données de workflow
Si vous sélectionnez Kubeflow Pipelines comme moteur de workflow, l'option Workflow Data Storage apparaît. Choisissez une méthode de stockage.
MinIO préinstallé (tests uniquement)
Si vous ne sélectionnez pas OSS, le cluster utilise par défaut une instance MinIO intégrée.
Cette option est recommandée uniquement pour les tests. En cas de défaillance du cluster ou de perte de stockage, les données peuvent être perdues.
Le déploiement crée un disque de 20 Go en tant que PVC à l'aide de la StorageClass. ACK ne gère pas le cycle de vie du disque. Supprimez le disque manuellement lorsqu'il n'est plus nécessaire.
Object Storage Service (tests et production)
Utilisez Object Storage Service (OSS) pour un stockage persistant et évolutif des données de workflow.
-
Si le namespace
kube-ain'existe pas, créez-le :Le namespace
kube-aiest créé automatiquement lors du déploiement de la suite. Vérifiez son existence avant de le créer.kubectl create ns kube-ai Dans la console ACK, cliquez sur le nom du cluster. Dans le volet de navigation de gauche, choisissez Configurations > Secrets.
Dans la liste déroulante Namespace, sélectionnez
kube-ai.Cliquez sur Create from YAML.
-
Saisissez le code YAML suivant pour créer un Secret nommé
kubeai-oss, puis cliquez sur Create.Paramètre Description ENDPOINTLe point de terminaison OSS pour votre région. Consultez la rubrique Régions et points de terminaison OSS ACCESS_KEY_IDL'AccessKey ID d'un utilisateur RAM disposant de l'autorisation AliyunOSSFullAccess. Consultez la rubrique Créer une paire AccessKeyACCESS_KEY_SECRETLe secret AccessKey de l'utilisateur RAM apiVersion: v1 kind: Secret metadata: name: kubeai-oss namespace: kube-ai type: Opaque stringData: ENDPOINT: "https://oss-cn-beijing.aliyuncs.com" ACCESS_KEY_ID: "****" ACCESS_KEY_SECRET: "****" -
Après avoir créé le Secret, vérifiez qu'un bucket nommé
mlpipeline-<clusterid>apparaît dans la console OSS. Consultez la rubrique Présentation de la facturation pour plus d'informations sur la facturation OSS. Revenez à la page de déploiement et installez Kubeflow Pipelines.
Vérifier le déploiement
Après le déploiement, vérifiez que les composants sont en cours d'exécution :
Dans la console ACK, cliquez sur le nom du cluster. Dans le volet de gauche, choisissez Applications > Cloud-native AI Suite. La liste des composants affiche tous les composants installés avec leurs versions.
Confirmez que chaque composant affiche un statut de déploiement réussi. Vous pouvez Deploy ou Uninstall des composants individuels. Si une version plus récente est disponible, vous pouvez également cliquer sur Upgrade.
Si vous avez installé les consoles d'IA, cliquez sur AI Dashboard ou AI Developer Console dans le coin supérieur gauche de la page Cloud-native AI Suite pour vérifier l'accès.