Mise en réseau de conteneurs Windows avec Azure Kubernetes Service
Azure Kubernetes Service (AKS) gère votre environnement Kubernetes hébergé et simplifie le déploiement et la gestion des applications conteneurisées dans Azure. Un environnement AKS a des fonctionnalités telles que les mises à jour automatisées, la réparation automatique et la mise à l’échelle rapide. Vous gérez les nœuds d’agent dans le cluster et payez uniquement pour les machines virtuelles qui exécutent vos nœuds.
Voici quelques-uns des nombreux avantages de l’utilisation d’AKS pour votre mise en réseau de conteneurs Windows :
- AKS implémente le format de fichier image Docker. Vous pouvez utiliser l’environnement de développement de votre choix pour créer une charge de travail, l’empaqueter en tant que conteneur et déployer le conteneur comme pod Kubernetes.
- AKS fonctionne avec des outils de gestion et de développement courants, comme Helm, Draft, l’extension Kubernetes pour Visual Studio Code et Visual Studio Kubernetes Tools.
- AKS prend en charge l’intégration à Azure DevOps Projects pour simplifier la configuration d’un pipeline DevOps pour votre application.
AKS et les conteneurs Windows
Sur un seul hôte ou environnement de développement, le runtime de gestion des conteneurs standard se concentre sur la gestion des conteneurs individuels. Parfois, vous devez mettre à l’échelle votre configuration et créer plusieurs conteneurs qui fonctionnent ensemble. La mise à l’échelle de plusieurs conteneurs est plus difficile en termes de gestion des conteneurs. Vous devez gérer l’équilibrage de charge, la sécurité, la connectivité réseau et le déploiement. Pour faciliter ce processus, il est courant d’utiliser une plateforme de gestion de conteneurs comme Kubernetes.
AKS est une plateforme d’orchestration de conteneurs qui simplifie le développement, le déploiement et la gestion d’applications conteneurisées. Vous pouvez utiliser AKS pour gérer votre environnement Kubernetes hébergé dans Azure. AKS simplifie le processus d’installation et gère la plupart des tâches de gestion de clusters sous-jacentes. AKS fait partie d’Azure et peut être intégré à d’autres services Azure pour étendre votre produit ou échanger des données avec d’autres services.
Important
Pour déployer des conteneurs Windows Server sur AKS, votre configuration doit répondre aux exigences suivantes :
- Utilisez le plug-in réseau Azure CNI pour votre cluster Kubernetes.
- Utilisez Windows Server 2019 ou version ultérieure pour vos nœuds Windows. Les versions antérieures de Windows Server ne prennent pas en charge les réseaux de superposition requis par Azure CNI.
- Utilisez Kubernetes version 1.14 ou ultérieure. Les versions antérieures de Kubernetes ne prennent pas en charge les nœuds ou pods Windows.
AKS et mise en réseau
Dans AKS, vous pouvez déployer un cluster de conteneurs Windows qui utilise la mise en réseau Azure Container Networking Interface (Azure CNI). Dans ce modèle, les pods reçoivent une connectivité de réseau virtuel complète : pod à pod et pod à machine virtuelle, dans le même réseau virtuel ou dans un réseau virtuel appairé. Les pods sont accessibles via leur adresse IP privée sur les réseaux connectés.
Azure CNI prend en charge les pools de nœuds Windows. Les clusters peuvent être déployés dans des réseaux virtuels existants ou nouveaux. L’accès local est pris en charge à l’aide d’un VPN ou d’Azure Express Route. Vous pouvez exposer des services Kubernetes à l’aide d’un service d’équilibreur de charge, d’Azure App Gateway ou d’un contrôleur d’entrée.
Contrôle du trafic avec des stratégies réseau
La meilleure pratique pour les conteneurs Windows avec AKS consiste à utiliser des stratégies réseau pour autoriser ou refuser le trafic vers vos pods. Par défaut, tout le trafic est autorisé entre les pods au sein d’un cluster. Pour améliorer la sécurité, vous pouvez définir des règles pour limiter la communication des pods.
Les stratégies réseau sont une fonctionnalité Kubernetes disponible dans AKS qui vous permet de contrôler le flux de trafic entre les pods. Vous autorisez ou refusez le trafic vers le pod en fonction de paramètres tels que les étiquettes attribuées, l'espace de noms ou le port de trafic. Les stratégies réseau constituent un moyen natif Cloud de contrôler le flux de trafic pour les pods. Les pods étant créés de façon dynamique dans un cluster AKS, les stratégies réseau nécessaires peuvent être appliquées automatiquement.
Considérations relatives à AKS
AKS prend en charge une configuration de réseau virtuel, où vous avez besoin d’une communication réseau entre pods ou d’un accès aux réseaux locaux à partir de votre cluster Windows. Un cluster AKS Windows peut être facilement déployé dans un réseau virtuel existant.
Voici quelques fonctionnalités d’AKS à prendre en compte lors de la planification de la mise en réseau de conteneurs Windows :
Fonctionnalité | Considération | Solution |
---|---|---|
Prise en charge des images Docker | Utiliser des images Docker pour vos conteneurs | Par défaut, AKS prend en charge le format d'image de fichier Docker. |
Prise en charge des réseaux virtuels | Prendre en charge la communication réseau entre pods, accéder aux réseaux locaux à partir de votre cluster AKS | Un cluster AKS peut être facilement déployé dans un réseau virtuel existant. |
Prise en charge des entrées avec un routage d’applications HTTP | Mettre vos applications déployées en disponibilité publique | Le complément add-on de routage des applications HTTP permet d’accéder facilement aux applications déployées de votre cluster AKS. |
Mise à l’échelle automatique des nœuds de cluster et des pods | Effectuer un scale-up ou un scale-down, mettre à l’échelle des ressources dans un environnement de conteneurisation volumineux | AKS prend en charge la mise à l’échelle facile pour vos clusters et fournit deux options de mise à l’échelle de cluster automatique pour les environnements volumineux. – Le composant Horizontal Pod Autoscaler surveille la demande en ressources des pods et augmente le nombre de ces derniers pour répondre à la demande. – Le composant Autoscaler de cluster surveille les pods qui ne peuvent pas être planifiés en raison de contraintes de nœud. Il met automatiquement à l’échelle les nœuds du cluster pour déployer les pods planifiés. |
Journalisation et supervision intégrées | Surveiller les conteneurs, les pods et les clusters | AKS comprend Azure Monitor pour conteneurs afin de fournir une visibilité des performances du cluster. Avec une installation Kubernetes personnalisée, utilisez Azure Monitor ou installez et configurez Azure Log Analytics ou Azure Application Insights. |
Haute disponibilité | Assurer une haute disponibilité et une tolérance de panne | AKS vous aide à atteindre la haute disponibilité et la tolérance de panne pour vos clusters Windows en répartissant vos nœuds entre les zones de disponibilité et les régions. |
Intégration de la sécurité | Protéger vos clusters et applications Windows | AKS s’intègre à Microsoft Entra ID (anciennement Azure Active Directory), Azure Key Vault, Azure Policy et Azure Security Center. |