Déployer Milvus sur Azure avec AKS
Cette rubrique décrit comment provisionner et créer un cluster avec Azure Kubernetes Service (AKS) et le portail Azure.
Conditions préalables
Assurez-vous que votre projet Azure a été correctement configuré et que vous avez accès aux ressources que vous souhaitez utiliser. Contactez vos administrateurs si vous n'êtes pas sûr de votre autorisation d'accès.
Logiciels requis
Vous pouvez également utiliser le Cloud Shell, qui contient l'Azure CLI, kubectl et Helm préinstallés.
Provisionner un cluster Kubernetes
- Connectez-vous au portail Azure.
- Dans le menu du portail Azure ou sur la page d 'accueil, sélectionnez Créer une ressource.
- Sélectionnez Conteneurs > Service Kubernetes.
- Sur la page de base, configurez les options suivantes :
Détails du projet:
Abonnement: Contactez l'administrateur Azure de votre organisation pour déterminer l'abonnement à utiliser.
- Groupe de ressources: Contactez l'administrateur Azure de votre organisation pour déterminer le groupe de ressources à utiliser.
Détails du cluster:
Nom du cluster Kubernetes: Saisissez un nom de cluster.
Région: Sélectionnez une région.
Zones de disponibilité: Sélectionnez les zones de disponibilité dont vous avez besoin. Pour les clusters de production, nous vous recommandons de sélectionner plusieurs zones de disponibilité.
Pool de nœuds primaires:
Taille du nœud: Nous vous recommandons de choisir des machines virtuelles dotées d'un minimum de 16 Go de RAM, mais vous pouvez choisir la taille des machines virtuelles selon vos besoins.
Méthode de mise à l'échelle: Choisissez une méthode de mise à l'échelle.
Node count range (Nombre de nœuds) : Sélectionnez une fourchette pour le nombre de nœuds.
Pools de nœuds:
Activer les nœuds virtuels: Cochez la case pour activer les nœuds virtuels.
Activer les jeux d'échelle de machines virtuelles: Nous vous recommandons de choisir
enabled
.
Réseau:
Configuration du réseau: Nous vous recommandons de choisir
Kubenet
.Préfixe de nom DNS: Entrez un préfixe de nom DNS.
Routage du trafic:
Équilibreur de charge:
Standard
.Routage de l'application HTTP: Non requis.
- Après avoir configuré les options, cliquez sur Review + create, puis sur Create lorsque la validation est terminée. La création du cluster prend quelques minutes.
Se connecter au cluster
- Naviguez jusqu'au cluster que vous avez créé dans les services Kubernetes et cliquez dessus.
- Dans le volet de navigation de gauche, cliquez sur
Overview
. - Sur la page d'aperçu qui s'affiche, cliquez sur Connecter pour afficher le groupe de ressources et l'abonnement.
Définir un abonnement et des informations d'identification
- Exécutez la commande suivante pour définir votre abonnement.
az account set --subscription EXAMPLE-SUBSCRIPTION-ID
- Exécutez la commande suivante pour télécharger les informations d'identification et configurer la CLI de Kubernetes pour qu'elle les utilise.
az aks get-credentials --resource-group YOUR-RESOURCE-GROUP --name YOUR-CLUSTER-NAME
Utilisation d'Azure Blob Storage en tant que stockage d'objets externe
Azure Blob Storage est la version Azure de AWS Simple Storage Service (S3).
- Créer un compte de stockage et un conteneur
az storage account create -n milvustesting1 -g MyResourceGroup -l eastus --sku Standard_LRS --min-tls-version TLS1_2
az storage container create -n testmilvus --account-name milvustesting1
- Obtenir la clé secrète, utiliser la première valeur
az storage account keys list --account-name milvustesting2
- Ajouter values.yaml
cluster:
enabled: true
service:
type: LoadBalancer
extraConfigFiles:
user.yaml: |+
common:
storageType: remote
minio:
enabled: false
externalS3:
enabled: true
host: core.windows.net
port: 443
rootPath: my-release
bucketName: testmilvus # the storage account container name
cloudProvider: azure
useSSL: true
accessKey: "milvustesting1" # the storage account name
secretKey: "<secret-key>"
Déployer Milvus
Le cluster Kubernetes est maintenant prêt. Déployons Milvus dès maintenant.
helm repo add milvus https://zilliztech.github.io/milvus-helm/
helm repo update
helm install -f values.yaml my-release milvus/milvus
Dans les commandes précédentes, nous ajoutons le repo des cartes Milvus Helm localement et mettons à jour le repo pour récupérer les dernières cartes. Ensuite, nous installons une instance Milvus et la nommons my-release.
Remarquez la valeur de config service.type
, qui indique que nous souhaitons exposer l'instance Milvus via un équilibreur de charge de niveau 4.
Vérifier le déploiement
Une fois que tous les pods fonctionnent, exécutez la commande suivante pour obtenir l'adresse IP externe.
kubectl get services|grep my-release-milvus|grep LoadBalancer|awk '{print $4}'
Bonjour Milvus
Veuillez vous référer à Hello Milvus, changez la valeur host en adresse IP externe, puis exécutez le code.
Prochaines étapes
Si vous souhaitez apprendre à déployer Milvus sur d'autres clouds :