DEV Community

IrArevalo
IrArevalo

Posted on

Kubernetes, my friends... Kubernetes

#fr

Qu’Est-ce que Kubernetes

Kubernetes est un comme un chef d’orchestre. Il est en charge de veiller a que tous les containers de Docker roulent et soient disponibles. Kubernetes peut donc automatiser toute la gestion des conteneurs; partir des nouveaux conteneurs, redémarrer des conteneurs et même arrêter des conteneurs. Pour cette raison, Kubernetes est souvent utilisé lorsqu’on a une grande quantité de conteneurs à gérer, afin d’alléger la gestion et permettre l'évolutivité.

Lexique Important

Cluster : un cluster est un ensemble de machines ou conteneurs aussi appelés « nodes ». Chaque cluster contient au moins un node.

Container : une image portable qui continent toutes les dépendances nécessaires pour fonctionner

Controller : vigilent et contrôle l'état des conteneurs, fais des changements ou demande des changements au besoin afin de s'approcher le plus possible aux résultats attendus

Pod : un set de conteneurs dans un cluster. Est aussi l'élément plus simple et petit des objets Kubernetes

Workload : Une application qui roule sur Kubernetes

Volume : Un dossier qui continent des données qui sont accessibles aux conteneurs dans des Pods

Control Pane : Un conteneur d'orchestration qui expose aussi l'API de Kubernetes. Sert a definir les interfaces, deployer et gerer le cycle de vie des conteneurs.

API Server (aka _ kube-apiserver ): Le serveur API de Kubernetes. C'est comme le front-end du _control pane de Kubernetes

Endpoints :Siventles addresses IP des Pods

Tutoriel de déploiement d'application Express JS sur Kubernetes

  1. En premier on crée notre pojet express qui ressemble à ceci alt text

  2. On crée maintenant un Dockerfile afin de conteneuriser notre très lourde application express
    alt text

  3. On build notre image docker

angel@BigAngel:~/DockerStuff/kubTest$ docker build -t kubernetes-node .

  1. On construis notre ficher deployment.yaml
    alt text

  2. On déploie à l’aide de kubernetes

angel@BigAngel:~/DockerStuff/kubTest$ kubectl apply -f deployment.yaml

  1. On expose notre port

angel@BigAngel:~/DockerStuff/kubTest$ kubectl expose deploy kubernetes-node-deployment --type=NodePort

  1. Quel port nous a été assigné?

angel@BigAngel:~/DockerStuff/kubTest$ kubectl get service

  1. On teste et voilà alt text

Maintenant effectuons un changement cette application

  1. On modifie le code source – Quel grand changement
    alt text

  2. On va faire un autre build docker, cette fois la version 2 de l’application

angel@BigAngel:~/DockerStuff/kubTest$ docker build -t kubernetes-node:v2 .

  1. On doit alors aller faire un petit changement au ficher de déploiement de Kubernetes
    alt text

  2. On déploie à nouveau avec Kubernetes

angel@BigAngel:~/DockerStuff/kubTest$ kubectl apply -f deployment.yaml

  1. On teste à nouveau – Quelle belle magie alt text

Source

Top comments (0)