Partager via


Résoudre les échecs de déploiement d’une offre d’application Kubernetes

Cet article explique comment résoudre les échecs de déploiement d’une offre d’application Kubernetes acceptée sur microsoft Place de marché Azure. Lorsque vous lancez l’achat d’une offre Kubernetes, Azure déploie un modèle Azure Resource Manager (modèle ARM) qui tente d’installer les ressources nécessaires pour répondre à l’offre. Toutefois, le déploiement du modèle ARM peut échouer pour différentes raisons.

Liste de contrôle pour la résolution des problèmes

Examiner les journaux des opérations de déploiement

Pour déterminer la cause de l’échec du déploiement, vous devez examiner les journaux des opérations de déploiement. Si vous affichez toujours la page Échec de votre déploiement dans le Portail Azure, commencez à l’étape 5 de la procédure suivante. Si, au lieu de cela, vous avez quitté le Portail Azure ou accédé à une autre page du portail, procédez comme suit :

  1. Dans le portail Azure, recherchez et sélectionnez Groupes de ressources.

  2. Dans la liste des groupes de ressources, sélectionnez le nom du groupe de ressources dans lequel vous avez essayé de déployer l’application Kubernetes.

  3. Dans la page Vue d’ensemble de votre groupe de ressources, recherchez la section Essentials , puis sélectionnez le texte hypertexte qui apparaît en regard du champ Déploiements . Ce texte affiche le taux de réussite de l’historique de déploiement des ressources de votre groupe de ressources (par exemple, 4 échecs, 30 réussis).

  4. Dans la liste des tentatives de déploiement pour votre groupe de ressources, sélectionnez la valeur du nom de déploiement du déploiement qui a échoué, en fonction des champs correspondants suivants :

    • Dernière modification (horodatage)
    • Durée
    • État (affiche Échec au lieu de Réussite)
  5. Dans la liste des détails du déploiement sur la page de déploiement, recherchez la ressource pour laquelle le champ État a la valeur Conflit. Sélectionnez le lien Détails de l’opération pour cette ressource.

    Capture d’écran de la page « Votre déploiement a échoué » et de la liste des détails du déploiement pour un déploiement de ressources Kubernetes ayant échoué.

  6. Dans le volet Détails de l’opération, recherchez la propriété Status (affiche une valeur de conflit) et examinez la zone de message État sous la propriété.

    Capture d’écran du volet « Détails de l’opération » dans la page « Votre déploiement a échoué » pour un déploiement de ressources Kubernetes ayant échoué.

    Le code JSON dans le message d’état affiche une status propriété de Failed. Il affiche également une error propriété qui contient les propriétés enfants de (un nom de code code d’erreur, tel que « ExtensionOperationFailed ») et message (une description du message d’erreur, telle que « L’opération d’extension a échoué avec l’erreur suivante : Échec de la résolution de la version de l’extension à partir des valeurs spécifiées »). Le code JSON ressemble au texte suivant :

    {
        "status": "Failed",
        "error": {
            "code": "ExtensionOperationFailed",
            "message": "The extension operation failed with the following error: Failed to resolve the extension version from the given values."
        }
    }
    

Les sections suivantes décrivent la cause et la solution pour certains scénarios d’échec courants.

Cause 1 : L’application n’a pas été installée sur le cluster AKS sélectionné

Si l’application Kubernetes n’a pas été installée sur le cluster Azure Kubernetes Service (AKS) sélectionné, vous recevez un message d’erreur semblable au texte suivant :

La demande n’a pas pu être https://management.azure.com/subscriptions/<subscription-guid>/resourceGroups/resourceGroup/providers/Microsoft.ContainerService/managedclusters/aks-cluster/extensionaddons/default ?api-version=2021-03-01. Code d’erreur : Interdit. Motif : Interdit.

{  
  "error": {  
    "code": "AuthorizationFailed",  
    "message": "The client '<client-guid>' with object id '<client-guid>' does not have authorization to perform action 'Microsoft.ContainerService/managedclusters/extensionaddons/read' over scope '/subscriptions/<subscription-guid>/resourceGroups/resourceGroup/providers/Microsoft.ContainerService/managedclusters/aks-cluster/extensionaddons/default' or the scope is invalid. If access was recently granted, please refresh your credentials."  
  }  
} 

Solution 1a : Inscrire le fournisseur de ressources Microsoft.KubernetesConfiguration

Inscrivez le fournisseur de ressources Microsoft.KubernetesConfiguration. Dans ce cas, l’installation a échoué, car le fournisseur de ressources Microsoft.KubernetesConfiguration est nécessaire pour déployer l’application Kubernetes. Pour obtenir des instructions d’inscription, consultez la section « Inscrire des fournisseurs de ressources » dans l’article Déployer une offre de conteneur à partir de Place de marché Azure article.

Solution 1b : Maintenir l’intégrité du cluster AKS

En règle générale, vous devez vérifier l’intégrité du cluster AKS pour éviter que d’autres problèmes se produisent pendant la période d’installation. Pour vous assurer que le cluster est sain, résolvez les problèmes identifiés sur le cluster.

Solution 1c : Examiner le journal d’activité Azure Monitor

Que se passe-t-il si le cluster est sain, mais que l’installation échoue toujours ? Dans ce cas, examinez le journal d’activité Azure Monitor dans le cluster AKS pour trouver la cause de l’échec à ce stade de l’installation.

Cause 2 : L’abonnement a des contraintes de ressources

Étant donné que votre abonnement Azure a des contraintes de ressources, vous rencontrez un échec qui génère un message d’erreur similaire au texte suivant :

Le ou les instruments de paiement « inconnus » ne sont pas pris en charge pour l’offre avec OfferId : «< offer-name> », PlanId «< subscription-plan-name> ».

Solution 2 : Vérifiez que votre abonnement répond à la configuration de facturation nécessaire

Vérifiez la configuration de facturation de l’abonnement pour vous assurer qu’il répond aux besoins en ressources de l’application Kubernetes. Pour plus d’informations, consultez vérifications de validation d’achat.

Cause 3 : L’offre n’était pas disponible dans votre région

Vous recevez un message d’erreur indiquant que l’offre ne peut pas être vendue dans une région géographique donnée. Le message d’erreur peut ressembler au texte suivant :

L’offre : «< offer-name> » ne peut pas être achetée par abonnement : «< subscription-guid> », car il n’est pas à vendre sur le marché : «< two-letter-region-code ».

Solution 3 : vérifiez si l’offre est toujours disponible et où elle est disponible

Vérifiez que l’offre est toujours disponible et vérifiez deux fois les régions auxquelles l’offre s’applique.

Cause 4 : Une erreur de serveur interne s’est produite

L’application Kubernetes n’a pas été installée, car une ressource d’extension n’a pas été installée. Cet échec génère le message d’erreur suivant :

L’extension n’a pas pu être déployée avec une erreur de serveur interne

Solution 4 : Supprimer et réinstaller l’extension

Tout d’abord, supprimez la ressource d’extension qui fait partie de l’achat de l’offre. Réinstallez ensuite l’extension.

Cause 5 : Le graphique Helm n’a pas été installé

Les erreurs dans le graphique Helm génèrent le message d’erreur suivant :

Échec de l’installation du graphique à partir du chemin d’accès [] pour la mise en production

Solution 5 : Revérifier les entrées que vous avez effectuées dans le modèle ARM

Vérifiez que les valeurs et les sélections que vous avez entrées sur le Portail Azure pour le déploiement de modèle ARM sont acceptables dans l’application Kubernetes.

Avant que l’abonnement puisse être utilisé, vous devez accepter les conditions légales de l’image. Sinon, vous obtenez le message d’erreur suivant :

Vous n’avez pas accepté les conditions légales de cet abonnement : «< subscription-guid> » pour ce plan. Avant que l’abonnement puisse être utilisé, vous devez accepter les conditions légales de l’image.

Vous pouvez effectuer le déploiement via le Portail Azure. Le Portail Azure offre une expérience d’interface utilisateur pour lire et accepter les termes juridiques.

Prochaines étapes

Résoudre les erreurs lors du déploiement d’extensions de cluster AKS

Exclusion de responsabilité de tiers

Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.

Contactez-nous pour obtenir de l’aide

Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.