Notes
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.
Dans cet article, vous découvrez comment utiliser les fonctionnalités de cluster Kubernetes Nexus. Les fonctionnalités de cluster Kubernetes Nexus sont des fonctionnalités de la plateforme Nexus qui permettent aux clients d’améliorer leurs clusters Kubernetes Nexus en ajoutant des packages ou des fonctionnalités supplémentaires.
Prérequis
Avant de suivre ce guide pratique, nous vous recommandons de :
- Reportez-vous au guide de démarrage rapide du cluster Nexus Kubernetes pour obtenir une vue d’ensemble complète et des étapes impliquées.
- Veillez à respecter les conditions préalables décrites pour garantir l’implémentation fluide du guide.
- Version minimale requise de l’
networkcloud
extension az-cli :2.0.b3
Limites
- Vous pouvez créer, supprimer ou mettre à jour seulement les fonctionnalités de cluster Kubernetes dont le champ
Required
est défini surFalse
. - Lors de l’installation initiale d’une fonctionnalité de cluster Kubernetes, le nom de la fonctionnalité doit être un des noms de fonctionnalité listés dans le tableau. Pour des actions ultérieures comme les mises à jour ou les suppressions, le nom de la fonctionnalité doit être obtenu en utilisant la commande
az networkcloud kubernetescluster feature list
. - La fonctionnalité
metrics-server
ne peut pas être supprimée si un autoscaler de pod horizontal (HPA, Horizontal Pod Autoscaler) est en cours d’utilisation dans le cluster. - Les fonctionnalités de cluster Kubernetes liées au stockage, comme
csi-nfs
etcsi-volume
, ne peuvent pas être supprimées si la StorageClass correspondante est utilisée dans le cluster.
Configuration par défaut
Quand un cluster Kubernetes Nexus est déployé, la liste des fonctionnalités de cluster Kubernetes requises est installée automatiquement. Après le déploiement, vous pouvez gérer les fonctionnalités de cluster Kubernetes facultatives en les installant ou en les désinstallant (en les supprimant du cluster).
Vous ne pouvez pas contrôler l’installation des fonctionnalités de cluster Kubernetes marquées comme « Obligatoires ». Cependant, vous pouvez effectuer des opérations de création, de mise à jour et de suppression sur les fonctionnalités dont le champ « Obligatoire » est défini sur « False ». Vous avez également la possibilité de mettre à jour les fonctionnalités de cluster Kubernetes via la commande de mise à jour.
Les fonctionnalités de cluster Kubernetes suivantes sont disponibles pour chaque cluster Kubernetes Nexus. Les fonctionnalités pour lesquelles « Obligatoire » est défini sur « True » sont toujours installées par défaut et ne peuvent pas être supprimées.
Nom | Description | Obligatoire | Installé par défaut |
---|---|---|---|
azure-arc-k8sagents | Arc connecte un cluster Kubernetes Nexus | True | True |
calico | Fournit la prise en charge de l’interface CNI (Container Network Interface) | True | True |
cloud-provider-kubevirt | Prend en charge le fournisseur KubeVirt d’API de cluster (CAPI, Cluster API) pour la gestion des charges de travail basées sur des machines virtuelles dans Kubernetes | True | True |
ipam-cni-plugin | Alloue des adresses IP pour les réseaux de couche 3 connectés à des conteneurs de charge de travail quand ipamEnabled est défini sur True |
True | True |
metallb | Fournit des adresses IP externes aux services Load Balancer pour l’équilibrage de charge du trafic dans Kubernetes | True | True |
multus | Prend en charge l’attachement de plusieurs interfaces réseau à des pods Kubernetes | True | True |
node-local-dns | Déploie NodeLocal DNSCache pour améliorer les performances et la fiabilité de DNS dans le cluster Kubernetes | True | True |
sriov-dp | Déploie un plug-in CNI facultatif pour la virtualisation d’E/S d’une racine unique (SR-IOV, Single Root I/O Virtualization) pour améliorer les performances du réseau | True | True |
azure-arc-servers | Déploie des serveurs avec Azure Arc sur chaque plan de contrôle et chaque nœud de pools d’agents, ce qui permet la gestion des ressources non-Azure et des ressources Azure | False | True |
csi-nfs | Fournit un pilote CSI (Container Storage Interface) pour NFS (Network File System) afin de prendre en charge le stockage NFS dans Kubernetes | False | True |
csi-volume | Prend en charge la classe de stockage csi-nexus-volume pour les revendications de volumes persistants dans Kubernetes | False | True |
metrics-server | Déploie le serveur de métriques, qui fournit des métriques d’utilisation des ressources pour les clusters Kubernetes, comme l’utilisation du processeur et de la mémoire | False | True |
Remarque
- Pour chaque cluster, vous ne pouvez créer qu’une seule fonctionnalité de chaque type de fonctionnalité de cluster Kubernetes.
- Si vous supprimez une fonctionnalité de cluster Kubernetes avec l’attribut « Obligatoire » défini sur « False », les charts associés seront supprimés du cluster.
Comment gérer les fonctionnalités de cluster Kubernetes
Les interactions suivantes permettent la création et la gestion de la configuration des fonctionnalités de cluster Kubernetes.
Installer une fonctionnalité de cluster Kubernetes
Pour installer une fonctionnalité de cluster Kubernetes dans le cluster, utilisez la commande az networkcloud kubernetescluster feature create
. Si vous avez plusieurs abonnements Azure, vous devez spécifier l’ID d’abonnement en utilisant l’indicateur --subscription
dans la commande CLI ou en sélectionnant l’ID d’abonnement approprié avec la commande az account set.
az networkcloud kubernetescluster feature create \
--name "<FEATURE_NAME>" \
--kubernetes-cluster-name "<KUBERNETES_CLUSTER_NAME>" \
--resource-group "<RESOURCE_GROUP>" \
--location "<LOCATION>" \
--tags "<KEY1>=<VALUE1>" "<KEY2>=<VALUE2>"
- Remplacez les espaces réservés (
<FEATURE_NAME>
,<KUBERNETES_CLUSTER_NAME>
,<RESOURCE_GROUP>
,<LOCATION>
,<KEY1>=<VALUE1>
et<KEY2>=<VALUE2>
) par vos informations spécifiques.
Pour voir la liste des paramètres disponibles et leur description, exécutez la commande :
az networkcloud kubernetescluster feature create --help
Paramètres de configuration des fonctionnalités de cluster Kubernetes
Nom du paramètre | Description |
---|---|
FEATURE_NAME | Nom de la feature de cluster Kubernetes |
KUBERNETES_CLUSTER_NAME | Nom du cluster |
LOCATION | Région Azure où le cluster est déployé |
RESOURCE_GROUP | Le nom du groupe de ressources du cluster |
KEY1 | Étiquette1 facultative à passer lors de la création de la fonctionnalité de cluster Kubernetes |
VALUE1 | Valeur de étiquette1 facultative à passer lors de la création de la fonctionnalité de cluster Kubernetes |
KEY2 | Étiquette2 facultative à passer lors de la création de la fonctionnalité de cluster Kubernetes |
VALUE2 | Valeur de étiquette2 facultative à passer lors de la création de la fonctionnalité de cluster Kubernetes |
La spécification des options --no-wait --debug
dans une commande az provoque l’exécution asynchrone de cette commande. Pour obtenir plus d’informations, consultez comment effectuer le suivi des opérations asynchrones.
Lister la fonctionnalité de cluster Kubernetes
Vous pouvez rechercher les ressources de fonctionnalité de cluster Kubernetes pour un cluster spécifique en utilisant la commande az networkcloud kubernetescluster feature list
. Cette commande affiche la liste de toutes les fonctionnalités associées au cluster Kubernetes spécifié :
az networkcloud kubernetescluster feature list \
--kubernetes-cluster-name "<KUBERNETES_CLUSTER_NAME>" \
--resource-group "<RESOURCE_GROUP>"
Récupérer une fonctionnalité de cluster Kubernetes
Une fois qu’un cluster Kubernetes est créé, vous pouvez obtenir les détails d’une fonctionnalité de cluster Kubernetes spécifique en utilisant la commande networkcloud kubernetescluster feature show
. Ceci fournit des informations détaillées sur la fonctionnalité :
az networkcloud kubernetescluster feature show \
--cluster-name "<KUBERNETES_CLUSTER_NAME>" \
--resource-group "<RESOURCE_GROUP>"
Cette commande retourne une représentation JSON de la configuration des fonctionnalités de cluster Kubernetes.
Mettre à jour une fonctionnalité de cluster Kubernetes
D’une façon similaire à la création d’une fonctionnalité de cluster Kubernetes, vous pouvez effectuer une action de mise à jour pour modifier les étiquettes affectées à la fonctionnalité de cluster Kubernetes. Utilisez la commande suivante pour mettre à jour les étiquettes :
Important
- Le paramètre
name
doit correspondre au « Nom » obtenu dans la sortie de la commandeaz networkcloud kubernetescluster feature list
. Bien que le nom de la fonctionnalité fourni lors de l’installation puisse être utilisé initialement, une fois la fonctionnalité installée, un nom unique lui est affecté. Pour cette raison, utilisez toujours la commandelist
pour obtenir le nom réel de la ressource pour les opérations de mise à jour et de suppression, au lieu d’utiliser le nom initial de la fonctionnalité indiqué dans le tableau.
az networkcloud kubernetescluster feature update \
--name "<FEATURE_NAME>" \
--kubernetes-cluster-name "<KUBERNETES_CLUSTER_NAME>" \
--resource-group "<RESOURCE_GROUP>" \
--tags <KEY1>="<VALUE1>" \
<KEy2>="<VALUE2>"
La spécification des options --no-wait --debug
dans une commande az provoque l’exécution asynchrone de cette commande. Pour obtenir plus d’informations, consultez comment effectuer le suivi des opérations asynchrones.
Supprimer une fonctionnalité de cluster Kubernetes
La suppression d’une fonctionnalité de cluster Kubernetes supprime la ressource du cluster. Pour supprimer une fonctionnalité de cluster Kubernetes, utilisez la commande suivante :
Important
- Le paramètre
name
doit correspondre au « Nom » obtenu dans la sortie de la commandeaz networkcloud kubernetescluster feature list
. Bien que le nom de la fonctionnalité fourni lors de l’installation puisse être utilisé initialement, une fois la fonctionnalité installée, un nom unique lui est affecté. Pour cette raison, utilisez toujours la commandelist
pour obtenir le nom réel de la ressource pour les opérations de mise à jour et de suppression, au lieu d’utiliser le nom initial de la fonctionnalité indiqué dans le tableau.
az networkcloud kubernetescluster feature delete \
--name "<FEATURE_NAME>" \
--kubernetes-cluster-name "<KUBERNETES_CLUSTER_NAME>" \
--resource-group "<RESOURCE_GROUP>"
La spécification des options --no-wait --debug
dans une commande az provoque l’exécution asynchrone de cette commande. Pour obtenir plus d’informations, consultez comment effectuer le suivi des opérations asynchrones.
Remarque
- Si vous tentez de supprimer une fonctionnalité de cluster Kubernetes pour laquelle
Required=True
, la commande va échouer et générer un message d’erreur indiquant « Suppression non autorisée pour la fonctionnalité..., car c’est une fonctionnalité obligatoire. ». - Dans ce cas, une commande show/list ultérieure va afficher un
provisioningState
avec la valeurFailed
. Il s’agit d’un problème connu. - Pour corriger le
provisioningState
, vous pouvez exécuter une commande sans opération, comme la mise à jour des étiquettes sur la fonctionnalité de cluster Kubernetes affectée. Utilisez le paramètre--tags
de la commande de mise à jour pour effectuer cette action. Cette action va réinitialiser leprovisioningState
enSucceeded
.