Kubernetes : support des containers Windows sur GKE, monitoring et SLA, la communauté accélère
A l’occasion de la KubeCon, les communautés Kubernetes ont présenté des outils et services qui permettent de mieux industrialiser les usages de l’orchestrateur de containers.
Containers Linux ou Windows, Kubernetes les met tous d’accord. A l’occasion de La KubeCon qui s’est tenue cette semaine à Barcelone, les développeurs de Microsoft se sont un peu plus rapprochés de la parité en matière de support des containers dans le cloud. L’annonce, pour le moment en test, du support des Windows Containers sur GKE (Google Kubernetes Engine) et Azure correspond en effet à une avancée certaine en ce sens. Le support des Windows Server Containers est en effet assuré pour Google Kubernetes Engine (GKE) et Microsoft Azure Kubernetes (AKS).
Le support des containers Windows est encore relativement nouveau. Il existe en une version stable depuis Kubernetes 1.14 présenté en mars 2019. Il affiche encore des limites importantes par rapport à la version Linux. Bien que Kubernetes 1.14 permette aux containers Windows Server de s’exécuter aux côtés de conteneurs Linux dans le même cluster, le nœud maître Kubernetes doit toujours être exécuté sur un OS Linux. Ce que les entreprises Windows pourraient voir d’un œil un peu moins intéressé.
Toutefois, ce support, aussi naissant soit-il, est à prendre positivement. Car pouvoir exécuter des Containers Windows Server sur des services managés de Kubernetes, où soit Google soit Microsoft gère le master node et l’infrastructure, est un bienfait pour les utilisateurs.
« Idéalement, pour maîtriser Kubernetes, les utilisateurs doivent maîtriser Linux », rappelle Gary Chen, analyste chez IDC. « Mais, dans une certaine mesure, ces services Kubernetes dans le cloud permettent de se soustraire de la gestion des infrastructures Linux, et donc éloigner ces tâches des administrateurs. »
Mise à jour GKE et AWS des outils de surveillance Kubernetes
Presque logiquement, l’avancée de Kubernetes dans les entreprises provoque une accélération des développements des outils de monitoring pour ce très populaire framework. Google et AWS, deux concurrents en la matière, ont avancé leur pion.
Google a ainsi annoncé la disponibilité de Stackdriver Kubernetes Engine Monitoring, qui forme une véritable tour de contrôle pour Kubernetes. Celle-ci agrège des données issues de sources extérieures à Stackdriver, comme les APM (Application Performance Management), ELK ou encore Sensu.
« Nous avons développé beaucoup d'outils de surveillance, d'alerte et de débugging en interne, mais nous ne voulons pas les abandonner », affirme Josh Koenig, responsable des produits chez Pantheon Platform, qui développe une plateforme de gestion opérationnelle bâtie sur GKE. « S'ils peuvent faire partie de notre outillage, nous aimerions capitaliser sur Stackdriver (pour Kubernetes, NDLR). »
Avec toutefois un bémol : Stackdriver recueille des données très détaillées à partir des logs, de mesures et de statistiques. Mais quid des coûts associés à une telle collecte de données en volume, s’inquiète-t-il. « Nous devons trouver un moyen de réduire la quantité de données - collecter autant d'informations peut potentiellement être à la fois formidable et catastrophique. Il y a toujours un risque lorsqu'un outil est vraiment facile à utiliser ; il peut être utilisé à outrance. »
De son côté, AWS a aussi travaillé à améliorer ses outils de monitoring pour Kubernetes. La géant du cloud a présenté Amazon CloudWatch Container Insights, qui crée automatiquement des tableaux de bord qui monitorent tant EKS (Amazon Elastic Container Service for Kubernetes), que les déploiements de Kubernetes sur EC2.
Comment suivre le rythme d’une communauté de plus en plus variée
L’autre information à retenir de cette édition de la Kubecon : l’adoption de Kubernetes et son utilisation en production ont progressé beaucoup plus rapidement ces deux dernières années que l'adoption de machines virtuelles. Parmi les utilisateurs de Kubernetes, 80 % avaient au moins une application en production, révèle d’ailleurs une enquête réalisée par IDC. Le cabinet d’analystes s'attend à ce que cette empreinte de Kubernetes soit encore plus forte dans les mois à venir.
Cependant, la popularité de Kubernetes soulève un problème. Les fournisseurs de services cloud, à l’image de Google, Microsoft et AWS, doivent composer une communauté grandissante d’utilisateurs, elle-même de plus en plus diversifiée. Les utilisateurs sont désormais aussi bien des startups nées dans le cloud ou des entreprises plus conservatrices en matière d’IT.
Pour répondre à cela, Google a décidé de séparer les releases de Kubernetes effectuées sur GKE. La première, un accès aux releases qualifié de Rapid, offrira toutes les dernières fonctionnalités de Kubernetes, quelle que soit leur stabilité. La seconde, avec des releases stabilisés (Regular and Stable) permettra de découvrir des fonctions plus lentement. La stabilité opérationnelle sera la priorité. A ce stade, on se sait pas si ces différents canaux s’appliqueront à GKE Advanced. Ce service donne accès à une édition avancée de GKE, avec des garanties de SLA plus élevées qu’avec GKE Standard.