Kubernetes

par

dans

Qu’est-ce qu’Azure Kubernetes Service ?

Qu’est-ce qu’un conteneur ?

Un conteneur est une unité atomique de logiciel qui empaquette le code, les dépendances et la configuration d’une application spécifique. Les conteneurs vous permettent de diviser les applications monolithiques en services individuels qui constituent la solution. Cette refonte de l’architecture de notre application nous permet de déployer ces services distincts via des conteneurs.

Kubernetes est une plateforme open source portable et extensible permettant d’automatiser le déploiement, la mise à l’échelle et la gestion des charges de travail conteneurisées. Kubernetes fait abstraction de la gestion complexe des conteneurs et nous fournit une configuration déclarative pour orchestrer les conteneurs dans différents environnements de calcul. Cette plateforme d’orchestration nous offre la même facilité d’utilisation et la même flexibilité qu’avec les offres PaaS (Platform as a Service) et Infrastructure as a Service (IaaS).

Kubernetes vous permet de visualiser votre centre de données comme un seul grand ordinateur. Nous ne nous préoccupons pas de la manière dont nous déployons nos conteneurs et de l’endroit où nous les déployons, mais uniquement du déploiement et de la mise à l’échelle de nos applications en fonction des besoins.

Voici quelques aspects supplémentaires à garder à l’esprit à propos de Kubernetes :

  • Kubernetes n’est pas une offre PaaS complète. Il fonctionne au niveau du conteneur et n’offre qu’un ensemble commun de fonctionnalités PaaS.
  • Kubernetes n’est pas monolithique. Il ne s’agit pas d’une seule application installée. Des aspects tels que le déploiement, la mise à l’échelle, l’équilibrage de charge, la journalisation et la surveillance sont tous facultatifs.
  • Kubernetes ne limite pas les types d’applications à exécuter. Si votre application peut s’exécuter dans un conteneur, elle s’exécute sur Kubernetes.
  • Vos développeurs doivent comprendre des concepts tels que l’architecture de micro services pour optimiser l’utilisation des solutions de conteneurs.
  • Kubernetes ne fournit pas d’intergiciels, d’infrastructures de traitement des données, de bases de données, de caches ou de systèmes de stockage en cluster. Tous ces éléments sont exécutés en tant que conteneurs ou dans le cadre d’une autre offre de service.
  • Un déploiement Kubernetes est configuré en tant que cluster. Un cluster se compose d’au moins une machine principale ou d’un plan de contrôle et d’une ou plusieurs machines de travail. Pour les déploiements de production, la configuration préférée est un déploiement à haute disponibilité avec trois à cinq machines de plan de contrôle répliquées. Ces machines de travail sont également appelées nœuds ou nœuds d’agent.

Qu’est-ce qu’Azure Kubernetes Service (AKS) ?

AKS gère votre environnement Kubernetes hébergé et simplifie le déploiement et la gestion d’applications conteneurisées dans Azure. Votre environnement AKS est activé avec des fonctionnalités telles que les mises à jour automatisées, l’auto-réparation et la mise à l’échelle facile. Azure gère gratuitement le plan de contrôle de votre cluster Kubernetes. Vous gérez les nœuds d’agent dans le cluster et ne payez que pour les machines virtuelles sur lesquelles vos nœuds s’exécutent.

Vous pouvez créer et gérer votre cluster dans le portail Azure ou avec Azure CLI. Lorsque vous créez le cluster, il existe des modèles Resource Manager pour automatiser la création du cluster. Avec ces modèles, vous avez accès à des fonctionnalités telles que les options de mise en réseau avancées, Microsoft Entra Identity et la surveillance des ressources. Ensuite, vous pouvez configurer des déclencheurs et des événements pour automatiser le déploiement du cluster pour plusieurs scénarios.

Avec AKS, vous bénéficiez des avantages de Kubernetes open source sans la complexité supplémentaire ou la surcharge opérationnelle que l’utilisation de Kubernetes uniquement peut entraîner.

Quand utiliser Azure Kubernetes Service ?

ServiceConsidération
Gestion des identités et de la sécuritéUtilisez-vous déjà des ressources Azure existantes et utilisez-vous l’ID Microsoft Entra ? Vous pouvez configurer un cluster AKS pour qu’il s’intègre à l’ID Microsoft Entra et réutilise les identités et l’appartenance à un groupe existantes.
Journalisation et surveillance intégréesAKS inclut Azure Monitor pour les conteneurs afin de fournir une visibilité des performances sur le cluster. Avec une installation Kubernetes personnalisée, vous optez pour une solution de supervision qui nécessite une installation et une configuration.
Mise à l’échelle automatique des nœuds et des pods de clusterIl est difficile de décider quand augmenter ou réduire la taille dans un environnement de conteneurisation de grande taille. AKS prend en charge deux options de mise à l’échelle automatique des clusters. Vous pouvez utiliser l’autoscaler de pod horizontal ou l’autoscaler de cluster pour mettre à l’échelle le cluster. L’autoscaler de pod horizontal surveille la demande de ressources des pods et augmente les ressources de pod pour répondre à la demande. Le composant de mise à l’échelle automatique 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 de cluster pour déployer des pods planifiés.
Mises à niveau des nœuds de clusterVous souhaitez réduire le nombre de tâches de gestion de cluster ? AKS gère les mises à niveau logicielles Kubernetes et le processus de bouclage des nœuds et de leur drainage afin de minimiser les perturbations des applications en cours d’exécution. Une fois cela fait, ces nœuds sont mis à niveau un par un.
Nœuds compatibles GPUAvez-vous des charges de travail gourmandes en ressources de calcul ou en ressources graphiques ? AKS prend en charge les pools de nœuds compatibles GPU.
Prise en charge des volumes de stockageVotre application est-elle avec état et nécessite-t-elle un stockage persistant ? AKS prend en charge les volumes de stockage statiques et dynamiques. Les pods peuvent s’attacher et se rattacher à ces volumes de stockage au fur et à mesure qu’ils sont créés ou reprogrammés sur différents nœuds.
Prise en charge des réseaux virtuelsAvez-vous besoin d’une communication réseau de pod à pod ou d’un accès aux réseaux locaux à partir de votre cluster AKS ? Un cluster AKS peut être facilement déployé dans un réseau virtuel existant.
Entrée avec prise en charge du routage d’application HTTPAvez-vous besoin de rendre vos applications déployées accessibles au public ? Le module complémentaire de routage d’applications HTTP facilite l’accès aux applications déployées en cluster AKS.
Prise en charge des images DockerUtilisez-vous déjà des images Docker pour vos conteneurs ? AKS prend en charge le format d’image de fichier Docker par défaut.
Registre de conteneurs privéAvez-vous besoin d’un registre de conteneurs privé ? AKS s’intègre à Azure Container Registry (ACR). Vous n’êtes pas limité à l’ACR ; Vous pouvez utiliser d’autres référentiels de conteneurs, qu’ils soient publics ou privés.

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *