Partager via


Portabilité pour les conteneurs

S’applique à : Windows Server, version 23H2

La portabilité est une fonctionnalité du Canal Annuel de Windows Server pour conteneurs. La portabilité simplifie le processus de mise à niveau, ce qui vous permet de tirer pleinement parti de la flexibilité et de la compatibilité améliorées offertes par les conteneurs. Cet article fournit une explication détaillée de la façon dont la portabilité de l’image de conteneur est optimisée pour les hôtes de conteneur de canal annuel.

Le canal annuel Windows Server pour conteneurs est une édition de Windows Server conçue pour Azure Kubernetes Service et les déploiements Windows Server axés sur les conteneurs afin d’améliorer l’efficacité en fournissant une portabilité optimisée pour les conteneurs Windows et Linux. Pour plus d’informations sur le canal annuel pour les conteneurs dans Windows Server, consultez notre annonce TechCommunity.

Fonctionnement de la portabilité

Windows utilise un noyau modulaire où les composants sont souvent étroitement liés entre mode utilisateur et le mode noyau. Les composants étroitement liés servent d'interfaces graphiques utiles sur les pilotes en mode noyau. Ils optimisent également les performances en réduisant le nombre de commutations de contexte entre les modes noyau et utilisateur. Toutefois, il présente un défi pour les conteneurs. La portabilité permet aux conteneurs s’exécutant en mode utilisateur d’exécuter des charges de travail avec une version d’image conteneur différente de la version du système d’exploitation hôte.

Sans portabilité, les utilisateurs ne pouvaient exécuter que des charges de travail avec des versions d’image et d’hôte correspondantes. Par exemple, un utilisateur exécutant un hôte Windows Server 2022 n’a pas pu exécuter des conteneurs isolés de processus Windows Server 2019. Le contrôle de version entre l'hôte et l'image conteneur représente un problème majeur de la conteneurisation Windows, rendant difficile la mise à niveau vers des versions plus récentes d'un hôte de conteneur. Par exemple, Windows Server 2022 LTSC exigeait que toutes les images d’infrastructure et d’application soient mises à jour vers la dernière version en même temps que l’hôte.

Interface binaire d’application

L’interface binaire d’application ou ABI permet à différents langages de programmation d’interagir avec les interfaces en mode utilisateur et noyau. L’interaction du code client avec un objet runtime se produit au niveau le plus bas, avec des constructions de langage client traduites en appels dans l’ABI de l’objet. La portabilité pour les conteneurs Windows introduit une ABI stable pour l’interaction utilisateur et noyau. Cette ABI stable dissocie les composants utilisateur et noyau du système et permet de mettre à jour séparément le noyau et les éléments utilisateur de votre système.

Les conteneurs peuvent exécuter tous les fichiers binaires en mode utilisateur à partir de leur couche de base, à l’exception de la couche ABI.

Le diagramme suivant illustre la communication entre les composants en mode utilisateur et en mode noyau.

diagramme A montrant la limite ABI stabilisée. Les processus et services hôtes, ainsi que les processus et services de conteneur, utilisent cette couche abstraite pour communiquer avec le noyau partagé sous-jacent.

Quelles versions puis-je utiliser ?

Les images conteneur Nano Server, Server Core et Windows Server sont disponibles uniquement via le canal de maintenance Long-Term pour les conteneurs exécutant Windows Server 2019 ou version ultérieure. Pour plus d’informations sur les images de conteneurs Windows Server prises en charge, consultez Cycles de vie de maintenance des images de base.

Un hôte de conteneur Windows Server version 23H2 prend uniquement en charge l’image conteneur du canal de maintenance à long terme (LTSC) Windows Server 2022.

Azure Kubernetes Service prend actuellement en charge les hôtes Windows Server 2019 et versions ultérieures. Le canal annuel Windows Server pour conteneurs est une autre option de système d’exploitation de conteneur que Microsoft propose avec Kubernetes 1.28. Vous pouvez créer des pools de nœuds basés sur le canal annuel et continuer à déployer vos images conteneur Windows Server 2022 sur ces nœuds. Microsoft met à jour automatiquement la version du canal annuel et toutes les nouvelles versions de Kubernetes. Toutefois, il est également judicieux de suivre les dernières versions de LTSC pour vous assurer que vos conteneurs sont à jour.

Remarque

Bien que les versions précédentes d’images conteneur puissent s’exécuter sur le système d’exploitation hôte plus récent, les systèmes d’exploitation d’images conteneur plus récents ne peuvent pas s’exécuter sur le système d’exploitation hôte précédent.