Azure Container Apps sur Azure Arc (préversion)
Vous pouvez exécuter Container Apps sur un cluster AKS ou AKS-HCI avec Azure Arc.
L’exécution dans un cluster Kubernetes avec Azure Arc permet :
- Aux développeurs de profiter des fonctionnalités de Container Apps
- Les administrateurs informatiques peuvent maintenir la conformité de l’entreprise en hébergeant Container Apps sur l’infrastructure interne.
Découvrez comment configurer votre cluster Kubernetes pour Container Apps dans Configurer un cluster Kubernetes avec Azure Arc pour exécuter Azure Container Apps
Lorsque vous configurez votre cluster, vous effectuez ces actions :
Le cluster connecté, qui est une projection Azure de votre infrastructure Kubernetes. Pour plus d’informations, consultez Qu’est-ce que Kubernetes avec Azure Arc ?.
Une extension de cluster, qui est une sous-ressource de la ressource de cluster connectée. L’extension Container Apps installe les ressources requises dans votre cluster connecté. Pour plus d’informations sur les extensions de cluster, consultez Extensions de cluster sur Kubernetes avec Azure Arc.
Un emplacement personnalisé qui rassemble un groupe d’extensions et mappe celles-ci à un espace de noms pour les ressources créées. Pour plus d’informations, consultez Emplacements personnalisés sur Kubernetes avec Azure Arc.
Un environnement connecté à Container Apps qui permet une configuration commune à toutes les applications, mais non lié aux opérations de cluster. D’un point de vue conceptuel, il est déployé dans la ressource d’emplacement personnalisée et les développeurs d’applications créent des applications dans cet environnement.
Limitations de la version préliminaire publique
Les limitations de la préversion publique suivantes s’appliquent à Azure Container Apps sur Kubernetes avec Azure Arc.
Limitation | Détails |
---|---|
Régions Azure prises en charge | USA Est, Europe Ouest, Asie Est |
Exigence de mise en réseau du cluster | Doit prendre en charge le type de service LoadBalancer |
Exigence concernant le système d’exploitation de nœud | Linux uniquement. |
Fonctionnalité : identités managées | Non disponible |
Fonctionnalité : extraire des images d’ACR avec une identité managée | Non disponible (dépend d’identités managées) |
Journaux d’activité | Log Analytics doit être configuré avec l’extension de cluster, pas par application |
Important
Si vous effectuez un déploiement sur AKS-HCI vérifiez que vous disposez de la configuration HAProxy en tant qu’équilibreur de charge avant d’installer l’extension.
Ressources créées par l’extension Container Apps
Lorsque l’extension Container Apps est installée sur le cluster Kubernetes avec Azure Arc, plusieurs ressources sont créées dans l’espace de noms de mise en production spécifié. Ces ressources permettent à votre cluster d’être une extension du fournisseur de ressources Microsoft.App
pour prendre en charge la gestion et l’exploitation de vos applications.
Si vous le souhaitez, vous pouvez choisir que l’extension installe KEDA pour la mise à l’échelle pilotée par des événements. Toutefois, une seule installation KEDA est autorisée sur le cluster. Si vous disposez d’une installation existante, désactivez l’installation KEDA lors de l’installation de l’extension de cluster.
Le tableau suivant décrit le rôle de chaque révision créée pour vous :
Pod | Description | Nombre d’instances | UC | Mémoire | Type |
---|---|---|---|---|---|
<extensionName>-k8se-activator |
Utilisé dans le cadre du pipeline de mise à l’échelle | 2 | 100 millicpu | 500 Mo | ReplicaSet |
<extensionName>-k8se-billing |
Génération d’enregistrements de facturation – Azure Container Apps sur Kubernetes avec Azure Arc est gratuit pendant la préversion | 3 | 100 millicpu | 100 Mo | ReplicaSet |
<extensionName>-k8se-containerapp-controller |
Pod opérateur principal qui crée des ressources sur le cluster et gère l’état des composants. | 2 | 100 millicpu | 1 Go | ReplicaSet |
<extensionName>-k8se-envoy |
Couche proxy frontale pour toutes les demandes http de plan de données. Elle achemine le trafic entrant vers les applications correctes. | 3 | 1 cœur | 1 536 Mo | ReplicaSet |
<extensionName>-k8se-envoy-controller |
Opérateur, qui génère la configuration Envoy | 2 | 200 millicpu | 500 Mo | ReplicaSet |
<extensionName>-k8se-event-processor |
Autre destination de routage pour aider les applications qui ont été mises à l’échelle zéro alors que le système reçoit la première instance disponible. | 2 | 100 millicpu | 500 Mo | ReplicaSet |
<extensionName>-k8se-http-scaler |
Surveille le volume de demandes entrantes pour fournir des informations de mise à l’échelle à KEDA. | 1 | 100 millicpu | 500 Mo | ReplicaSet |
<extensionName>-k8se-keda-cosmosdb-scaler |
Outil de mise à l’échelle KEDA Cosmos DB | 1 | 10 m | 128 Mo | ReplicaSet |
<extensionName>-k8se-keda-metrics-apiserver |
Serveur de métriques KEDA | 1 | 1 cœur | 1 000 Mo | ReplicaSet |
<extensionName>-k8se-keda-operator |
Met à l’échelle les charges de travail entre 0/1 et N instances | 1 | 100 millicpu | 500 Mo | ReplicaSet |
<extensionName>-k8se-log-processor |
Recueille les journaux d’applications et d’autres composants, puis les envoie à Log Analytics. | 2 | 200 millicpu | 500 Mo | DaemonSet |
<extensionName>-k8se-mdm |
Agent de journaux et de métriques | 2 | 500 millicpu | 500 Mo | ReplicaSet |
dapr-metrics | Pod de métriques Dapr | 1 | 100 millicpu | 500 Mo | ReplicaSet |
dapr-operator | Gère les mises à jour des composants et les points de terminaison de service pour Dapr | 1 | 100 millicpu | 500 Mo | ReplicaSet |
dapr-placement-server | Utilisé uniquement pour les Acteurs – Crée des tables de mappage qui mappent les instances d’acteurs à des pods | 1 | 100 millicpu | 500 Mo | StatefulSet |
dapr-sentry | Gère mTLS entre les services et agit en tant qu’autorité de certification | 2 | 800 millicpu | 200 Mo | ReplicaSet |
FAQ d’Azure Container Apps sur Azure Arc (préversion)
- Combien ça coûte ?
- Quelles fonctionnalités de Container Apps sont prises en charge ?
- Les identités gérées sont-elles prises en charge ?
- Existe-t-il des limites de mise à l’échelle ?
- Quels journaux sont collectés ?
- Que dois-je faire si une erreur d’inscription du fournisseur s’affiche ?
- L’extension peut-elle être installée sur des nœuds Windows ?
- Puis-je déployer l’extension Container Apps sur un cluster Arm64 ?
Quel est son coût ?
Azure Container Apps sur Kubernetes avec Azure Arc est gratuit pendant la préversion publique.
Quelles fonctionnalités Container Apps sont prises en charge ?
Lors de la préversion, certaines fonctionnalités d’Azure Container Apps sont en cours de validation. Une fois qu’elle sont prises en charge, leurs options de navigation à gauche dans le portail Azure sont activées. Les fonctionnalités qui ne sont pas encore prises en charge restent grisées.
Les identités managées sont-elles prises en charge ?
Les identités managées ne sont pas prises en charge. Les applications ne peuvent pas être affectées à des identités managées lors de l’exécution dans Azure Arc. Si votre application a besoin d’une identité pour travailler avec une autre ressource Azure, envisagez d’utiliser un principal de service d’application à la place.
Existe-t-il des limites de mise à l’échelle ?
Toutes les applications déployées avec Azure Container Apps sur Kubernetes avec Azure Arc peuvent être mises à l’échelle dans les limites du cluster Kubernetes sous-jacent. Si le cluster ne dispose pas des ressources de calcul disponibles (principalement du processeur et de la mémoire), les applications se mettent à l’échelle au nombre d’instances de l’application que Kubernetes peut planifier avec la ressource disponible.
Quels journaux sont collectés ?
Les journaux des composants système et de vos applications sont écrits dans une sortie standard.
Il est possible de collecter les deux types de journaux à des fins d’analyse à l’aide d’outils Kubernetes standard. Vous pouvez également configurer l’extension de cluster d’environnement d’application avec un espace de travail Log Analytics afin d’envoyer tous les journaux à cet espace de travail.
Par défaut, les journaux des composants système sont envoyés à l’équipe Azure. Les journaux des applications ne sont pas envoyés. Vous pouvez empêcher le transfert de ces journaux en définissant logProcessor.enabled=false
comme paramètre de configuration d’extension. Ce paramètre de configuration désactive le transfert de l’application vers votre espace de travail Log Analytics. La désactivation du processeur de journal peut affecter le temps nécessaire pour les cas de support, et vous serez invité à collecter les journaux de la sortie standard via d’autres moyens.
Que dois-je faire si une erreur d’inscription du fournisseur s’affiche ?
Lorsque vous créez une ressource d’environnement connecté Azure Container Apps, certains abonnements peuvent voir apparaître l’erreur « Aucun fournisseur de ressources inscrit trouvé ». Les détails de l’erreur peuvent inclure un ensemble d’emplacements et de versions d’API considérés comme valides. Si ce message d’erreur est retourné, l’abonnement doit être réinscrit avec le fournisseur Microsoft.App
. La réinscription du fournisseur n’a aucun effet sur les applications ou API existantes. Pour vous réinscrire, dans Azure CLI, exécutez la commande az provider register --namespace Microsoft.App --wait
. Réessayez ensuite la commande d’environnement connecté.
L’extension peut-elle être installée sur des nœuds Windows ?
Non, l’extension ne peut pas être installée sur des nœuds Windows. L’extension prend en charge l’installation sur les nœuds Linux uniquement.
Puis-je déployer l’extension Container Apps sur un cluster Arm64 ?
Les clusters basés sur Arm64 ne sont pas pris en charge pour l’instant.
Notes de publication de l’extension
Extension Container Apps v1.0.46 (décembre 2022)
- Version préliminaire publique initiale de l’extension Container Apps
Extension Container Apps v1.0.47 (janvier 2023)
- Mise à niveau d’Envoy vers la version 1.0.24
Extension Container Apps v1.0.48 (février 2023)
- Ajout de sondes à des conteneurs EasyAuth
- Augmentation de la limite de mémoire pour l’opérateur dapr
- Ajout de la prévention du remplacement de l’en-tête de plateforme
Extension Container Apps v1.0.49 (février 2023)
- Mise à niveau de KEDA vers 2.9.1 et Dapr vers la version 1.9.5
- Augmentation des limites de ressources du contrôleur Envoy à 200 m d’UC
- Augmentation des limites de ressources Container App Controller à 1 Go de mémoire
- Réduction des limites des ressources sidecar EasyAuth à 50 m d’UC
- Résolution la journalisation des erreurs KEDA pour les valeurs de métrique manquantes
Extension Container Apps v1.0.50 (mars 2023)
- Mise à jour des images de journalisation synchronisées avec le cloud public
Extension Container Apps v1.5.1 (avril 2023)
- Nouveau format de numéro de contrôle de version
- Mise à niveau de Dapr vers la version 1.10.4
- Maintien de l’échelle d’Envoy après les déploiements de nouvelles révisions
- Passage au moment où les sondes de démarrage par défaut sont ajoutées à un conteneur, si le développeur ne définit pas à la fois les sondes de démarrage et de préparation, des sondes de démarrage par défaut sont ajoutées
- Ajout de la variable d’environnement CONTAINER_APP_REPLICA_NAME aux conteneurs personnalisés
- Amélioration des performances lorsque plusieurs révisions sont arrêtées
Extension Container Apps v1.12.8 (juin 2023)
- Mise à jour d’OSS Fluent Bit vers la version 2.1.2 et de Dapr vers la version 1.10.6
- Prise en charge des registres de conteneurs exposés sur le port personnalisé
- Possibilité d’activer ou de désactiver la révision lorsqu’une application conteneur est arrêtée
- Correction du problème à cause duquel la liste des révisions ne retournait pas de conteneurs init
- Autorisation des en-têtes par défaut ajoutés pour la stratégie CORS
Extension Container Apps v1.12.9 (juillet 2023)
- Mises à jour mineures des conteneurs sidecar EasyAuth
- Mise à jour des agents de surveillance d’extension
Extension Container Apps v1.17.8 (août 2023)
- Mise à jour d’EasyAuth vers la version 1.6.16, de Dapr vers la version 1.10.8 et d’Envoy vers la version 1.25.6
- Ajout de la prise en charge du montage de volume pour les travaux Azure Container Apps
- Ajout de restrictions IP pour les applications avec type d’entrée TCP
- Ajout de la prise en charge de Container Apps avec plusieurs ports exposés
Extension Container Apps v1.23.5 (décembre 2023)
- Mise à jour d’Envoy vers la version 1.27.2, de KEDA vers la version v2.10.0, d’EasyAuth vers la version 1.6.20 et de Dapr vers la version 1.11
- Définition d’Envoy sur le protocole TLS 1.3 maximal
- Correctif pour résoudre les incidents dans les pods du processeur de journaux
- Résolution des problèmes de récupération des secrets d’extraction d’images
- Mise à jour de l’emplacement d’Envoy pour une distribution entre les nœuds disponibles, le cas échéant
- Lorsque les applications conteneur ne parviennent pas à approvisionner suite à des conflits de révision, l’état d’approvisionnement est défini sur Échec
Extension Container Apps v1.30.6 (janvier 2024)
- Mise à jour KEDA vers la version 2.12, de l’image Envoy SC vers la version 1.0.4 et de l’image Dapr vers la version 1.11.6
- Ajout d’un délai d’expiration de réponse par défaut pour les itinéraires Envoy à 1 800 secondes
- Modification du niveau de journal par défaut Fluent bit pour avertir
- Retardement de la suppression des pods de travail pour garantir l’émission du journal
- Résolution du problème de suppression de pod de travail pour les exécutions de travaux ayant échoué
- Confirmation de la suppression des travaux dans l’état suspendu avec des pods en échec
- Mise à jour pour ne pas résoudre HTTPOptions pour les applications TCP
- Applications autorisées à écouter sur HTTP ou HTTPS
- Ajout de la possibilité de suspendre des travaux
- Correction du problème à cause duquel l’outil de mise à l’échelle KEDA ne pouvait pas créer de travail après l’arrêt de l’exécution du travail
- Ajout de startingDeadlineSeconds au travail Container Apps en cas de redémarrage d’un cluster
- Suppression de la journalisation intensive dans le serveur de journaux d’accès d’Envoy
- Mise à jour de la version de configuration de surveillance pour Azure Container Apps sur Kubernetes avec Azure Arc
Extension Container Apps v1.36.15 (avril 2024)
- Mise à jour de Dapr vers la version v1.12 et de Métriques Dapr vers la version v0.6
- Autoriser les clients à activer la journalisation du débogage du SDK Azure dans Dapr
- Mise à l’échelle d’Envoy en réponse à l’utilisation de la mémoire
- Changement du format de journal Envoy au format Json
- Exportation des métriques Envoy supplémentaires
- Troncation du journal Envoy aux 1 024 premiers caractères lorsque l’analyse du contenu du journal a échoué
- Gestion correcte du SIGTERM dans le proxy local
- Possibilité d’utiliser différents espaces de noms avec KEDA
- Validation ajoutée pour le nom de règle de mise à l’échelle
- GC de révision activé par défaut
- Activation de l’émission de métriques pour les sidecars
- Ajout de volumeMounts aux exécutions de travaux
- Ajout de la validation aux points de terminaison de webhook pour les travaux
Extension Container Apps v1.37.1 (juillet 2024)
- Mise à jour d’EasyAuth pour prendre en charge MISE
Extension Container Apps v1.37.2 (septembre 2024)
- Mise à jour de l’image Dapr-Metrics vers v0.6.8 pour résoudre le problème de délai d’expiration du réseau
- Problème résolu dans le processeur de journaux, qui empêchait le démarrage du conteneur MDSD lorsque le cluster est connecté derrière un proxy
Extension Container Apps v1.37.7 (octobre 2024)
- Résolution du problème lié au conteneur init GPM, qui entraînait le blocage du conteneur en cas d’impossibilité d’extraction
- Ajout de la prise en charge du modèle de déploiement hybride Logic Apps (préversion publique)
Étapes suivantes
Création d’un environnement connecté Container Apps (préversion)