Déploiement Kubeflow
Cette section décrit les tâches à effectuer pour déployer Kubeflow dans votre cluster Kubernetes.
Prérequis
Avant d'effectuer l'exercice de déploiement décrit dans cette section, nous supposons que vous avez déjà effectué les tâches suivantes :
-
Vous disposez déjà d'un cluster Kubernetes en fonctionnement et vous exécutez une version de Kubernetes prise en charge par la version Kubeflow que vous envisagez de déployer. Pour obtenir la liste des versions Kubernetes prises en charge, reportez-vous aux dépendances de votre version Kubeflow dans le "Documentation officielle Kubeflow".
-
Vous avez déjà installé et configuré NetApp Trident dans votre cluster Kubernetes. Pour plus de détails sur Trident, reportez-vous au "Documentation Trident".
Définissez la classe de stockage Kubernetes par défaut
Avant de déployer Kubeflow, nous vous recommandons de désigner une classe de stockage par défaut dans votre cluster Kubernetes. Le processus de déploiement Kubeflow peut tenter de provisionner de nouveaux volumes persistants à l'aide de la classe de stockage par défaut. Si aucune classe de stockage n'est désignée comme classe de stockage par défaut, le déploiement risque d'échouer. Pour désigner une classe de stockage par défaut dans votre cluster, effectuez la tâche suivante à partir de l'hôte de démarrage du déploiement. Si vous avez déjà désigné une classe de stockage par défaut dans votre cluster, vous pouvez ignorer cette étape.
-
Désignez une des classes de stockage existantes comme classe de stockage par défaut. Les exemples de commandes ci-dessous montrent la désignation d'une classe de stockage nommée
ontap-ai-flexvols-retain
Comme classe de stockage par défaut.
Le ontap-nas-flexgroup Le type de volume interne Trident a une taille de volume persistant minimale et est relativement élevée. Par défaut, Kubeflow tente de provisionner des demandes de volume qui n'ont que quelques Go. Par conséquent, vous ne devez pas désigner une classe de stockage utilisant le ontap-nas-flexgroup Taper back-end comme classe de stockage par défaut pour le déploiement Kubeflow.
|
$ kubectl get sc NAME PROVISIONER AGE ontap-ai-flexgroups-retain csi.trident.netapp.io 25h ontap-ai-flexgroups-retain-iface1 csi.trident.netapp.io 25h ontap-ai-flexgroups-retain-iface2 csi.trident.netapp.io 25h ontap-ai-flexvols-retain csi.trident.netapp.io 3s $ kubectl patch storageclass ontap-ai-flexvols-retain -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}' storageclass.storage.k8s.io/ontap-ai-flexvols-retain patched $ kubectl get sc NAME PROVISIONER AGE ontap-ai-flexgroups-retain csi.trident.netapp.io 25h ontap-ai-flexgroups-retain-iface1 csi.trident.netapp.io 25h ontap-ai-flexgroups-retain-iface2 csi.trident.netapp.io 25h ontap-ai-flexvols-retain (default) csi.trident.netapp.io 54s
Options de déploiement Kubeflow
Il existe de nombreuses options de déploiement Kubeflow. Reportez-vous à la "Documentation officielle Kubeflow" pour obtenir une liste d'options de déploiement, choisissez l'option qui correspond le mieux à vos besoins.
À des fins de validation, nous avons déployé Kubeflow 1.7 avec "DeployKF" 0.1.1. |