Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Container Storage est un service de gestion, de déploiement et d’orchestration basé sur le cloud conçu en mode natif pour les conteneurs. Ce guide de démarrage rapide vous montre comment vous connecter à un cluster Azure Kubernetes Service (AKS) Linux, installer Azure Container Storage (version 1.x.x) et créer un pool de stockage à l’aide d’Azure CLI.
Important
Cet article explique comment installer Azure Container Storage (version 1.x.x), qui nécessite désormais explicitement un paramètre --container-storage-version 1 d’épinglage de version pour l’installation.
Azure Container Storage (version 2.x.x) est désormais disponible.
Prerequisites
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Cet article nécessite la dernière version d’Azure CLI. Découvrez comment installer Azure CLI. Si vous utilisez l’environnement Bash dans Azure Cloud Shell, la dernière version est déjà installée. Si vous envisagez d’exécuter les commandes localement au lieu d’Azure Cloud Shell, veillez à les exécuter avec des privilèges d’administration. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Vous aurez besoin du client de ligne de commande Kubernetes.
kubectlElle est déjà installée si vous utilisez Azure Cloud Shell ou si vous pouvez l’installer localement en exécutant laaz aks install-clicommande.Vérifiez si votre région cible est prise en charge dans les régions stockage de conteneurs Azure.
Si vous n’avez pas encore créé de cluster AKS, suivez les instructions pour installer un cluster AKS.
Mise en route
Notez votre ID d’abonnement Azure. Si vous souhaitez utiliser Azure Elastic SAN en tant que stockage de données, vous aurez besoin d’un rôle propriétaire du stockage de conteneurs Azure ou d’un rôle Contributeur stockage conteneur Azure affecté à l’abonnement Azure. L’accès au niveau du propriétaire vous permet d’installer l’extension Stockage conteneur Azure, d’accorder l’accès à ses ressources de stockage et de vous accorder l’autorisation de configurer votre ressource SAN élastique Azure. L’accès au niveau contributeur vous permet d’installer l’extension et d’accorder l’accès à ses ressources de stockage. Si vous envisagez d’utiliser des disques Azure ou un disque éphémère en tant que stockage de données, vous n’avez pas besoin d’autorisations spéciales sur votre abonnement.
Lancez Azure Cloud Shell, ou si vous utilisez une installation locale, connectez-vous à Azure à l’aide de la commande az login .
Si vous utilisez Azure Cloud Shell, vous serez peut-être invité à monter le stockage. Sélectionnez l’abonnement Azure dans lequel vous souhaitez créer le compte de stockage, puis sélectionnez Créer.
Installer l’extension requise
Ajoutez ou mettez à niveau vers la dernière version de k8s-extension en exécutant la commande suivante.
az extension add --upgrade --name k8s-extension
Définir le contexte d’abonnement
Définissez votre contexte d’abonnement Azure à l’aide de la az account set commande. Vous pouvez afficher les ID d’abonnement pour tous les abonnements auxquels vous avez accès en exécutant la az account list --output table commande. N’oubliez pas de remplacer <subscription-id> par votre ID d’abonnement.
az account set --subscription <subscription-id>
Se connecter au cluster
Pour vous connecter au cluster, utilisez le client de ligne de commande Kubernetes. kubectl Elle est déjà installée si vous utilisez Azure Cloud Shell ou si vous pouvez l’installer localement en exécutant la az aks install-cli commande.
Configurez
kubectlpour qu’il se connecte à votre cluster à l’aide de la commandeaz aks get-credentials. Commande suivante :- Télécharge les informations d’identification et configure l’interface CLI Kubernetes pour les utiliser.
- Utilise
~/.kube/configl’emplacement par défaut pour le fichier de configuration Kubernetes. Vous pouvez spécifier un autre emplacement pour votre fichier de configuration Kubernetes à l’aide de l’argument --file .
az aks get-credentials --resource-group <resource-group> --name <cluster-name>Pour vérifier la connexion à votre cluster, exécutez la commande
kubectl get. Cette commande renvoie la liste des nœuds de cluster.kubectl get nodesL’exemple de sortie suivant montre les nœuds de votre cluster. Vérifiez que l’état de tous les nœuds affiche Prêt :
NAME STATUS ROLES AGE VERSION aks-nodepool1-34832848-vmss000000 Ready agent 80m v1.25.6 aks-nodepool1-34832848-vmss000001 Ready agent 80m v1.25.6 aks-nodepool1-34832848-vmss000002 Ready agent 80m v1.25.6Notez le nom de votre pool de nœuds. Dans cet exemple, il s’agit de nodepool1.
Choisir une option de stockage de données pour votre pool de stockage
Avant de déployer Azure Container Storage, vous devez décider de l’option de stockage back-end que vous souhaitez utiliser pour créer votre pool de stockage et vos volumes. Trois options sont actuellement disponibles :
San élastique Azure : Azure Elastic SAN est adapté aux bases de données à usage général, aux services de diffusion en continu et de messagerie, aux environnements CI/CD et aux autres charges de travail de niveau 1/niveau 2. Le stockage est approvisionné à la demande pour chaque volume créé et chaque instantané de volume. Plusieurs clusters peuvent accéder simultanément à un seul san, mais les volumes persistants ne peuvent être attachés qu’à un seul consommateur à la fois.
Disques Azure : Les disques Azure sont adaptés aux bases de données telles que MySQL, MongoDB et PostgreSQL. Le stockage est provisionné par taille de pool de stockage de conteneur cible et taille de volume maximale.
Disque éphémère : cette option utilise des lecteurs NVMe locaux ou un disque SSD temporaire sur les nœuds du cluster AKS. Il est extrêmement sensible à la latence (latence inférieure à ms), de sorte qu’il est préférable pour les applications sans exigence de durabilité des données ou avec prise en charge de la réplication de données intégrée comme Cassandra. AKS découvre le stockage éphémère disponible sur les nœuds AKS et acquiert les lecteurs pour le déploiement de volumes.
Note
Pour Azure Elastic SAN et Disques Azure, Azure Container Storage déploiera le stockage sous-jacent pour vous lors de l'installation. Vous n’avez pas besoin de créer votre propre san élastique ou disque Azure. Pour utiliser le SAN Élastique, vous aurez besoin d’un rôle propriétaire du stockage conteneur Azure ou d’un rôle contributeur du stockage de conteneurs Azure sur l’abonnement Azure.
Consommation des ressources
Azure Container Storage nécessite que certaines ressources de nœud exécutent des composants pour le service. En fonction de votre sélection de type de pool de stockage, que vous spécifiez lors de l’installation d’Azure Container Storage, il s’agit des ressources qui seront consommées :
| Type de pool de stockage | Cœurs de processeur | RAM |
|---|---|---|
| SAN élastique Azure | Aucun | Aucun |
| Disques Azure | 1 | 1 Gio |
| Disque éphémère - SSD temporaire | 1 | 1 Gio |
| Disque éphémère - NvMe local (niveau standard) | 25 % de cœurs (le niveau de performance peut être mis à jour)* | 1 Gio |
Les ressources consommées sont par nœud et seront consommées pour chaque nœud du pool de nœuds où Le stockage conteneur Azure sera installé. Si vos nœuds n’ont pas suffisamment de ressources, Le stockage conteneur Azure ne peut pas s’exécuter. Kubernetes tente automatiquement d’initialiser ces pods ayant échoué. Par conséquent, si les ressources sont libérées, ces pods peuvent être initialisés à nouveau.
Dans un type de pool de stockage de disque éphémère - NVMe local avec le niveau de performance standard (par défaut), si vous utilisez plusieurs types de SKU de VM pour vos nœuds de cluster, les 25 % de cœurs de CPU consommés s'appliquent à la plus petite SKU utilisée. Par exemple, si vous utilisez un mélange de types de machines virtuelles 8 cœurs et 16 cœurs, la consommation de ressources est de 2 cœurs. Vous pouvez mettre à jour le niveau de performances pour utiliser un pourcentage plus élevé de cœurs et obtenir des E/S par seconde supérieures.
Vérifiez que le type de machine virtuelle pour votre cluster répond aux critères suivants
Pour utiliser Stockage conteneur Azure, vous aurez besoin d’un pool de nœuds d’au moins trois machines virtuelles Linux. Chaque machine virtuelle doit avoir au moins quatre processeurs virtuels (processeurs virtuels). Le stockage de conteneurs Azure consomme un cœur pour le traitement des E/S sur chaque machine virtuelle où l’extension est déployée.
Suivez ces instructions lors du choix d’un type de machine virtuelle pour les nœuds de cluster. Vous devez choisir un type de machine virtuelle qui prend en charge le stockage Premium Azure.
- Si vous envisagez d'utiliser Azure Elastic SAN ou Disques Azure comme stockage de soutien, choisissez un type de machine virtuelle à usage général tel que standard_d4s_v5.
- Si vous envisagez d’utiliser un disque éphémère avec NVMe local, choisissez une référence SKU de machine virtuelle qui prend en charge les disques de données NVMe locaux, par exemple, les références SKU de machine virtuelle optimisées pour le stockage ou les références SKU de machine virtuelle accélérée par GPU.
- Si vous envisagez d’utiliser le disque éphémère avec ssd temporaire, choisissez une machine virtuelle avec un disque SSD temporaire tel que Ev3 et Esv3-series.
Installer Azure Container Storage sur votre cluster AKS
La commande d’installation est différente selon que vous disposez déjà d’une instance en préversion d’Azure Container Storage s’exécutant sur votre cluster AKS ou si vous installez Azure Container Storage sur le cluster pour la première fois.
Mettre à niveau une installation en version préliminaire vers la version de disponibilité générale
Si vous disposez déjà d’une instance en préversion d’Azure Container Storage s’exécutant sur votre cluster, nous vous recommandons de mettre à jour vers la dernière version en disponibilité générale (GA) en exécutant la commande suivante. Si vous installez Azure Container Storage pour la première fois sur le cluster, passez à l’installation d’Azure Container Storage et créez un pool de stockage. Vous pouvez également installer Azure Container Storage sur des pools de nœuds spécifiques.
az k8s-extension update --cluster-type managedClusters --cluster-name <cluster-name> --resource-group <resource-group> --name azurecontainerstorage --version 1.1.0 --auto-upgrade false --release-train stable
N’oubliez pas de remplacer <cluster-name> et <resource-group> par vos propres valeurs.
Installer Azure Container Storage et créer un pool de stockage
Avant d’installer, vérifiez que votre cluster AKS répond aux exigences de la machine virtuelle.
Exécutez la commande suivante pour installer Azure Container Storage sur le cluster et créer un pool de stockage. Remplacez <cluster-name> et <resource-group> par vos propres valeurs. Remplacer <storage-pool-type> par azureDisk, ephemeralDiskou elasticSan. Si vous sélectionnez ephemeralDisk, vous pouvez également spécifier --storage-pool-option, et les valeurs peuvent être NVMe ou Temp.
L’exécution de cette commande active Azure Container Storage sur le pool de nœuds système, qui est nommé nodepool1*par défaut. Si vous souhaitez l’activer sur d’autres pools de nœuds, consultez Installer Azure Container Storage sur des pools de nœuds spécifiques. Si vous souhaitez spécifier des paramètres supplémentaires, consultez les paramètres du pool de stockage Stockage Conteneur Azure.
*S’il existe des pools de nœuds existants avec l’étiquette acstor.azure.com/io-engine:acstor , Azure Container Storage y sera installé par défaut. Sinon, il est installé sur le pool de nœuds du système.
Important
Si vous avez créé votre cluster AKS à l’aide du portail Azure : Le cluster aura probablement un pool de nœuds utilisateur et un pool de nœuds système/agent. Toutefois, si votre cluster se compose uniquement d’un pool de nœuds système, qui est le cas avec des clusters de test/développement créés avec le portail Azure, vous devez d’abord ajouter un nouveau pool de nœuds utilisateur , puis l’étiqueter. Cela est dû au fait que lorsque vous créez un cluster AKS à l’aide du portail Azure, une teinte CriticalAddOnsOnly est ajoutée au pool de nœuds système/agent, ce qui bloque l’installation d’Azure Container Storage sur le pool de nœuds système. Cette taint n’est pas ajoutée lorsqu’un cluster AKS est créé à l’aide d’Azure CLI.
Si vous utilisez un cluster AKS multizone avec Azure Elastic SAN : Vous devrez utiliser un SAN élastique de stockage redondant de zone (ZRS). La valeur par défaut d’un pool de stockage SAN élastique est un stockage localement redondant (LRS). Pour activer ZRS pour un SAN élastique, utilisez elasticSan comme type de pool de stockage et ajoutez l’indicateur --storage-pool-sku Premium_ZRS à la commande CLI suivante.
az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type> --container-storage-version 1
Le déploiement prend 10 à 15 minutes. Une fois l’opération terminée, vous disposez d’un cluster AKS avec Azure Container Storage installé, les composants de votre type de pool de stockage choisi activés et un pool de stockage par défaut. Si vous souhaitez activer des types de pool de stockage supplémentaires pour créer des pools de stockage supplémentaires, consultez Activer des types de pool de stockage supplémentaires.
Important
Si vous avez spécifié Azure Elastic SAN comme stockage de support pour votre pool de stockage et que vous n'avez pas le rôle Azure Container Storage Owner ou le rôle Azure Container Storage Contributor attribué à l'abonnement Azure, l'installation d'Azure Container Storage échouera et un pool de stockage ne sera pas créé. Si vous essayez d’activer Azure Elastic SAN en tant que type de pool de stockage supplémentaire sans l’un de ces rôles, vos pools d’installation et de stockage précédents ne seront pas affectés et un pool de stockage SAN élastique ne sera pas créé.
Installer Azure Container Storage sur des pools de nœuds spécifiques
Si vous souhaitez installer Azure Container Storage sur des pools de nœuds spécifiques, suivez ces instructions. Les pools de nœuds doivent contenir au moins trois machines virtuelles Linux.
Exécutez la commande suivante pour afficher la liste des pools de nœuds disponibles. Remplacez
<resource-group>et<cluster-name>par vos propres valeurs.az aks nodepool list --resource-group <resource-group> --cluster-name <cluster-name>Exécutez la commande suivante pour installer Azure Container Storage sur des pools de nœuds spécifiques. Remplacez
<cluster-name>et<resource-group>par vos propres valeurs. Remplacer<storage-pool-type>parazureDisk,ephemeralDiskouelasticSan. Si vous sélectionnezephemeralDisk, vous pouvez également spécifier --storage-pool-option, et les valeurs peuvent êtreNVMeouTemp.az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type> --container-storage-version 1 --azure-container-storage-nodepools <comma separated values of nodepool names>
Activer des types de pool de stockage supplémentaires
Si vous souhaitez activer un type de pool de stockage qui n’a pas été activé à l’origine pendant l’installation d’Azure Container Storage, exécutez la commande suivante. Remplacez <cluster-name> et <resource-group> par vos propres valeurs. Pour <storage-pool-type>, spécifiez azureDisk, ephemeralDiskou elasticSan.
Si vous souhaitez spécifier des paramètres de pool de stockage supplémentaires avec cette commande, consultez ce tableau.
az aks update -n <cluster-name> -g <resource-group> --enable-azure-container-storage <storage-pool-type> --container-storage-version 1
Si le nouveau type de pool de stockage que vous avez activé prend plus de ressources que le type de pool de stockage déjà activé, la consommation de ressources passe à la quantité maximale.
Conseil / Astuce
Si vous avez ajouté un nouveau pool de nœuds à votre cluster et que vous souhaitez exécuter Stockage conteneur Azure sur ce pool de nœuds, vous pouvez spécifier le pool de nœuds avec --azure-container-storage-nodepools <nodepool-name> lors de l'exécution de la commande az aks update.
Afficher les pools de stockage disponibles
Pour obtenir la liste des pools de stockage disponibles, exécutez la commande suivante :
kubectl get sp -n acstor
Pour vérifier l’état d’un pool de stockage, exécutez la commande suivante :
kubectl describe sp <storage-pool-name> -n acstor
Si le Message n'indique pas StoragePool is ready, alors votre pool de stockage est toujours en cours de création ou a rencontré un problème. Consultez Résoudre les problèmes liés au stockage de conteneurs Azure.
Désactiver les types de pool de stockage
Si vous n’utilisez plus de type de pool de stockage spécifique et que vous souhaitez le désactiver pour libérer des ressources dans votre pool de nœuds, exécutez la commande suivante. Remplacez <cluster-name> et <resource-group> par vos propres valeurs. Pour <storage-pool-type>, spécifiez azureDisk, ephemeralDiskou elasticSan.
az aks update -n <cluster-name> -g <resource-group> --disable-azure-container-storage <storage-pool-type>
Note
Si vous disposez d’un pool de stockage existant du type que vous essayez de désactiver, le type de pool de stockage n’est pas désactivé.
Étape suivante
Pour créer des volumes, sélectionnez le lien du type de stockage que vous avez choisi.