{"product_id":"139455","title":"Kubernetes en action ","description":"\u003ccenter\u003e\u003cdiv style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/tmgdisk01.cafe24.com\/images\/vs\/4172\/sv\/3jXPBvo5z7jfM25OiGmkvAuhv2yfWT.png?v=1765074955\" style=\"max-width:100%;max-height:10px\"\u003e\u003c\/div\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\n\n\u003cdiv style=\"width:95%\"\u003e\n\n\u003cdiv style=\"text-align:center;font-size:30px;font-weight:bolder;line-height:1.6em\"\u003e Kubernetes en action \u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"border-bottom:1px;border-bottom-style:dotted;border-color:;padding-bottom:20px\"\u003e\u003ccenter\u003e\u003ctable align=\"center\" width=\"100%\"\u003e\u003ctbody style=\"border:0px\"\u003e\n\n\u003ctr\u003e\u003ctd align=\"center\" style=\"line-height:1.2em;text-align:center;font-size:18px;color:black;font-weight:bold;padding-bottom:20px;\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\n\u003ctr\u003e\u003ctd style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/image.yes24.com\/goods\/89607047\/XL\" style=\"max-width:100%;height:auto\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\n\n\u003c\/tbody\u003e\u003c\/table\u003e\u003c\/center\u003e\u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"width:95%;{split_style6}padding-top:20px;padding-bottom:20px\"\u003e\n\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003e Description \u003c\/div\u003e\n\n\u003cdiv style=\"text-align:left;word-break:break-all;font-size:14px;line-height:1.6em;\"\u003e\n\n\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eIntroduction au livre\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cdiv\u003e Ce document explique comment développer et exploiter efficacement des applications à l'aide de Kubernetes d'une manière facilement compréhensible même pour les débutants.\u003cbr\u003e Des exemples et des schémas sont fournis pour vous aider à comprendre clairement l'architecture Kubernetes et les concepts de chaque objet.\u003cbr\u003e La seconde partie fournit également une explication simple de la structure interne et des principes de fonctionnement de Kubernetes, vous permettant d'examiner à la fois l'intérieur et l'extérieur de Kubernetes.\u003cbr\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cul\u003e\u003cli\u003e Vous pouvez consulter un aperçu du contenu du livre.\u003cbr\u003e \u003cspan\u003eAperçu\u003c\/span\u003e\n\n\u003c\/li\u003e\u003c\/ul\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eindice\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e Partie 1.\u003cbr\u003e Aperçu de Kubernetes\u003cbr\u003e\u003cbr\u003e Chapitre 1.\u003cbr\u003e Introduction à Kubernetes\u003cbr\u003e\u003cbr\u003e 1.1 Pourquoi un système comme Kubernetes est nécessaire\u003cbr\u003e 1.1.1 Transition des applications monolithiques aux microservices\u003cbr\u003e 1.1.2 Fournir un environnement cohérent pour les applications\u003cbr\u003e 1.1.3 Transition vers la livraison continue : DevOps et NoOps \u003cbr\u003e1.2 Introduction à la technologie des conteneurs\u003cbr\u003e 1.2.1 Comprendre les conteneurs\u003cbr\u003e 1.2.2 Présentation de la plateforme de conteneurs Docker\u003cbr\u003e 1.2.3 Présentation de rkt comme alternative à Docker\u003cbr\u003e 1.3 Introduction à Kubernetes\u003cbr\u003e 1.3.1 Les origines de Kubernetes\u003cbr\u003e 1.3.2 Une vision plus large de Kubernetes\u003cbr\u003e 1.3.3 Comprendre l'architecture d'un cluster Kubernetes\u003cbr\u003e 1.3.4 Exécution d'applications sur Kubernetes\u003cbr\u003e 1.3.5 Avantages de l'utilisation de Kubernetes\u003cbr\u003e 1.4 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 2.\u003cbr\u003e Premiers pas avec Docker et Kubernetes\u003cbr\u003e\u003cbr\u003e 2.1 Création, exécution et partage d'images de conteneurs avec Docker\u003cbr\u003e 2.1.1 Installation de Docker et exécution du conteneur Hello World\u003cbr\u003e 2.1.2 Création d'une application Node.js simple\u003cbr\u003e 2.1.3 Création d'un Dockerfile pour une image\u003cbr\u003e 2.1.4 Création d'une image conteneur\u003cbr\u003e 2.1.5 Exécution de l'image du conteneur\u003cbr\u003e 2.1.6 Exploration de l'intérieur d'un conteneur en cours d'exécution\u003cbr\u003e 2.1.7 Arrêt et suppression des conteneurs\u003cbr\u003e 2.1.8 Envoi des images au registre d'images\u003cbr\u003e 2.2 Installation d'un cluster Kubernetes\u003cbr\u003e 2.2.1 Exécution d'un cluster Kubernetes à nœud unique avec Minikube \u003cbr\u003e2.2.2 Utilisation d'un cluster Kubernetes géré avec Google Kubernetes Engine\u003cbr\u003e 2.2.3 Configuration des alias kubectl et de la saisie semi-automatique des commandes\u003cbr\u003e 2.3 Exécution de votre première application sur Kubernetes\u003cbr\u003e 2.3.1 Exécution d'une application Node.js\u003cbr\u003e 2.3.2 Accès à l'application Web\u003cbr\u003e 2.3.3 Partie logique du système\u003cbr\u003e 2.3.4 Mise à l'échelle horizontale de l'application\u003cbr\u003e 2.3.5 Vérification du nœud sur lequel l'application est exécutée\u003cbr\u003e 2.3.6 Présentation du tableau de bord Kubernetes\u003cbr\u003e 2.4 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Partie 2.\u003cbr\u003e Concepts fondamentaux de Kubernetes\u003cbr\u003e\u003cbr\u003e Chapitre 3.\u003cbr\u003e Pods : Exécution de conteneurs dans Kubernetes\u003cbr\u003e\u003cbr\u003e 3.1 Introduction aux serviettes hygiéniques\u003cbr\u003e 3.1.1 Pourquoi les protections sont-elles nécessaires ?\u003cbr\u003e 3.1.2 Comprendre les blocs-notes\u003cbr\u003e 3.1.3 Configuration correcte des conteneurs dans un pod\u003cbr\u003e 3.2 Création d'un pod avec un descripteur YAML ou JSON\u003cbr\u003e 3.2.1 Examen du descripteur YAML d'un pod existant\u003cbr\u003e 3.2.2 Écriture d'une définition YAML simple définissant un pod\u003cbr\u003e 3.2.3 Création d'un pod avec la commande kubectl create\u003cbr\u003e 3.2.4 Consultation des journaux d'application\u003cbr\u003e 3.2.5 Envoi d'une requête à un pod \u003cbr\u003e3.3 Configuration des pods à l'aide d'étiquettes\u003cbr\u003e 3.3.1 Introduction à l'étiquetage\u003cbr\u003e 3.3.2 Étiquetage lors de la création d'un pod\u003cbr\u003e 3.3.3 Modification des étiquettes de coussinets existantes\u003cbr\u003e 3.4 Lister un sous-ensemble de pods à l'aide de sélecteurs d'étiquettes\u003cbr\u003e 3.4.1 Lister les pods à l'aide de sélecteurs d'étiquettes\u003cbr\u003e 3.4.2 Utilisation de plusieurs conditions dans les sélecteurs d'étiquettes\u003cbr\u003e 3.5 Restriction de la planification des pods à l'aide d'étiquettes et de sélecteurs\u003cbr\u003e 3.5.1 Utilisation d'étiquettes pour classer les nœuds de travail\u003cbr\u003e 3.5.2 Planification des pods sur des nœuds spécifiques\u003cbr\u003e 3.5.3 Planification sur un nœud spécifique\u003cbr\u003e 3.6 Blocs d'annotation\u003cbr\u003e 3.6.1 Interrogation des annotations d'un objet\u003cbr\u003e 3.6.2 Ajout et modification d'annotations\u003cbr\u003e 3.7 Regroupement des ressources à l'aide d'espaces de noms\u003cbr\u003e 3.7.1 La nécessité des espaces de noms\u003cbr\u003e 3.7.2 Exploration d'autres espaces de noms et pods\u003cbr\u003e 3.7.3 Création d'un espace de noms\u003cbr\u003e 3.7.4 Gestion des objets dans d'autres espaces de noms\u003cbr\u003e 3.7.5 Comprendre l'isolation fournie par les espaces de noms\u003cbr\u003e 3.8 Arrêt et retrait des plaquettes\u003cbr\u003e 3.8.1 Suppression d'un pod par son nom \u003cbr\u003e3.8.2 Suppression d'un pod à l'aide d'un sélecteur d'étiquette\u003cbr\u003e 3.8.3 Suppression des pods dont les espaces de noms ont été supprimés\u003cbr\u003e 3.8.4 Supprimer tous les pods d'un espace de noms tout en conservant l'espace de noms\u003cbr\u003e 3.8.5 Supprimer (presque) toutes les ressources d'un espace de noms\u003cbr\u003e 3.9 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 4.\u003cbr\u003e Réplication et autres contrôleurs : déploiement de pods géré\u003cbr\u003e\u003cbr\u003e 4.1 Maintenir la stabilité du coussin\u003cbr\u003e 4.1.1 Présentation de la sonde de vivacité\u003cbr\u003e 4.1.2 Création de sondes de disponibilité basées sur HTTP\u003cbr\u003e 4.1.3 Vérification du fonctionnement de la sonde de vivacité\u003cbr\u003e 4.1.4 Définition des propriétés supplémentaires de la sonde de vivacité\u003cbr\u003e 4.1.5 Création de sondes de vivacité efficaces\u003cbr\u003e 4.2 Introduction au contrôleur de réplication\u003cbr\u003e 4.2.1 Fonctionnement du contrôleur de réplication\u003cbr\u003e 4.2.2 Création d'un contrôleur de réplication\u003cbr\u003e 4.2.3 Vérification du fonctionnement du contrôleur de réplication\u003cbr\u003e 4.2.4 Déplacement de pods dans et hors du périmètre d'un contrôleur de réplication\u003cbr\u003e 4.2.5 Modification du modèle de bloc-notes\u003cbr\u003e 4.2.6 Mise à l'échelle horizontale des coussinets\u003cbr\u003e 4.2.7 Suppression d'un contrôleur de réplication \u003cbr\u003e4.3 Utilisation de ReplicaSets au lieu de ReplicationControllers\u003cbr\u003e 4.3.1 Comparaison des ReplicaSets et des ReplicationControllers\u003cbr\u003e 4.3.2 Définition d'un ensemble de répliques\u003cbr\u003e 4.3.3 Création et inspection d'un ensemble de répliques\u003cbr\u003e 4.3.4 Utilisation de sélecteurs d'étiquettes plus expressifs pour les ensembles de répliques\u003cbr\u003e 4.3.5 Nettoyage de ReplicaSet\u003cbr\u003e 4.4 Utilisation de DaemonSet pour exécuter exactement un pod sur chaque nœud\u003cbr\u003e 4.4.1 Exécution de pods sur tous les nœuds avec DaemonSet\u003cbr\u003e 4.4.2 Exécution de pods uniquement sur des nœuds spécifiques à l'aide de DaemonSets\u003cbr\u003e 4.5 Exécution d'un pod qui effectue une tâche unique et complète\u003cbr\u003e 4.5.1 Introduction aux ressources pour l'emploi\u003cbr\u003e 4.5.2 Définition des ressources pour l'emploi\u003cbr\u003e 4.5.3 Affichage des tâches qui exécutent les pods\u003cbr\u003e 4.5.4 Exécution de plusieurs instances de pod dans une tâche\u003cbr\u003e 4.5.5 Limitation du temps nécessaire à un module de tâches pour se terminer\u003cbr\u003e 4.6 Planification de l'exécution périodique ou ponctuelle d'une tâche\u003cbr\u003e 4.6.1 Création d'une tâche cron\u003cbr\u003e 4.6.2 Comprendre le fonctionnement des tâches planifiées\u003cbr\u003e 4.7 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 5. \u003cbr\u003eService : Permet aux clients de découvrir les pods et de communiquer avec eux.\u003cbr\u003e\u003cbr\u003e 5.1 Présentation du service\u003cbr\u003e 5.1.1 Création d'un service\u003cbr\u003e 5.1.2 Recherche de services\u003cbr\u003e 5.2 Connexion aux services en dehors du cluster\u003cbr\u003e 5.2.1 Présentation des points de terminaison de service\u003cbr\u003e 5.2.2 Configuration manuelle des points de terminaison de service\u003cbr\u003e 5.2.3 Création d'un alias pour un service externe\u003cbr\u003e 5.3 Exposition des services aux clients externes\u003cbr\u003e 5.3.1 Utilisation du service Nodeport\u003cbr\u003e 5.3.2 Exposition des services aux équilibreurs de charge externes\u003cbr\u003e 5.3.3 Comprendre les caractéristiques des connexions externes\u003cbr\u003e 5.4 Exposition des services en externe en tant que ressources d'entrée\u003cbr\u003e 5.4.1 Création d'une ressource Ingress\u003cbr\u003e 5.4.2 Accès aux services avec Ingress\u003cbr\u003e 5.4.3 Exposition de plusieurs services via une seule entrée\u003cbr\u003e 5.4.4 Configuration de l'entrée pour gérer le trafic TLS\u003cbr\u003e 5.5 Signalisation indiquant qu'un pod est prêt à accepter des connexions\u003cbr\u003e 5.5.1 Introduction aux sondes de disponibilité\u003cbr\u003e 5.5.2 Ajout d'une sonde de disponibilité à la nacelle\u003cbr\u003e 5.5.3 Fonctions qu'une sonde de disponibilité doit exécuter dans un environnement réel\u003cbr\u003e 5.6 Recherche de pods individuels avec services headless \u003cbr\u003e5.6.1 Création d'un service sans interface graphique\u003cbr\u003e 5.6.2 Recherche de pods via DNS\u003cbr\u003e 5.6.3 Rechercher tous les pods, y compris les pods non préparés\u003cbr\u003e 5.7 Dépannage des problèmes de service\u003cbr\u003e 5.8 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 6.\u003cbr\u003e Volume : Connexion d’un disque dur à un conteneur\u003cbr\u003e\u003cbr\u003e 6.1 Introduction au volume\u003cbr\u003e 6.1.1 Description du volume de l'exemple\u003cbr\u003e 6.1.2 Présentation des types de volumes disponibles\u003cbr\u003e 6.2 Partage de données entre conteneurs à l'aide de volumes\u003cbr\u003e 6.2.1 Utilisation des volumes emptyDir\u003cbr\u003e 6.2.2 Utilisation d'un dépôt Git comme volume\u003cbr\u003e 6.3 Accès aux fichiers sur le système de fichiers du nœud de travail\u003cbr\u003e 6.3.1 Introduction du volume hostPath\u003cbr\u003e 6.3.2 Vérification des pods système à l'aide des volumes HostPath\u003cbr\u003e 6.4 Utilisation du stockage persistant\u003cbr\u003e 6.4.1 Utilisation des disques persistants GCE comme volumes de pod\u003cbr\u003e 6.4.2 Utilisation d'autres types de volumes avec stockage persistant\u003cbr\u003e Technologie de stockage basée sur 6,5 et séparation des modules\u003cbr\u003e 6.5.1 Introduction des volumes persistants et des revendications de volumes persistants\u003cbr\u003e 6.5.2 Création d'un volume persistant\u003cbr\u003e 6.5.3 Demande d'un volume persistant par la création d'une demande de volume persistant \u003cbr\u003e6.5.4 Utilisation de PersistentVolumeClaims dans les pods\u003cbr\u003e 6.5.5 Comprendre les avantages de l'utilisation des volumes persistants et des revendications de volumes persistants\u003cbr\u003e 6.5.6 Réutilisation des volumes persistants\u003cbr\u003e 6.6 Provisionnement dynamique des volumes persistants\u003cbr\u003e 6.6.1 Définition des types de stockage disponibles via les ressources StorageClass\u003cbr\u003e 6.6.2 Demande d'une classe de stockage dans une PersistentVolumeClaim\u003cbr\u003e 6.6.3 Provisionnement dynamique sans spécification de classe de stockage\u003cbr\u003e 6.7 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 7.\u003cbr\u003e ConfigMaps et secrets : Paramètres de l’application\u003cbr\u003e\u003cbr\u003e 7.1 Configuration des applications conteneurisées\u003cbr\u003e 7.2 Transmission d'arguments de ligne de commande à un conteneur\u003cbr\u003e 7.2.1 Définition des commandes et des arguments dans Docker\u003cbr\u003e 7.2.2 Redéfinition des commandes et des arguments dans Kubernetes\u003cbr\u003e 7.3 Définition des variables d'environnement dans les conteneurs\u003cbr\u003e 7.3.1 Spécification des variables d'environnement dans les définitions de conteneur\u003cbr\u003e 7.3.2 Référence à d'autres variables d'environnement à partir de valeurs de variables\u003cbr\u003e 7.3.3 Inconvénients des variables d'environnement codées en dur\u003cbr\u003e 7.4 Séparation des paramètres avec ConfigMap\u003cbr\u003e 7.4.1 Introduction à ConfigMap\u003cbr\u003e 7.4.2 Création d'une ConfigMap \u003cbr\u003e7.4.3 Transmission des entrées ConfigMap aux conteneurs en tant que variables d'environnement\u003cbr\u003e 7.4.4 Transmission simultanée de tous les éléments d'une ConfigMap en tant que variables d'environnement\u003cbr\u003e 7.4.5 Transmission des entrées ConfigMap en tant qu'arguments de ligne de commande\u003cbr\u003e 7.4.6 Exposer les entrées ConfigMap sous forme de fichiers à l'aide de volumes ConfigMap\u003cbr\u003e 7.4.7 Mise à jour des paramètres de l'application sans redémarrage de celle-ci\u003cbr\u003e 7.5 Transmission de données sensibles aux conteneurs à l'aide de secrets\u003cbr\u003e 7.5.1 Présentation du secret\u003cbr\u003e 7.5.2 Présentation du secret du jeton de base\u003cbr\u003e 7.5.3 Créer un secret\u003cbr\u003e 7.5.4 Comparaison de ConfigMap et Secret\u003cbr\u003e 7.5.5 Utiliser des secrets dans les serviettes hygiéniques\u003cbr\u003e 7.5.6 Comprendre les secrets utilisés lors de la récupération d'images\u003cbr\u003e 7.6 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 8.\u003cbr\u003e Accéder aux métadonnées du pod et à d'autres ressources depuis votre application\u003cbr\u003e\u003cbr\u003e 8.1 Transmission de métadonnées via l'API Downward\u003cbr\u003e 8.1.1 Comprendre les métadonnées disponibles\u003cbr\u003e 8.1.2 Exposition des métadonnées en tant que variables d'environnement\u003cbr\u003e 8.1.3 Transmission de métadonnées sous forme de fichier à un volume d'API descendante\u003cbr\u003e 8.2 Communication avec le serveur d'API Kubernetes \u003cbr\u003e8.2.1 Exploration de l'API REST de Kubernetes\u003cbr\u003e 8.2.2 Communication avec le serveur API au sein d'un pod\u003cbr\u003e 8.2.3 Simplification de la communication avec le serveur API grâce aux conteneurs Ambassador\u003cbr\u003e 8.2.4 Communication avec le serveur API à l'aide de la bibliothèque cliente\u003cbr\u003e 8.3 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 9.\u003cbr\u003e Déploiement : Mises à jour déclaratives de l'application\u003cbr\u003e\u003cbr\u003e 9.1 Mise à jour des applications exécutées sur des pods\u003cbr\u003e 9.1.1 Supprimez l'ancien pod et remplacez-le par un nouveau pod.\u003cbr\u003e 9.1.2 Démarrage d'un nouveau pod et suppression de l'ancien pod\u003cbr\u003e 9.2 Exécution de mises à jour progressives automatiques avec le contrôleur de réplication\u003cbr\u003e 9.2.1 Exécution d'une version initiale de l'application\u003cbr\u003e 9.2.2 Mises à jour progressives avec kubectl\u003cbr\u003e 9.2.3 Pourquoi kubectl rolling-update n'est plus utilisé\u003cbr\u003e 9.3 Utilisation des déploiements pour mettre à jour de manière déclarative les applications\u003cbr\u003e 9.3.1 Création d'un déploiement\u003cbr\u003e Mise à jour du déploiement 9.3.2\u003cbr\u003e 9.3.3 Annulation d'un déploiement\u003cbr\u003e 9.3.4 Contrôle de la vitesse de déploiement\u003cbr\u003e 9.3.5 Suspension du processus de déploiement\u003cbr\u003e 9.3.6 Prévention du déploiement de versions incorrectes \u003cbr\u003e9.4 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 10.\u003cbr\u003e StatefulSets : Déploiement d’applications à état répliquées\u003cbr\u003e\u003cbr\u003e 10.1 Réplication des pods avec état\u003cbr\u003e 10.1.1 Exécution de plusieurs réplicas avec stockage séparé\u003cbr\u003e 10.1.2 Fournir une identité stable à chaque pod\u003cbr\u003e 10.2 Comprendre les StatefulSets\u003cbr\u003e 10.2.1 Comparaison des StatefulSets et des ReplicaSets\u003cbr\u003e 10.2.2 Fournir une identité réseau stable\u003cbr\u003e 10.2.3 Fournir un stockage dédié et fiable pour chaque instance avec état\u003cbr\u003e 10.2.4 Comprendre les garanties StatefulSet\u003cbr\u003e 10.3 Utilisation des StatefulSets\u003cbr\u003e 10.3.1 Création d'images d'application et de conteneur\u003cbr\u003e 10.3.2 Déploiement d'applications avec StatefulSets\u003cbr\u003e 10.3.3 Jouer avec des pads\u003cbr\u003e 10.4 Découverte des pairs dans les StatefulSets\u003cbr\u003e 10.4.1 Découverte des pairs via DNS\u003cbr\u003e Mise à jour de StatefulSet 10.4.2\u003cbr\u003e 10.4.3 Utilisation des datastores en cluster\u003cbr\u003e 10.5 Comprendre comment les StatefulSets gèrent les défaillances de nœuds \u003cbr\u003e10.5.1 Simulation de la déconnexion réseau d'un nœud\u003cbr\u003e 10.5.2 Suppression manuelle des pods\u003cbr\u003e 10.6 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Partie 3.\u003cbr\u003e Kubernetes en détail\u003cbr\u003e\u003cbr\u003e Chapitre 11.\u003cbr\u003e Comprendre le fonctionnement interne de Kubernetes\u003cbr\u003e\u003cbr\u003e 11.1 Comprendre l'architecture\u003cbr\u003e 11.1.1 Caractéristiques distribuées des composants Kubernetes\u003cbr\u003e 11.1.2 Comment Kubernetes utilise etcd\u003cbr\u003e 11.1.3 Fonctions du serveur API\u003cbr\u003e 11.1.4 Comprendre comment les serveurs API notifient les clients des modifications de ressources\u003cbr\u003e 11.1.5 Comprendre le planificateur\u003cbr\u003e 11.1.6 Présentation des contrôleurs exécutés dans le Gestionnaire de contrôleurs\u003cbr\u003e 11.1.7 Fonctionnement de Kubelet\u003cbr\u003e 11.1.8 Rôle du proxy de service Kubernetes\u003cbr\u003e 11.1.9 Présentation des modules complémentaires Kubernetes\u003cbr\u003e 11.1.10 Synthèse\u003cbr\u003e 11.2 Comment les contrôleurs collaborent\u003cbr\u003e 11.2.1 Compréhension des composants associés\u003cbr\u003e 11.2.2 Chaîne d'événements\u003cbr\u003e 11.2.3 Observation des événements de cluster\u003cbr\u003e 11.3 Comprendre les pods en cours d'exécution\u003cbr\u003e 11.4 Mise en réseau entre les pods\u003cbr\u003e 11.4.1 À quoi devrait ressembler le réseau ?\u003cbr\u003e 11.4.2 En savoir plus sur le fonctionnement des réseaux \u003cbr\u003e11.4.3 Introduction des interfaces réseau pour conteneurs\u003cbr\u003e 11.5 Méthode de mise en œuvre du service\u003cbr\u003e 11.5.1 Introduction de kube-proxy\u003cbr\u003e 11.5.2 Comment kube-proxy utilise iptables\u003cbr\u003e 11.6 Exécution d'un cluster à haute disponibilité\u003cbr\u003e 11.6.1 Amélioration de la disponibilité des applications\u003cbr\u003e 11.6.2 Amélioration de la disponibilité des composants du plan de contrôle Kubernetes\u003cbr\u003e 11.7 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 12.\u003cbr\u003e Sécurité du serveur d'API Kubernetes\u003cbr\u003e\u003cbr\u003e 12.1 Comprendre l'authentification\u003cbr\u003e 12.1.1 Utilisateurs et groupes\u003cbr\u003e 12.1.2 Introduction aux comptes de service\u003cbr\u003e 12.1.3 Création d'un compte de service\u003cbr\u003e 12.1.4 Attribution d'un compte de service à un pod\u003cbr\u003e 12.2 Sécurisation des clusters avec le contrôle d'accès basé sur les rôles\u003cbr\u003e 12.2.1 Présentation du plugin d'autorisation RBAC\u003cbr\u003e 12.2.2 Introduction aux ressources RBAC\u003cbr\u003e 12.2.3 Utilisation des rouleaux et des reliures à rouleaux\u003cbr\u003e 12.2.4 Utilisation des rôles de cluster et des liaisons de rôles de cluster\u003cbr\u003e 12.2.5 Comprendre les rôles de cluster par défaut et les liaisons de rôles de cluster\u003cbr\u003e 12.2.6 Accorder l'autorisation judicieusement\u003cbr\u003e 12.3 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 13.\u003cbr\u003e Nœuds de cluster et sécurité du réseau\u003cbr\u003e\u003cbr\u003e 13.1 Utilisation de l'espace de noms du nœud hôte dans un pod \u003cbr\u003e13.1.1 Utilisation de l'espace de noms réseau d'un nœud dans un pod\u003cbr\u003e 13.1.2 Liaison à un port hôte sans utiliser l'espace de noms réseau de l'hôte\u003cbr\u003e 13.1.3 Utilisation des PID de nœud et des espaces de noms IPC\u003cbr\u003e 13.2 Configuration du contexte de sécurité du conteneur\u003cbr\u003e 13.2.1 Exécution d'un conteneur en tant qu'utilisateur spécifique\u003cbr\u003e 13.2.2 Empêcher les conteneurs de s'exécuter en tant que root\u003cbr\u003e 13.2.3 Exécution du pod en mode privilégié\u003cbr\u003e 13.2.4 Ajout de fonctionnalités individuelles du noyau aux conteneurs\u003cbr\u003e 13.2.5 Suppression de fonctionnalités d'un conteneur\u003cbr\u003e 13.2.6 Empêcher les processus d'écrire sur le système de fichiers du conteneur\u003cbr\u003e 13.2.7 Partage de volumes lorsque les conteneurs s'exécutent en tant qu'utilisateurs différents\u003cbr\u003e 13.3 Limitation de l'utilisation des fonctionnalités de sécurité du pod\u003cbr\u003e 13.3.1 Présentation de la ressource PodSecurityPolicy\u003cbr\u003e 13.3.2 Politiques runAsUser, fsGroup et supplementalGroups\u003cbr\u003e 13.3.3 Configuration des fonctionnalités autorisées, par défaut et interdites\u003cbr\u003e 13.3.4 Limitation des types de volumes que les pods peuvent utiliser\u003cbr\u003e 13.3.5 Attribution de différentes stratégies de sécurité de pod à chaque utilisateur et groupe\u003cbr\u003e 13.4 Isolation du réseau de pods \u003cbr\u003e13.4.1 Utilisation de l'isolation réseau dans les espaces de noms\u003cbr\u003e 13.4.2 Autoriser uniquement certains pods clients d'un espace de noms à se connecter aux pods serveur\u003cbr\u003e 13.4.3 Isolation réseau entre les espaces de noms Kubernetes\u003cbr\u003e 13.4.4 Isolation à l'aide de la notation CIDR\u003cbr\u003e 13.4.5 Restriction du trafic sortant des pods\u003cbr\u003e 13.5 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 14.\u003cbr\u003e Gestion des ressources informatiques des pods\u003cbr\u003e\u003cbr\u003e 14.1 Requêtes de ressources provenant des conteneurs de pods\u003cbr\u003e 14.1.1 Création d'un pod avec une demande de ressource\u003cbr\u003e 14.1.2 Comment les demandes de ressources affectent la planification\u003cbr\u003e 14.1.3 Comment les requêtes CPU affectent le partage du temps CPU\u003cbr\u003e 14.1.4 Définition et demande de ressources personnalisées\u003cbr\u003e 14.2 Limitation des ressources disponibles pour les conteneurs\u003cbr\u003e 14.2.1 Définir une limite stricte à la quantité de ressources disponibles pour un conteneur\u003cbr\u003e 14.2.2 Dépassement de la limite de ressources\u003cbr\u003e 14.2.3 Comment les applications conteneurisées consultent les limites\u003cbr\u003e 14.3 Comprendre les classes QoS des pods\u003cbr\u003e 14.3.1 Définition des classes QoS pour les pods\u003cbr\u003e 14.3.2 Comprendre quels processus sont arrêtés lorsque la mémoire est faible \u003cbr\u003e14.4 Définition des requêtes et limites par défaut pour les pods par espace de noms\u003cbr\u003e 14.4.1 Présentation de la ressource LimitRange\u003cbr\u003e 14.4.2 Création d'un objet LimitRange\u003cbr\u003e 14.4.3 Limites de ressources imposées\u003cbr\u003e 14.4.4 Demandes et limites de ressources de base\u003cbr\u003e 14.5 Limitation des ressources totales disponibles pour un espace de noms\u003cbr\u003e 14.5.1 Présentation de l'objet de quota de ressources\u003cbr\u003e 14.5.2 Spécification des quotas pour le stockage persistant\u003cbr\u003e 14.5.3 Limitation du nombre d'objets pouvant être créés\u003cbr\u003e 14.5.4 Spécification des quotas pour des états de pod ou des classes QoS spécifiques\u003cbr\u003e 14.6 Surveillance de l'utilisation des ressources du pod\u003cbr\u003e 14.6.1 Collecte et récupération des données réelles d'utilisation des ressources\u003cbr\u003e 14.6.2 Stockage et analyse des statistiques périodiques d'utilisation des ressources\u003cbr\u003e 14.7 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 15.\u003cbr\u003e Mise à l'échelle automatique des pods et des nœuds du cluster\u003cbr\u003e\u003cbr\u003e 15.1 Mise à l'échelle automatique du pavé horizontal\u003cbr\u003e 15.1.1 Comprendre le processus de mise à l'échelle automatique\u003cbr\u003e 15.1.2 Mise à l'échelle basée sur l'utilisation du processeur\u003cbr\u003e 15.1.3 Mise à l'échelle basée sur la consommation de mémoire\u003cbr\u003e 15.1.4 Mise à l'échelle basée sur d'autres métriques et des métriques personnalisées \u003cbr\u003e15.1.5 Détermination des indicateurs adaptés à la mise à l'échelle automatique\u003cbr\u003e 15.1.6 Réduire le nombre de répliques à 0\u003cbr\u003e Mise à l'échelle automatique du pavé vertical 15.2\u003cbr\u003e 15.2.1 Configuration automatique des demandes de ressources\u003cbr\u003e 15.2.2 Modification des requêtes de ressources pendant l'exécution d'un pod\u003cbr\u003e 15.3 Extension horizontale des nœuds de cluster\u003cbr\u003e 15.3.1 Présentation de Cluster Autoscaler\u003cbr\u003e 15.3.2 Activation de l'autoscaler de cluster\u003cbr\u003e 15.3.3 Limitation des interruptions de service lors de la réduction de la taille du cluster\u003cbr\u003e 15.4 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 16.\u003cbr\u003e Planification avancée\u003cbr\u003e\u003cbr\u003e 16.1 Restriction de l'exécution des pods sur des nœuds spécifiques à l'aide de taints et de tolérances\u003cbr\u003e 16.1.1 Introduction à la contamination et à la tolérance\u003cbr\u003e 16.1.2 Ajout de taints personnalisés aux nœuds\u003cbr\u003e 16.1.3 Ajout de tolérance aux gousses\u003cbr\u003e 16.1.4 Comprendre l'utilisation de Tate et de la tolérance\u003cbr\u003e 16.2 Utilisation de l'affinité de nœud pour diriger les pods vers des nœuds spécifiques\u003cbr\u003e 16.2.1 Spécification des règles d'affinité des nœuds durs\u003cbr\u003e 16.2.2 Spécification de la priorité des nœuds lors de la planification des pods \u003cbr\u003e16.3 Colocalisation des capsules en utilisant l'affinité et l'anti-affinité des capsules\u003cbr\u003e 16.3.1 Déploiement de pods sur le même nœud à l'aide de l'affinité inter-pods\u003cbr\u003e 16.3.2 Déploiement de pods sur le même rack, la même zone de disponibilité ou la même région\u003cbr\u003e 16.3.3 Exprimer ses préférences en matière de protections hygiéniques au lieu d'exigences obligatoires\u003cbr\u003e 16.3.4 Planification des pods éloignés les uns des autres à l'aide de l'anti-affinité des pods\u003cbr\u003e 16.4 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 17.\u003cbr\u003e Meilleures pratiques pour le développement d'applications\u003cbr\u003e\u003cbr\u003e 17.1 Synthèse\u003cbr\u003e 17.2 Comprendre le cycle de vie du pod\u003cbr\u003e 17.2.1 Arrêt prévu de l'application et relocalisation du pod\u003cbr\u003e 17.2.2 Reprogrammation d'un pod arrêté ou partiellement arrêté\u003cbr\u003e 17.2.3 Placer les tampons de démarrage dans l'ordre souhaité\u003cbr\u003e 17.2.4 Ajout d'un point d'ancrage de cycle de vie\u003cbr\u003e 17.2.5 Comprendre l'arrêt du Pad\u003cbr\u003e 17.3 Assurer le traitement adéquat de toutes les demandes des clients\u003cbr\u003e 17.3.1 Prévention des déconnexions client lors du démarrage d'un pod\u003cbr\u003e 17.3.2 Prévention des déconnexions lors de l'arrêt du pod \u003cbr\u003e17.4 Faciliter l'exécution et la gestion des applications sur Kubernetes\u003cbr\u003e 17.4.1 Création d'une image conteneur gérable\u003cbr\u003e 17.4.2 Étiquetez correctement vos images et utilisez judicieusement imagePullPolicy.\u003cbr\u003e 17.4.3 Utilisation d'étiquettes multidimensionnelles au lieu d'étiquettes unidimensionnelles\u003cbr\u003e 17.4.4 Description de chaque ressource par des annotations\u003cbr\u003e 17.4.5 Fournir des informations sur la raison pour laquelle un processus s'est terminé.\u003cbr\u003e 17.4.6 Gestion de la journalisation des applications\u003cbr\u003e 17.5 Bonnes pratiques de développement et de test\u003cbr\u003e 17.5.1 Exécution d'applications en dehors de Kubernetes pendant le développement\u003cbr\u003e 17.5.2 Utilisation de Minikube pendant le développement\u003cbr\u003e 17.5.3 Gestion des versions et déploiement automatisé du manifeste de ressources\u003cbr\u003e 17.5.4 Présentation de Ksonnet comme alternative aux manifestes YAML\/JSON\u003cbr\u003e 17.5.5 Intégration continue et livraison continue\u003cbr\u003e 17.6 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Chapitre 18.\u003cbr\u003e Mise à l'échelle de Kubernetes\u003cbr\u003e\u003cbr\u003e 18.1 Définition des objets d'API personnalisés\u003cbr\u003e 18.1.1 Introduction à CustomResourceDefinition\u003cbr\u003e 18.1.2 Automatisation des ressources personnalisées avec des contrôleurs personnalisés\u003cbr\u003e 18.1.3 Validation des objets personnalisés \u003cbr\u003e18.1.4 Fourniture d'un serveur API personnalisé pour les objets personnalisés\u003cbr\u003e 18.2 Extension de Kubernetes avec le catalogue de services Kubernetes\u003cbr\u003e 18.2.1 Présentation du catalogue de services\u003cbr\u003e 18.2.2 Présentation du serveur d'API du catalogue de services et du gestionnaire de contrôleurs\u003cbr\u003e 18.2.3 Présentation de Service Broker et de l'API OpenServiceBroker\u003cbr\u003e 18.2.4 Mise en service et utilisation du service\u003cbr\u003e 18.2.5 Dissociation et déprovisionnement\u003cbr\u003e 18.2.6 Comprendre les avantages du catalogue de services\u003cbr\u003e 18.3 Plateforme basée sur Kubernetes\u003cbr\u003e 18.3.1 Plateforme de conteneurs Red Hat OpenShift\u003cbr\u003e 18.3.2 Flux de travail Deis et Helm\u003cbr\u003e 18.4 Résumé\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e Annexe A.\u003cbr\u003e Utilisation de kubectl dans un environnement multi-cluster\u003cbr\u003e\u003cbr\u003e Annexe B.\u003cbr\u003e Configuration d'un cluster multi-nœuds à l'aide de kubeadm\u003cbr\u003e\u003cbr\u003e Annexe C.\u003cbr\u003e Utilisation d'un environnement d'exécution de conteneur différent\u003cbr\u003e\u003cbr\u003e Annexe D.\u003cbr\u003e Fédération de clusters\u003cbr\u003e\u003cbr\u003e Les ressources Kubernetes abordées dans le livre\u003cbr\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eAvis de l'éditeur\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e \u003cb\u003e★ Ce que ce livre aborde ★\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e ■ Structure interne de Kubernetes\u003cbr\u003e ■ Déploiement de conteneurs sur un cluster \u003cbr\u003e■ Sécurité du cluster\u003cbr\u003e ■ Mises à jour de l'application sans interruption\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e \u003cb\u003e★ Public cible de ce livre ★\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e Il s'adresse aux développeurs de logiciels débutants et intermédiaires qui ne connaissent pas Docker ou les systèmes d'orchestration de conteneurs.\u003cbr\u003e Bien qu'il s'adresse principalement aux développeurs d'applications, il offre également une vue d'ensemble de la gestion des applications d'un point de vue opérationnel.\u003cbr\u003e Cela convient à toute personne intéressée par l'exécution et la gestion d'applications conteneurisées dans un environnement multi-serveurs.\u003cbr\u003e Les ingénieurs logiciels débutants et confirmés qui souhaitent apprendre les technologies de conteneurisation et mettre à l'échelle plusieurs conteneurs connexes acquerront l'expertise nécessaire pour développer, conteneuriser et exécuter des applications dans un environnement Kubernetes.\u003cbr\u003e Aucune expérience préalable en matière de technologies de conteneurs ou de Kubernetes n'est requise. \u003cbr\u003eIl explique le sujet en détail, étape par étape, et n'utilise pas de code source d'application difficile à comprendre pour les développeurs non experts.\u003cbr\u003e Toutefois, vous devez posséder au moins des connaissances de base en programmation, en réseaux informatiques, en exécution de commandes Linux de base et une compréhension des protocoles connus tels que HTTP.\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e \u003cb\u003e★ Structure de ce livre ★\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e Ce livre divise le chapitre 18 en trois parties.\u003cbr\u003e La première partie présente brièvement Docker et Kubernetes, explique comment installer un cluster Kubernetes et exécute une application simple.\u003cbr\u003e La première partie comporte deux chapitres.\u003cbr\u003e Le chapitre 1 explique ce qu'est Kubernetes, comment il a été créé et comment il contribue à résoudre les défis actuels liés à la gestion des applications à grande échelle. \u003cbr\u003eLe chapitre 2 propose un tutoriel pratique sur la manière de créer une image de conteneur et de l'exécuter sur un cluster Kubernetes.\u003cbr\u003e Il explique également comment exécuter localement un cluster Kubernetes à nœud unique et comment exécuter un cluster à nœuds multiples dans le cloud.\u003cbr\u003e\u003cbr\u003e La deuxième partie présente les concepts fondamentaux que vous devez comprendre pour exécuter des applications sur Kubernetes.\u003cbr\u003e Les chapitres de la partie 2 sont les suivants :\u003cbr\u003e Le chapitre 3 présente les Pods, les éléments de base de Kubernetes, et explique comment organiser les Pods et autres objets Kubernetes à l'aide d'étiquettes.\u003cbr\u003e Le chapitre 4 vous montre comment Kubernetes redémarre automatiquement les conteneurs pour assurer le bon fonctionnement de vos applications. \u003cbr\u003eVous apprendrez également à gérer correctement les pods, à les mettre à l'échelle horizontalement, à les rendre résilients aux pannes des nœuds du cluster et à les exécuter à des moments prédéfinis ou périodiquement.\u003cbr\u003e Le chapitre 5 explique comment exposer les services fournis par les pods aux clients situés à l'intérieur et à l'extérieur du cluster.\u003cbr\u003e Il montre également comment découvrir et accéder aux services, que les pods exécutés dans le cluster résident à l'intérieur ou à l'extérieur de celui-ci.\u003cbr\u003e Le chapitre 6 explique comment plusieurs conteneurs exécutés sur le même pod peuvent partager des fichiers et comment gérer le stockage persistant et le rendre accessible aux pods.\u003cbr\u003e Le chapitre 7 explique comment transmettre des informations importantes, telles que les données de configuration et les informations d'identification, aux applications exécutées dans des pods. \u003cbr\u003eLe chapitre 8 explique comment obtenir des informations sur l'environnement Kubernetes dans lequel votre application s'exécute et comment communiquer avec Kubernetes pour modifier l'état du cluster.\u003cbr\u003e Le chapitre 9 introduit le concept de déploiement et vous guide à travers la méthode appropriée pour exécuter et mettre à jour des applications dans un environnement Kubernetes.\u003cbr\u003e Le chapitre 10 explique comment exécuter des applications avec état qui nécessitent une identité et un état stables.\u003cbr\u003e\u003cbr\u003e La partie 3 examine plus en détail le fonctionnement interne d'un cluster Kubernetes, en introduisant des concepts supplémentaires et en s'appuyant sur ce que nous avons appris dans les parties 1 et 2 à un niveau supérieur.\u003cbr\u003e La composition finale est la suivante :\u003cbr\u003e Le chapitre 11 décrit tous les composants qui constituent un cluster Kubernetes et le rôle de chaque composant. \u003cbr\u003eIl explique également comment les pods communiquent sur le réseau et comment un service répartit la charge de plusieurs pods.\u003cbr\u003e Le chapitre 12 explique comment sécuriser le serveur d'API Kubernetes à l'aide de l'authentification et de l'autorisation.\u003cbr\u003e Le chapitre 13 explique comment les pods peuvent accéder aux ressources d'un nœud et comment les administrateurs de cluster peuvent empêcher les pods d'accéder aux ressources.\u003cbr\u003e Le chapitre 14 explique comment limiter les ressources informatiques disponibles pour les applications, configurer les garanties de qualité de service (QoS) pour les applications et surveiller l'utilisation des ressources pour chaque application.\u003cbr\u003e Il vous explique également comment empêcher les utilisateurs d'utiliser trop de ressources. \u003cbr\u003eLe chapitre 15 explique comment configurer Kubernetes pour faire évoluer automatiquement le nombre de réplicas exécutés dans votre application et comment augmenter la taille du cluster pour prendre en charge des applications dépassant le nombre actuel de nœuds du cluster.\u003cbr\u003e Le chapitre 16 explique comment planifier des pods uniquement sur des nœuds spécifiques ou comment empêcher que des pods soient planifiés sur d'autres nœuds.\u003cbr\u003e Nous examinons également comment planifier les sessions des groupes ensemble ou non.\u003cbr\u003e Le chapitre 17 vous montre comment développer des applications adaptées aux clusters Kubernetes.\u003cbr\u003e Il fournit également des conseils sur la manière de configurer votre flux de travail de développement et de test afin de réduire les frictions pendant le développement. \u003cbr\u003eLe chapitre 18 montre comment étendre Kubernetes avec des objets personnalisés et comment d'autres ont construit des plateformes d'applications de niveau entreprise.\u003cbr\u003e Grâce au contenu ci-dessus, vous découvrirez chaque composant de Kubernetes et apprendrez progressivement à utiliser l'outil en ligne de commande kubectl.\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e \u003cb\u003e★ Note de l'auteur ★\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e Après avoir travaillé chez Red Hat pendant plusieurs années, j'ai été affecté à l'équipe nouvellement créée Cloud Enablement fin 2014.\u003cbr\u003e La mission consistait à migrer le portefeuille de logiciels intermédiaires de l'entreprise vers la plateforme de conteneurs OpenShift construite sur Kubernetes.\u003cbr\u003e À cette époque, Kubernetes était dans sa version initiale (1.0) et n'avait pas encore été officiellement publié.\u003cbr\u003e Pour définir la bonne orientation du logiciel et tirer parti des fonctionnalités offertes par Kubernetes, nous devions rapidement comprendre toutes les fonctionnalités de Kubernetes. \u003cbr\u003eLorsque des problèmes survenaient, il était difficile de déterminer si nous avions commis une erreur ou s'il s'agissait d'un bug dans une version préliminaire de Kubernetes.\u003cbr\u003e Depuis, Kubernetes s'est développé rapidement et j'ai acquis une bonne compréhension de son fonctionnement.\u003cbr\u003e J'ai commencé à utiliser Kubernetes alors que le terme lui-même m'était inconnu.\u003cbr\u003e C'est aujourd'hui la méthode qui connaît la croissance la plus rapide et la plus répandue pour exécuter des applications dans le cloud et les centres de données sur site, ce qui en fait un concept familier à presque tous les ingénieurs logiciels.\u003cbr\u003e Environ un mois après avoir commencé à utiliser Kubernetes, j'ai écrit deux articles de blog sur la façon d'exécuter un cluster de serveurs d'applications JBoss WildFly sur OpenShift\/Kubernetes.\u003cbr\u003e À l'époque, je n'aurais jamais imaginé que quelqu'un de Manning Publishing me contacterait après avoir lu mon article de blog pour me demander d'écrire un livre sur Kubernetes. \u003cbr\u003eJe n'ai pas refusé l'offre, même si cela impliquait de contacter quelqu'un qui pourrait être en mesure d'écrire un livre.\u003cbr\u003e C'est ainsi que j'en suis venu à écrire ce livre.\u003cbr\u003e Après plus d'un an et demi de rédaction et de recherche assidues, j'y ai finalement mis un terme.\u003cbr\u003e Ce fut une expérience très précieuse.\u003cbr\u003e L'écriture de ce livre m'a appris beaucoup plus sur Kubernetes que je n'aurais jamais pu l'apprendre en tant qu'utilisateur.\u003cbr\u003e À mesure que mes connaissances sur Kubernetes s'étendaient et que Kubernetes évoluait, j'ai dû réviser et affiner ce que j'avais écrit précédemment.\u003cbr\u003e Je suis perfectionniste.\u003cbr\u003e Je ne suis pas satisfait de ce livre.\u003cbr\u003e Néanmoins, je suis ravi que tant de lecteurs du programme d'accès anticipé Manning (MEAP) aient trouvé ce livre être un excellent guide de Kubernetes.\u003cbr\u003e Mon objectif est d'apprendre aux lecteurs à comprendre la technologie elle-même et à utiliser les outils pour développer et déployer des applications sur des clusters Kubernetes de manière efficace et efficiente. \u003cbr\u003eCe livre ne traite pas réellement de la configuration ou de l'exploitation d'un cluster Kubernetes avec un niveau de disponibilité raisonnable.\u003cbr\u003e Cependant, dans les trois dernières parties, nous avons rédigé un aperçu détaillé de la configuration du cluster et des ressources supplémentaires pour aider les lecteurs à comprendre.\u003cbr\u003e J'espère que vous apprécierez d'apprendre à tirer le meilleur parti de ce système incroyable qu'est Kubernetes.\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e \u003cb\u003e★ Note du traducteur ★\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e Depuis son annonce par Google en 2014, Kubernetes est rapidement devenu l'une des technologies les plus populaires.\u003cbr\u003e Dans un environnement informatique où l'agilité commerciale est de plus en plus mise en avant, l'architecture de microservices (MSA) est devenue la norme de facto, et Kubernetes a récemment été sous les projecteurs comme la technologie la plus adaptée à la mise en œuvre d'environnements MSA. \u003cbr\u003eDe plus, Kubernetes est introduit et utilisé dans divers domaines, tels que l'informatique de périphérie dans les environnements IoT, le déploiement de flux de travail d'apprentissage automatique (kubeflow) dans la science des données, la virtualisation de l'infrastructure de communication (VNF, Virtual Network Function) dans la 5G, et en outre comme technologie clé pour la prise en charge du cloud hybride ou multicloud.\u003cbr\u003e Témoignant de cet enthousiasme fervent, de nombreux ouvrages ont été publiés et traduits, mais si j'ai entrepris de rééditer ce livre, qui semble un peu dépassé, c'est parce que j'ai d'abord été fasciné par la visualisation pertinente et l'explication métaphorique des concepts proposée par l'auteur, et parce qu'il s'agit d'un ouvrage que l'on peut qualifier de bible du domaine Kubernetes, grâce à sa structure solide qui couvre l'explication détaillée de la structure interne de Kubernetes, et même le multicloud et l'extension de Kubernetes. \u003cbr\u003eLes traducteurs de ce livre sont membres du groupe d'étude « 100-Day Kubernetes Architecture Journey », un groupe d'étude basé sur ce livre au sein du « Kubernetes Korea Group », et ont tout mis en œuvre pour que cette réédition soit aussi facile et agréable à lire que possible pour les lecteurs.\u003cbr\u003e Nous avons essayé de suivre au plus près le glossaire de l'équipe de traduction coréenne de Kubernetes pour la terminologie, vérifié que les exemples pouvaient être exécutés sur la dernière version de Kubernetes et ajouté diverses annotations pour aider les lecteurs à comprendre.\u003cbr\u003e Bien que le texte original soit globalement bien structuré, de nombreuses subtilités étaient difficiles à retranscrire par la traduction lors de l'explication des concepts, et un effort considérable a été déployé pour les rendre en coréen.\u003cbr\u003e En tant que traductrice, je serais extrêmement flattée si je pouvais entendre des commentaires disant que mon travail était fluide et facile à lire.\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"width:95%;padding-top:20px;padding-bottom:20px\"\u003e\n\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003e SPÉCIFICATIONS DES PRODUITS \u003c\/div\u003e\n\n\u003cdiv style=\"text-align:left;font-size:14px;line-height:1.6em;\"\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eDate de publication :\u003c\/strong\u003e 31 mars 2020\u003c\/div\u003e\n\n \u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e\n\u003cstrong\u003eNombre de pages, poids, dimensions :\u003c\/strong\u003e 844 pages | 1 605 g | 188 × 235 × 40 mm\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eISBN13 :\u003c\/strong\u003e 9791161754048\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eISBN10 :\u003c\/strong\u003e 1161754040 \u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003ccenter\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cspan\u003e\u003c\/span\u003e\n\n\u003c\/center\u003e\n\n\n\u003c\/center\u003e","brand":"LIBRAIRIE COREENNE","offers":[{"title":"Default Title","offer_id":43893357051946,"sku":"139455","price":63.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0683\/2750\/5962\/files\/a766f97ea53c18713aa78c0a85c451d0.jpg?v=1765398251","url":"https:\/\/librairie.coreenne.fr\/products\/139455","provider":"LIBRAIRIE COREENNE","version":"1.0","type":"link"}