Mettre à jour un EKS module complémentaire Amazon - Amazon EKS

Aidez à améliorer cette page

Vous souhaitez contribuer à ce guide de l'utilisateur ? Faites défiler cette page vers le bas et sélectionnez Modifier cette page sur GitHub. Vos contributions aideront à améliorer notre guide de l'utilisateur pour tous.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mettre à jour un EKS module complémentaire Amazon

Amazon EKS ne met pas automatiquement à jour un module complémentaire lorsque de nouvelles versions sont publiées ou après la mise à jour de votre cluster vers une nouvelle Kubernetes version mineure. Pour mettre à jour un module complémentaire pour un cluster existant, vous devez lancer la mise à jour. Une fois que vous avez lancé la mise à jour, Amazon EKS met à jour le module complémentaire pour vous. Avant de mettre à jour un module complémentaire, consultez la documentation relative au module complémentaire. Pour obtenir la liste des modules complémentaires disponibles, consultez EKSModules complémentaires Amazon disponibles auprès de AWS. Si le module complémentaire nécessite un IAM rôle, consultez les détails du module complémentaire spécifique dans EKSModules complémentaires Amazon disponibles auprès de AWS pour plus de détails sur la création du rôle.

Prérequis

Avant de créer un module complémentaire, procédez comme suit :

Procédure

Vous pouvez mettre à jour un EKS module complémentaire Amazon à l'aide du eksctl AWS Management Console, ou du AWS CLI.

eksctl
Pour mettre à jour un EKS module complémentaire Amazon à l'aide de eksctl
  1. Déterminez les modules complémentaires et les versions de modules complémentaires actuellement installés sur votre cluster. Remplacez my-cluster par le nom de votre cluster.

    eksctl get addon --cluster my-cluster

    L'exemple qui suit illustre un résultat.

    NAME VERSION STATUS ISSUES IAMROLE UPDATE AVAILABLE coredns v1.8.7-eksbuild.2 ACTIVE 0 kube-proxy v1.23.7-eksbuild.1 ACTIVE 0 v1.23.8-eksbuild.2 vpc-cni v1.10.4-eksbuild.1 ACTIVE 0 v1.12.0-eksbuild.1,v1.11.4-eksbuild.1,v1.11.3-eksbuild.1,v1.11.2-eksbuild.1,v1.11.0-eksbuild.1

    Votre sortie peut être différente, en fonction des modules complémentaires et des versions dont vous disposez sur votre cluster. Vous pouvez voir que dans l'exemple de sortie précédent, deux modules complémentaires existants sur le cluster disposent de versions plus récentes disponibles dans la colonne UPDATE AVAILABLE.

  2. Mettez à jour le module complémentaire.

    1. Copiez la commande qui suit sur votre appareil. Si nécessaire, apportez les modifications suivantes à la commande :

      • Remplacez my-cluster par le nom de votre cluster.

      • region-codeRemplacez-le par Région AWS celui dans lequel se trouve votre cluster.

      • Remplacez vpc-cni par le nom d'un module complémentaire renvoyé dans la sortie de l'étape précédente que vous souhaitez mettre à jour.

      • Si vous souhaitez procéder à une mise à jour vers une version antérieure à la dernière version disponible, remplacez latest par le numéro de version renvoyé dans la sortie de l'étape précédente que vous souhaitez utiliser. Certains modules complémentaires présentent des versions recommandées. Pour plus d'informations, consultez la documentation du module complémentaire que vous mettez à jour.

      • Si le module complémentaire utilise un Kubernetes compte de service et IAM rôle, 111122223333 remplacez-les par votre identifiant de compte et role-name par le nom d'un IAM rôle existant que vous avez créé. Pour obtenir des instructions sur la création d'un rôle, consultez la documentation du module complémentaire que vous créez. Pour spécifier un rôle de compte de service, vous devez disposer d'un IAM OpenID Connect (OIDC) fournisseur pour votre cluster. Pour déterminer si vous en avez un pour votre cluster ou pour en créer un, consultez Créez un IAM OIDC fournisseur pour votre cluster.

        Si le module complémentaire n'utilise pas de Kubernetes compte de service et IAM rôle, supprimez la serviceAccountRoleARN: arn:aws:iam::111122223333:role/role-name ligne.

      • L'preserveoption préserve les valeurs existantes pour le module complémentaire. Si vous avez défini des valeurs personnalisées pour les paramètres des modules complémentaires et que vous n'utilisez pas cette option, Amazon EKS remplace vos valeurs par ses valeurs par défaut. Si vous utilisez cette option, nous vous recommandons de tester les modifications de champ et de valeur sur un cluster hors production avant de mettre à jour le module complémentaire sur votre cluster de production. Si vous remplacez cette valeur paroverwrite, tous les paramètres sont remplacés par les valeurs EKS par défaut d'Amazon. Si vous avez défini des valeurs personnalisées pour des paramètres, il est possible qu'elles soient remplacées par les valeurs EKS par défaut d'Amazon. Si vous remplacez cette valeur parnone, Amazon EKS ne modifie la valeur d'aucun paramètre, mais la mise à jour risque d'échouer. Si la mise à jour échoue, vous recevez un message d'erreur pour vous aider à résoudre le conflit.

        cat >update-addon.yaml <<EOF apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: my-cluster region: region-code addons: - name: vpc-cni version: latest serviceAccountRoleARN: arn:aws:iam::111122223333:role/role-name resolveConflicts: preserve EOF
    2. Exécutez la commande modifiée pour créer le fichier update-addon.yaml.

    3. Appliquez le fichier de configuration à votre cluster.

      eksctl update addon -f update-addon.yaml

    Pour plus d'informations sur la mise à jour des modules complémentaires, consultez la section Mise à jour des modules complémentaires dans la eksctl documentation.

AWS Management Console
Pour mettre à jour un EKS module complémentaire Amazon à l'aide du AWS Management Console
  1. Ouvrez la EKS console Amazon à l'adresse https://console.aws.amazon.com/eks/home#/clusters.

  2. Dans le panneau de navigation de gauche, choisissez Clusters.

  3. Choisissez le nom du cluster pour lequel vous souhaitez mettre à jour le module complémentaire.

  4. Choisissez l'onglet Modules complémentaires.

  5. Choisissez le module complémentaire que vous souhaitez mettre à jour.

  6. Choisissez Modifier.

  7. Sur le Configure name of addonpage, procédez comme suit :

    1. Choisissez la version que vous souhaitez utiliser. Le module complémentaire peut présenter une version recommandée. Pour plus d'informations, consultez la documentation du module complémentaire que vous mettez à jour.

    2. Pour Select IAM role, vous pouvez utiliser le IAM rôle du nœud (Non défini) ou un rôle existant que vous avez créé pour être utilisé avec le module complémentaire. S'il n'y a aucun rôle à sélectionner, vous n'avez pas de rôle existant. Quelle que soit l'option choisie, consultez la documentation du module complémentaire que vous créez pour créer une IAM politique et l'associer à un rôle. Pour sélectionner un IAM rôle, vous devez disposer d'un IAM OpenID Connect (OIDC) fournisseur pour votre cluster. Pour déterminer si vous en avez un pour votre cluster ou pour en créer un, consultez Créez un IAM OIDC fournisseur pour votre cluster.

    3. Sélectionnez Paramètres de configuration facultatifs.

    4. Dans Valeurs de configuration, entrez les informations de configuration spécifiques au module complémentaire. Pour plus d'informations, consultez la documentation du module complémentaire que vous mettez à jour.

    5. Pour Conflict resolution method (Méthode de résolution des conflits), sélectionnez l'une des options. Si vous avez défini des valeurs personnalisées pour les paramètres des modules complémentaires, nous vous recommandons l'option Preserve (Conserver). Si vous ne choisissez pas cette option, Amazon EKS remplace vos valeurs par ses valeurs par défaut. Si vous utilisez cette option, nous vous recommandons de tester les modifications de champ et de valeur sur un cluster hors production avant de mettre à jour le module complémentaire sur votre cluster de production.

  8. Sélectionnez Enregistrer les modifications.

AWS CLI
Prérequis

Version 2.12.3 ou version ultérieure 1.27.160 ou version ou ultérieure du AWS Command Line Interface (AWS CLI) installé et configuré sur votre appareil ou AWS CloudShell. Pour vérifier votre version actuelle, utilisez aws --version | cut -d / -f2 | cut -d ' ' -f1. Des gestionnaires de packages tels que yumapt-get, ou Homebrew for macOS ont souvent plusieurs versions de retard par rapport à la dernière version du AWS CLI. Pour installer la dernière version, voir Installation, mise à jour et désinstallation de AWS CLI et Configuration rapide avec aws configure dans le guide de l'utilisateur AWS Command Line Interface . La AWS CLI version installée AWS CloudShell peut également avoir plusieurs versions de retard par rapport à la dernière version. Pour le mettre à jour, consultez la section Installation AWS CLI dans votre répertoire personnel dans le guide de AWS CloudShell l'utilisateur.

Pour mettre à jour un EKS module complémentaire Amazon à l'aide du AWS CLI
  1. Consultez la liste des modules complémentaires installés. Remplacez my-cluster par le nom de votre cluster.

    aws eks list-addons --cluster-name my-cluster

    L'exemple qui suit illustre un résultat.

    { "addons": [ "coredns", "kube-proxy", "vpc-cni" ] }
  2. Affichez la version actuelle du module complémentaire que vous souhaitez mettre à jour. Remplacez my-cluster par le nom de votre cluster et vpc-cni par le nom du module complémentaire que vous souhaitez mettre à jour.

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query "addon.addonVersion" --output text

    L'exemple qui suit illustre un résultat.

    v1.10.4-eksbuild.1
  3. Déterminez les versions du module complémentaire disponibles pour la version de votre cluster. Remplacez 1.31 par la version de votre cluster et vpc-cni par le nom du module complémentaire que vous souhaitez mettre à jour.

    aws eks describe-addon-versions --kubernetes-version 1.31 --addon-name vpc-cni \ --query 'addons[].addonVersions[].{Version: addonVersion, Defaultversion: compatibilities[0].defaultVersion}' --output table

    L'exemple qui suit illustre un résultat.

    ------------------------------------------ | DescribeAddonVersions | +-----------------+----------------------+ | Defaultversion | Version | +-----------------+----------------------+ | False | v1.12.0-eksbuild.1 | | True | v1.11.4-eksbuild.1 | | False | v1.10.4-eksbuild.1 | | False | v1.9.3-eksbuild.1 | +-----------------+----------------------+

    La version avec True dans la colonne Defaultversion correspond à la version avec laquelle le module complémentaire est créé, par défaut.

  4. Mettez à jour votre module complémentaire. Copiez la commande qui suit sur votre appareil. Si nécessaire, apportez les modifications suivantes à la commande, puis exécutez la commande modifiée. Pour plus d'informations sur cette commande, consultez update-addonle manuel Amazon EKS Command Line Reference.

    • Remplacez my-cluster par le nom de votre cluster.

    • Remplacez vpc-cni par le nom du module complémentaire que vous souhaitez mettre à jour renvoyé dans la sortie d'une étape précédente.

    • Remplacez version-number par la version renvoyée dans la sortie de l'étape précédente vers laquelle vous souhaitez effectuer la mise à jour. Certains modules complémentaires présentent des versions recommandées. Pour plus d'informations, consultez la documentation du module complémentaire que vous mettez à jour.

    • Si le module complémentaire utilise un Kubernetes compte de service et IAM rôle, 111122223333 remplacez-les par votre identifiant de compte et role-name par le nom d'un IAM rôle existant que vous avez créé. Pour obtenir des instructions sur la création d'un rôle, consultez la documentation du module complémentaire que vous créez. Pour spécifier un rôle de compte de service, vous devez disposer d'un IAM OpenID Connect (OIDC) fournisseur pour votre cluster. Pour déterminer si vous en avez un pour votre cluster ou pour en créer un, consultez Créez un IAM OIDC fournisseur pour votre cluster.

      Si le module complémentaire n'utilise pas de Kubernetes compte de service et IAM rôle, supprimez la serviceAccountRoleARN: arn:aws:iam::111122223333:role/role-name ligne.

    • L'interface --resolve-conflicts PRESERVE cette option préserve les valeurs existantes pour le module complémentaire. Si vous avez défini des valeurs personnalisées pour les paramètres des modules complémentaires et que vous n'utilisez pas cette option, Amazon EKS remplace vos valeurs par ses valeurs par défaut. Si vous utilisez cette option, nous vous recommandons de tester les modifications de champ et de valeur sur un cluster hors production avant de mettre à jour le module complémentaire sur votre cluster de production. Si vous remplacez cette valeur parOVERWRITE, tous les paramètres sont remplacés par les valeurs EKS par défaut d'Amazon. Si vous avez défini des valeurs personnalisées pour des paramètres, il est possible qu'elles soient remplacées par les valeurs EKS par défaut d'Amazon. Si vous remplacez cette valeur parNONE, Amazon EKS ne modifie la valeur d'aucun paramètre, mais la mise à jour risque d'échouer. Si la mise à jour échoue, vous recevez un message d'erreur pour vous aider à résoudre le conflit.

    • Si vous souhaitez supprimer toutes les configurations personnalisées, effectuez la mise à jour à l'aide du --valeurs de configuration '{}' option. Cela ramène toutes les configurations personnalisées aux valeurs par défaut. Si vous ne souhaitez pas modifier votre configuration personnalisée, ne fournissez pas --valeurs de configuration drapeau. Si vous voulez ajuster une configuration personnalisée, remplacez {} par les nouveaux paramètres.

    aws eks update-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name --configuration-values '{}' --resolve-conflicts PRESERVE
  5. Vérifiez l'état de la mise à jour. Remplacez my-cluster par le nom de votre cluster et vpc-cni par le nom du module complémentaire que mettez à jour.

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni

    L'exemple qui suit illustre un résultat.

    { "addon": { "addonName": "vpc-cni", "clusterName": "my-cluster", "status": "UPDATING", [...]

    Lorsque la mise à jour est terminé, l'état indique ACTIVE.