Maison Tutoriel système Linux Quelle est exactement la raison de la grande popularité de Kubernetes ?

Quelle est exactement la raison de la grande popularité de Kubernetes ?

Jan 03, 2024 am 08:30 AM
linux linux教程 红帽 linux系统 linux命令 certification Linux chapeau rouge Linux vidéo Linux

Présentation La plate-forme Kubernetes pour l'exécution de charges de travail conteneurisées joue un rôle important lors du développement et du déploiement d'applications cloud natives. Naturellement, le développement et le déploiement d’applications cloud natives sont devenus extrêmement populaires. Il y a des avantages évidents à un processus qui permet un déploiement rapide et une livraison continue de corrections de bugs et de nouvelles fonctionnalités, mais personne ne parle du problème de l’œuf et de la poule : comment y parvenir ? Construire l'infrastructure et les processus de développement à partir de zéro pour développer et maintenir des applications cloud natives est une tâche non triviale et longue.

Quelle est exactement la raison de la grande popularité de Kubernetes ?

Kubernetes est une plate-forme relativement nouvelle pour exécuter des charges de travail conteneurisées qui résout ces problèmes. Initialement un projet au sein de Google, Kubernetes a été offert à la Cloud Native Computing Foundation en 2015 et a attiré des développeurs de communautés open source du monde entier. Kubernetes est conçu sur la base des 15 années d'expérience de Google dans l'exploitation d'environnements de production et de développement. Puisqu’il est open source, n’importe qui peut le télécharger et l’utiliser et réaliser les avantages qu’il apporte.

Alors pourquoi Kubernetes a-t-il une si grosse surprise ? Je pense que cela constitue le meilleur équilibre entre les ressources d'une infrastructure en tant que service (IaaS) comme OpenStack et une plate-forme en tant que service (PaaS) complète, où la mise en œuvre du runtime sous-jacent est entièrement contrôlée par le fournisseur. Kubernetes offre deux avantages : une abstraction pour la gestion de l'infrastructure, ainsi que des outils et des capacités permettant de dépanner en profondeur dans le bare metal.

IaaS contre PaaS

OpenStack est généralement classé comme une solution IaaS, dans laquelle un pool de ressources physiques (telles que les processeurs, le réseau et le stockage) est alloué et partagé entre différents utilisateurs. Il utilise la virtualisation matérielle traditionnelle pour obtenir une isolation entre les utilisateurs.

L'API REST d'OpenStack permet la création automatisée d'infrastructures à l'aide de code, mais voici le problème. Les produits IaaS exportent également des infrastructures. Une fois créé, il n'existait pas beaucoup de moyens de service pour prendre en charge et gérer cette infrastructure supplémentaire. Dans la mesure où OpenStack produit l'infrastructure sous-jacente, telle que les serveurs et les adresses IP, cela devient une priorité de gestion. Un résultat bien connu est la prolifération des machines virtuelles (VM), mais il en va de même pour les réseaux, les clés de chiffrement et les volumes de stockage. De cette façon, les développeurs passent moins de temps à créer et à maintenir des applications.

Comme d'autres solutions basées sur des clusters, Kubernetes fonctionne au niveau du serveur individuel pour permettre une mise à l'échelle horizontale. Il facilite l'ajout de nouveaux serveurs et la planification instantanée des charges sur le nouveau matériel. De même, les serveurs peuvent être supprimés du cluster lorsqu'ils ne sont pas utilisés efficacement ou nécessitent une maintenance. Les autres tâches que Kubernetes peut gérer automatiquement sont les activités d'orchestration telles que la planification des tâches, la surveillance de l'état et le maintien de la haute disponibilité.

Le réseau est un autre domaine qui peut être difficile à orchestrer de manière fiable dans un environnement IaaS. La communication entre microservices via des adresses IP peut être délicate. Kubernetes implémente la gestion des adresses IP, l'équilibrage de charge, la découverte de services et l'enregistrement des noms DNS pour fournir un environnement réseau simple et transparent au sein du cluster.

Conçu pour le déploiement

Une fois que vous avez créé un environnement pour exécuter votre application, le déploiement est un jeu d'enfant. Déployer une application de manière fiable est une tâche plus facile à dire qu'à faire ; ce n'est pas la plus simple. Un énorme avantage de Kubernetes par rapport aux autres environnements est que les déploiements sont des citoyens de première classe.

Les applications peuvent être décrites et installées sur le cluster à l'aide d'une seule commande d'interface de ligne de commande (CLI) Kubernetes. Kubernetes permet l'intégralité du cycle de vie des applications, depuis le déploiement initial, le déploiement de nouvelles versions et la restauration en cas de panne d'une fonctionnalité critique. Les déploiements en cours peuvent également être suspendus et repris. Disposer d'outils intégrés prêts à l'emploi et d'une prise en charge du déploiement d'applications, plutôt que de devoir créer vous-même un système de déploiement, constitue un avantage à ne pas sous-estimer. Les utilisateurs de Kubernetes n’ont ni à réinventer la roue du déploiement d’applications ni à trouver cela une tâche ardue.

Kubernetes peut également surveiller l'état des déploiements en cours. Bien que vous puissiez écrire cette fonctionnalité de la même manière qu'un processus de déploiement dans un environnement IaaS, il s'agit d'une tâche très difficile et il existe de nombreux cas de ce type.

Conçu pour DevOps

Au fur et à mesure que vous gagnerez en expérience dans le développement et le déploiement d'applications Kubernetes, vous suivrez le même chemin que Google et d'autres qui vous ont précédé. Vous constaterez qu'il existe plusieurs fonctionnalités Kubernetes qui sont importantes pour le développement et le dépannage efficaces des applications multiservices.

Tout d’abord, la capacité de Kubernetes à inspecter facilement les services en cours d’exécution via des journaux ou SSH (shell sécurisé) est très importante. Avec un seul appel de ligne de commande, les administrateurs peuvent inspecter les journaux des services exécutés sous Kubernetes. Cela peut sembler une tâche simple, mais dans un environnement IaaS, ce n'est pas facile à moins d'avoir déjà effectué un certain travail. Les grandes applications disposent souvent de matériel et de personnel dédiés à la collecte et à l'analyse des journaux. La journalisation dans Kubernetes ne remplace peut-être pas une solution complète de journalisation et de métriques, mais elle suffit à fournir un dépannage de base.

Deuxièmement, Kubernetes fournit une gestion intégrée des clés. Un autre problème que connaissent les équipes qui ont développé leurs propres systèmes de déploiement à partir de zéro est qu'il est difficile de déployer en toute sécurité des données sensibles, telles que des mots de passe et des jetons API, sur des machines virtuelles. En faisant de la gestion des clés un citoyen de premier ordre, Kubernetes empêche vos équipes d'inventer leurs propres systèmes de distribution de clés non sécurisés et défectueux ou de coder en dur les informations d'identification dans les scripts de déploiement.

Enfin, Kubernetes dispose de fonctionnalités permettant d'automatiser la mise à l'échelle, l'équilibrage de charge et le redémarrage des applications. Encore une fois, ce sont des fonctionnalités que les développeurs devraient écrire eux-mêmes lorsqu'ils utilisent IaaS ou Bare Metal. La mise à l'échelle et les vérifications de l'état de votre application Kubernetes sont déclarées dans la définition du service, et Kubernetes garantit que le nombre correct d'instances s'exécute correctement.

Résumé

La différence entre les systèmes IaaS et PaaS est énorme et l'inclusion du PaaS peut permettre d'économiser beaucoup de temps de développement et de débogage. En tant que PaaS, Kubernetes implémente des fonctionnalités puissantes et efficaces pour vous aider à développer, déployer et déboguer des applications cloud natives. Son architecture et sa conception représentent des décennies d'expérience rare, et votre équipe bénéficie de cet avantage gratuitement.


À propos de l'auteur :

Tim Potter - Tim est ingénieur logiciel senior chez Hewlett Packard Enterprise. Il travaille sur des logiciels libres et open source depuis près de deux décennies, notamment sur des projets tels que Samba, Wireshark, OpenPegasus et Docker. Tim blogue sur https://elegantinfrastructure.com/ sur Docker, Kubernetes et d'autres sujets liés à l'infrastructure.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Différence entre Centos et Ubuntu Différence entre Centos et Ubuntu Apr 14, 2025 pm 09:09 PM

Les principales différences entre Centos et Ubuntu sont: l'origine (Centos provient de Red Hat, pour les entreprises; Ubuntu provient de Debian, pour les particuliers), la gestion des packages (Centos utilise Yum, se concentrant sur la stabilité; Ubuntu utilise APT, pour une fréquence de mise à jour élevée), le cycle de support (CentOS fournit 10 ans de soutien, Ubuntu fournit un large soutien de LT tutoriels et documents), utilisations (Centos est biaisé vers les serveurs, Ubuntu convient aux serveurs et aux ordinateurs de bureau), d'autres différences incluent la simplicité de l'installation (Centos est mince)

Comment utiliser Docker Desktop Comment utiliser Docker Desktop Apr 15, 2025 am 11:45 AM

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Explication détaillée du principe docker Explication détaillée du principe docker Apr 14, 2025 pm 11:57 PM

Docker utilise les fonctionnalités du noyau Linux pour fournir un environnement de fonctionnement d'application efficace et isolé. Son principe de travail est le suivant: 1. Le miroir est utilisé comme modèle en lecture seule, qui contient tout ce dont vous avez besoin pour exécuter l'application; 2. Le Système de fichiers Union (UnionFS) empile plusieurs systèmes de fichiers, ne stockant que les différences, l'économie d'espace et l'accélération; 3. Le démon gère les miroirs et les conteneurs, et le client les utilise pour l'interaction; 4. Les espaces de noms et les CGROUP implémentent l'isolement des conteneurs et les limitations de ressources; 5. Modes de réseau multiples prennent en charge l'interconnexion du conteneur. Ce n'est qu'en comprenant ces concepts principaux que vous pouvez mieux utiliser Docker.

Centos arrête la maintenance 2024 Centos arrête la maintenance 2024 Apr 14, 2025 pm 08:39 PM

Centos sera fermé en 2024 parce que sa distribution en amont, Rhel 8, a été fermée. Cette fermeture affectera le système CentOS 8, l'empêchant de continuer à recevoir des mises à jour. Les utilisateurs doivent planifier la migration et les options recommandées incluent CentOS Stream, Almalinux et Rocky Linux pour garder le système en sécurité et stable.

Comment installer CentOS Comment installer CentOS Apr 14, 2025 pm 09:03 PM

Étapes d'installation de CentOS: Téléchargez l'image ISO et Burn Bootable Media; démarrer et sélectionner la source d'installation; sélectionnez la langue et la disposition du clavier; configurer le réseau; partitionner le disque dur; définir l'horloge système; créer l'utilisateur racine; sélectionnez le progiciel; démarrer l'installation; Redémarrez et démarrez à partir du disque dur une fois l'installation terminée.

Quelles sont les méthodes de sauvegarde pour Gitlab sur Centos Quelles sont les méthodes de sauvegarde pour Gitlab sur Centos Apr 14, 2025 pm 05:33 PM

La politique de sauvegarde et de récupération de GitLab dans le système CentOS afin d'assurer la sécurité et la récupérabilité des données, Gitlab on CentOS fournit une variété de méthodes de sauvegarde. Cet article introduira plusieurs méthodes de sauvegarde courantes, paramètres de configuration et processus de récupération en détail pour vous aider à établir une stratégie complète de sauvegarde et de récupération de GitLab. 1. MANUEL BACKUP Utilisez le Gitlab-RakegitLab: Backup: Créer la commande pour exécuter la sauvegarde manuelle. Cette commande sauvegarde des informations clés telles que le référentiel Gitlab, la base de données, les utilisateurs, les groupes d'utilisateurs, les clés et les autorisations. Le fichier de sauvegarde par défaut est stocké dans le répertoire / var / opt / gitlab / backups. Vous pouvez modifier / etc / gitlab

Comment monter un disque dur dans les centos Comment monter un disque dur dans les centos Apr 14, 2025 pm 08:15 PM

Le support de disque dur CentOS est divisé en étapes suivantes: Déterminez le nom du périphérique du disque dur (/ dev / sdx); créer un point de montage (il est recommandé d'utiliser / mnt / newdisk); Exécutez la commande Mount (mont / dev / sdx1 / mnt / newdisk); modifier le fichier / etc / fstab pour ajouter une configuration de montage permanent; Utilisez la commande umount pour désinstaller l'appareil pour vous assurer qu'aucun processus n'utilise l'appareil.

Que faire après Centos arrête la maintenance Que faire après Centos arrête la maintenance Apr 14, 2025 pm 08:48 PM

Une fois CentOS arrêté, les utilisateurs peuvent prendre les mesures suivantes pour y faire face: sélectionnez une distribution compatible: comme Almalinux, Rocky Linux et CentOS Stream. Migrez vers les distributions commerciales: telles que Red Hat Enterprise Linux, Oracle Linux. Passez à Centos 9 Stream: Rolling Distribution, fournissant les dernières technologies. Sélectionnez d'autres distributions Linux: comme Ubuntu, Debian. Évaluez d'autres options telles que les conteneurs, les machines virtuelles ou les plates-formes cloud.

See all articles