WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Etude, conception et implémentation d'un cluster low-cost haut disponibilité de Raspberry Pi 3

( Télécharger le fichier original )
par Rodrigue Tchuenche
Institut Africain d'Informatique (IAI) - Ingénieur 2016
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

2.2.3 Les Dockers

Docker, l'une des technologies les plus importantes du moment est un produit développé par la société du même nom Docker inc basé au USA. Initialement développé par un ingénieur français, Solomon Hykes 14, le produit a été dévoilé en mars 2013. Depuis cette date, Docker est devenu le soft à la mode. Son potentiel révolutionne notre façon de construire, de déployer et

13. Cinquième version majeure de Mac OS X, le système d'exploitation d'Apple pour les ordinateurs Macintosh

14. Solomon Hykes, né à New York en 1983, est un créateur d'entreprises franco-américain, vivant dans la Silicon Valley, et le créateur d'un concept à l'origine d'un ensemble de logiciels, Docker

22 IAI Gabon

c~Tchuenché Rodrigue Élève Ingénieur En Informatique 22

de distribuer les applications. Les environnements de développement sont souvent compliqués, difficile de garder la cohérence entre les différents membres de l'équipe. Une solution possible est de construire des machines virtuelles pré-configurées disponibles pour toute l'équipe. Docker peut sur ce point apporter des solutions en terme de rapidité et de légèreté par rapport aux VM.

2.2.3.1 C'est quoi un Docker?

Docker permet de créer des environnements virtuels appelés « containers » de manière à isoler les applications. Docker n'est pas une machine virtuelle (VM) à proprement parler, il repose sur le noyau Linux et sur une fonctionnalité : les containers, que nous connaissons sur le nom de LXC 15. En plus du LXC linux, un troisième composant est requis, cgroups16 qui va avoir pour objectif de gérer les ressources (utilisation de la RAM, CPU entre autres).

Bien que utilisant LXC et le cgroup qui sont natifs à linux, l'équipe de Docker inc a récemment mis en oeuvre une version Docker pour les systèmes Windows plus précisément à partir de Windows Server 2016. Docker est donc disponible pour la plus part des OS : Linux, Windows, Mac OS X pour les processeurs Intel et AMD x86, x64 et les processeurs ARM (comme le cas du Raspberry Pi que nous utilisons dans notre étude).

2.2.3.2 Difference entre Docker et Machine Virtuelle (VM)

Docker ne se comporte pas de la même manière qu'une machine virtuelle, Une Machine Virtuelle isole tout un système (son OS), et dispose de ses propres ressources. Dans le cas du Docker, le noyau va partager les ressources du système hôte et interagir avec le(s) container(s). Le Docker partage le noyau Linux de la machine hôte et «isole» les processus qui sont exécutés à l'intérieur du container. On n'a donc pas besoin de la couche Operating System complète comme dans une VM ce qui rend un Docker très léger, très maniable et facilement voyageable dans un environnement de cloud computing.(voir figure 2.14)

2.2.3.3 Environnement et notions de base Docker

Trois éléments essentiels forment les bases de la philosophie d'un Docker :

* Docker Image : c'est un template qui va servir directement ou indirectement à produire d'autres Docker Image ou des Docker containers.

* Docker Containers : c'est «l'exécutable» obtenu à partir d'une Docker Image. On peut le démarrer, l'arrêter ou le détruire.

* Docker Registry ou Docker Hub : c'est le repository des Docker Images. On peut y télécharger des Docker Images créé par d'autres mais également y stocker les siennes.

15. LXC, Linux containers est un système de virtualisation, utilisant l'isolation comme méthode de cloisonnement au niveau du système d'exploitation.

16. cgroups (control groups) est une fonctionnalité du noyau Linux pour limiter, compter et isoler l'utilisa-tion des ressources (processeur, mémoire, utilisation disque, etc.).

23 IAI Gabon

c~Tchuenché Rodrigue Élève Ingénieur En Informatique 23

FIGURE 2.14 - Machine Virtuelle Vs Docker

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Soit réservé sans ostentation pour éviter de t'attirer l'incompréhension haineuse des ignorants"   Pythagore