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
  

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

Institut Africain d'Informatique

Myrabilys Technologies Sarl

Etablissement Inter - Etats d'Enseignement Supérieur
BP 2263 Libreville (Gabon)
Tél. (241) 07 70 55 00 / 07 70 56 00
Site web: www.iai-siege.com
E-mail: contact@iaisiege.com

Carrefour Ancienne Sobraga
BP 13.984 Libreville (Gabon)
Tél. (241) 01 73 00 24
Site web: www.myrabilys.com

MÉMOIRE DE FIN DE CYCLE

En vue de l'obtention du diplôme

D'INGENIEUR EN INFORMATIQUE

THÈME

ÉTUDE, CONCEPTION ET

IMPLÉMENTATION D'UN CLUSTER LOW-

COST HAUTE DISPONIBILITÉ DE

RASPBERRY PI 3

Réalisé par :

TCHUENCHÉ Rodrigue
Élève en fin de cycle ingénieur

Superviseur

Maître de stage

Dr. NOUSSI Roger
Enseignant Permanent à IAI

M. NJIOMO Luc Prosper
Ingénieur Informaticien & MBA

C.E.O de Myrabilys

Année Académique 2015 - 2016

ÉTUDE, CONCEPTION ET IMPLÉMENTATION

D'UN CLUSTER LOW-COST HAUTE

DISPONIBILITÉ DE RASPBERRY PI 3

Tchuenché Rodrigue

Septembre 2016

Table des matières

Liste des Acronymes vii

DÉDICACE xi

ÉPIGRAPHE xii

REMERCIEMENTS xiii

AVANT-PROPOS xiv

RÉSUMÉ xv

ABSTRACT xvi

INTRODUCTION GÉNÉRALE 1

I PARTIE 1 : Présentation générale de l'étude 2

INTRODUCTION 3

1 CHAPITRE 1 : Présentation de la structure d'accueil, du contexte et du su-

jet d'étude 4

1.1 Structure d'accueil 4

1.1.1 Historique 4

1.1.2 Missions et Activités 4

1.1.3 Organigramme 5

1.2 Contexte et Problématique 7

1.3 Sujet d'étude 7

ii

2 CHAPITRE 2 : Concepts généraux liés au sujet 9

iii

iii

2.1 Quelques Définitions 9

2.2 Etude de quelques concepts liés au sujet d'étude 10

2.2.1 Raspberry Pi 10

2.2.1.1 Modèle A 11

2.2.1.2 Modèle A+ 11

2.2.1.3 Modèle B 12

2.2.1.4 Modele B+ 12

2.2.1.5 Modèle 2B 13

2.2.1.6 Modèle 3B 14

2.2.1.7 Modèle Zéro 14

2.2.2 Cluster 16

2.2.2.1 Catégories de clusters 16

2.2.2.2 Architecture des Clusters 19

2.2.3 Les Dockers 21

2.2.3.1 C'est quoi un Docker? 22

2.2.3.2 Difference entre Docker et Machine Virtuelle (VM) 22

2.2.3.3 Environnement et notions de base Docker 22

2.2.4 ERP Odoo 23

2.2.4.1 Historique 23

2.2.4.2 Principaux Modules Applicatifs du logiciel Odoo 24

2.2.4.3 Architecture Logiciel d'Odoo 25

CONCLUSION 25

II PARTIE 2 : Conception, Implémentation et étude de la solution

à proposer 26

INTRODUCTION 27

3 CHAPITRE 3 : Analyse et conception 28

3.1 Solution logicielle de Cluster 28

iv

 

3.1.1

3.1.2

Microsoft Cluster / Cluster pour système Windows

3.1.1.1 Microsoft Cluster Server (MSCS)

3.1.1.2 Evidian Safekit

Cluster GNU/Linux

28

29

29

30

 
 

3.1.2.1 Linux Virtuel Server (LVS)

30

 
 

3.1.2.2 Beowulf

30

 
 

3.1.2.3 Linux HA-Project

31

 
 

3.1.2.4 Multicomputer Operating System for Unix (MOSIX)

31

 
 

3.1.2.5 Apache Mesos

31

 
 

3.1.2.6 Cluster Docker Swarm

31

3.2

Analyse Des Solutions

32

3.3

Concepts de répartition de charge réseau (Load Balancing)

32

 

3.3.1

Présentation

32

 

3.3.2

Logiciels de distribution de charge réseau et haute Disponibilité du cluster 33

 
 

3.3.2.1 HAProxy

33

 
 

3.3.2.2 Heartbeat

34

 

3.4

Conception du cluster

35

 
 

3.4.1 Nombre de Noeuds du Cluster

35

 
 

3.4.2 Adressage IP du Cluster

36

 
 

3.4.3 Constituant de chaque noeud

36

 
 

3.4.4 Architecture de notre cluster

37

 

CONCLUSION

37

4

CHAPITRE 4 : Mise en oeuvre du cluster

39

 

4.1

Matériel utilisés pour monter notre Cluster

39

 

4.2

Mise en OEuvre du cluster

42

 
 

4.2.1 Installation du système d'exploitation sur les 10 noeuds du cluster . . . .

42

 
 

4.2.1.1 Configuration adresse IP des noeuds Raspberry Pi

42

 
 
 

iv

v

v

4.2.1.2 Configuration nom d'hôte des noeuds Raspberry Pi 43

4.2.2 Installation du moteur Docker sur chaque noeud 43

4.2.3 Création d'un container Docker, le cas du container Odoo 43

4.2.3.1 Création d'un Docker Image à partir d'un Dockerfile 44

4.2.3.2 Création des Docker Containers 44

4.2.4 Mise en oeuvre du Cluster Docker Swarm 44

4.2.5 Mise en OEuvre du Cluster de Répartition de charges et Haute Disponi-

bilité 45

4.2.5.1 Mise en oeuvre de la répartition de charge 45

4.2.5.2 Mise en oeuvre Haute Disponibilité du cluster 46

CONCLUSION 47

5 CHAPITRE 5 :Évaluation du cluster et conduite du projet 48

5.1 Protocole d'évaluation 48

5.2 Évaluation du cluster 49

5.2.1 Évaluation de l'énergie 49

5.2.2 Évaluation coût du cluster 50

5.2.3 Évaluation Performance Cluster 50

5.3 Conduite du projet 50

5.3.1 Les intervenants dans le projet 51

5.3.2 Découpage du projet 51

5.3.3 Diagramme de GANTT 52

5.4 Bilan et perspectives 53

5.4.1 Bilan 53

5.4.2 Perspectives 54

CONCLUSION GÉNÉRALE 55

Les Annexes 56

.1 Annexe 1 56

vi

vi

.2 Annexe 2 58

.3 Annexe 3 59

.4 Annexe 4 60

.5 Annexe 5 61

.6 Annexe 6 68

.7 Annexe 7 68

.8 Annexe 8 70

.9 Annexe 9 75

.10 Annexe 10 80

Référence bibliographique 83

vii

vii

Liste des Acronymes

Abréviations

Significations

VM

Virtual Machine

ERP

Enterprise Resource Planning

Sarl

Societé à Responsabilité Limité

IAAS

Infrastructure As A Service

SAAS

Software as a service

CRM

Customer Relationship Management

ARM

Advanced RISC Machines

HDMI

Interface Multimédia Haute Définition

GPIO

General Purpose Input/Ouput

MOSIX

Multicomputer Operating System for Unix

FTP

File Transfert Protocol

DMA

Direct Memory Access

API

Application Program Interface

PVM

Parallele Virtual Machine

MPI

Message Passing Interface

RMA

Remote Memory Access

RAM

Random Access Memory

CPU

Central Processing Unit

LXC

Linux Container

OS

Operating System

GPL

General Public License

LGPL

Lesser General Public License

CMS

Content Management System

MVC

Modèle Vue Contrôleur

NLB

Network Load Balancing

MSCS

Microsoft Cluster Service

CLB

Component Load Balancing

LVS

Linux Virtual Server

TABLE 1 - Liste des abréviations

viii

Liste des tableaux

1

Liste des abréviations

vii

2.1

Tableau récapitulatif version Odoo

24

4.1

Carte MicroSD 8 & 32 Go

40

5.1

Comparaison consommation d'énergie

50

5.2

Table dépenses

50

5.3

Comparaison coût

50

5.4

Découpage des tâches

52

5

Liste outils nécessaires pour flasher la carte microSD

56

ix

Table des figures

2.1 Schéma Architecture D'un Cluster 10

2.2 Une carte nue du Raspberry Pi modèle A 12

2.3 Une carte nue du Raspberry Pi modèle A+ 12

2.4 Une carte nue du Raspberry Pi modèle B 13

2.5 Une carte nue du Raspberry Pi modèle B+ 13

2.6 Une carte nue du Raspberry Pi 2 modèle B 14

2.7 Une carte nue du Raspberry Pi 3 modèle B 14

2.8 Une carte nue du Raspberry Pi Zéro 15

2.9 Une carte annotée du Raspberry Pi 3 Modèle B 15

2.10 Cluster haute disponibilité 17

2.11 Cluster répartition de charges 18

2.12 Cluster calcul haute performance 18

2.13 Cluster de stockage 19

2.14 Machine Virtuelle Vs Docker 23

3.1 Architecture Haproxy 34

3.2 Architecture Haproxy/heartbeat 35

3.3 Architecture cluster à implémenter 38

3.4 Architecture cluster Docker Swarm à implémenter 38

4.1 Switch Gigabit Ethernet 40

x

4.2

Câble RJ45

40

4.3

Batterie d'alimentation

40

4.4

Convertisseur 12V - 5V

41

4.5

Notre Raspberry Pi 3 Assemblé

41

4.6

Notre Cluster Physique monté

42

4.7

ifconfig partie eth0 :0 qui indique que le noeud fonction sur l'adresse virtuelle

 
 

172.16.0.50

46

4.8

Interface Connexion Odoo sur le cluster à l'adresse 172.16.0.50 :8070

47

5.1

Diagramme de GANTT

53

5.2

Diagramme de GANTT next

53

3

Fenêtre WinDiskImager

57

4

Fenêtre Zenmap

57

5

Fenêtre Putty.exe

58

6

Fenêtre connexion Hypriot OS

58

7

Fenêtre acceuil Hypriot OS

59

8

Fenêtre docker build

65

9

Fenêtre docker images

69

10

Fenêtre résultat docker stats

75

11

Fenêtre résultat docker ps sur cluster

76

12

Fenêtre statistique Haproxy

78

13

Fenêtre status Haproxy

80

 
 

x

xi

DÉDICACE

Je dédie ce mémoire à ma feue grand-mère
Maman KUISSU Pauline

Paix à son âme, que la terre de nos ancêtres lui soit légère.

xi

xii

xii

ÉPIGRAPHE

« Nous ne pouvons pas prédire où nous conduira la Révolution
Informatique. Tout ce que nous savons avec certitude, c'est que,
quand on y sera enfin, on n'aura pas assez de RAM »

Dave Barry

xiii

xiii

REMERCIEMENTS

Je remercie l'État camerounais pour m'avoir donné l'opportunité de poursuivre mes études
d'ingénieur à IAI-GABON en les finançant. Je voudrais par la même occasion remercier
l'État Gabonais pour l'accueil, l'assistance et les facilités à nous accordés pour permettre le
bon déroulement de nos études sur son territoire.

Je tiens particulièrement à remercier ma feue grand-mère Maman KUISSU Pauline pour
l'amour, la patience, le courage, le soutien et les conseils qu'elle a toujours porté à mon
endroit. Paix à son âme.

Je remercie papa KOUAM Moïse et son épouse Maman Béatrice pour leur soutiens et

conseils.

Je remercie mes parents pour leurs amours, soutiens et conseils.

À Mr NJIOMO Luc Prosper , mon maître de stage, je dis un merci spécial pour ses
précieux conseils, sa disponibilité, son soutien, son hospitalité, sa rigueur durant ses trois
années de formation et pour son encadrement durant ses cinq mois de stage.

À Mr NOUSSI Roger enseignant permanent à l'IAI, mon superviseur, je dis merci pour
ses conseils et orientations durant ce stage.

Aux corps administratif et enseignants de l'Institut Africain d'Informatique(IAI) pour la formation et l'encadrement reçus, je dis merci.

À mes camarades de promotion plus particulièrement Apollinaire, Hervé, Mbonwouo, Etienne Willy, Franck César, Sergeo, Francine, je les remercie pour leurs soutiens, les échanges fructueux et l'ambiance qui a régné durant le stage et ses trois années de formation.

À mon grand ami TANON Hervé, je dis un grand merci pour son soutien et ses conseils.

J'exprime ma gratitude à mes frères, soeurs, amis et toute la famille pour leur soutiens

inconditionnels.

À la grande famille ASSECI (Association des étudiants Camerounais de l'IAI), je leur
témoigne mes sincères remerciements pour leurs soutiens et conseils.

À Mme NJIOMO Marcelle, pour son accueil aussi chaleureux à chaque visite, son
hospitalité, ses conseils, son soutien, je lui témoigne mes sincères remerciements.

Enfin, à tous ceux qui, de près ou de loin, ont participé à l'élaboration de ce mémoire, je vous dis sincèrement merci

xiv

xiv

AVANT-PROPOS

L'institut Africain d'Informatique (IAI) est un établissement Inter-états d'enseigne-ment supérieur créé en 1971. Il regroupe onze (11) Etats africains : le Burkina Faso, le Benin, le Cameroun, la République Centrafricaine, le Congo Brazzaville, la Côte d'Ivoire, le Gabon, le Niger, le Sénégal, le Tchad et le Togo. L'IAI intègre dans son cursus de formation plusieurs cycles parmi lesquels celui des Ingénieurs de conception en Informatique. Arrivés en fin de cycle, les élèves du cycle Ingénieur sont soumis à un stage pratique d'une durée de cinq (5) mois. Ce stage a pour finalité de placer l'étudiant en fin de cycle face aux réalités diverses et variées du monde professionnel sous l'encadrement d'un expert métier. Celui-ci a pour mission d'apprendre à l'étudiant stagiaire les fondamentaux requis pour construire des solutions informatiques adaptées aux problèmes soumis à son attention par l'entreprise (qu'elle soit privée, publique ou mixte) ou par une structure de recherche.

Le présent document représente l'aboutissement de trois (3) années de formation donc cinq (5) mois de stage pratique effectué à MYRABILYS TECHNOLOGIES Sarl qui est une entreprise informatique basée à Libreville au Gabon et tient lieu à cet effet de notre mémoire de fin de formation d'ingénieur en Informatique à l'Institut Africain d'Informatique de Libreville.

xv

xv

RÉSUMÉ

Le thème de notre étude porte sur la conception, l'implémentation et l'étude d'un cluster low cost haute disponibilité de raspberry pi 3. Ce travail permet de proposer une solution serveur à faible coût et à faible consommation d'énergie tout en garantissant les performances d'un serveur normal à MYRABILYS et à ses clients composés de petites et moyennes structures et des grandes entreprises. Parfaitement adapté aux zones reculées, non couvertes par le réseau électrique, cette solution vise aussi à faciliter l'utilisation et le déploiement des applications comme l'ERP Odoo par l'utilisation des Docker et du cluster Docker Swarm.

Après une étude approfondie en vue d'analyser les solutions déjà existantes et de choisir les outils (logiciels et matériels) nécessaires à la réalisation, nous avons procédé à une phase de conception pour créer l'architecture la mieux adaptée à nos besoins. Par la suite, nous l'avons implémentée et procédé à une évaluation de la solution en vue de vérifier si les objectifs en énergie, coût et performance ont été atteints.

Mots clés : Cluster, Haute disponibilité, Raspberry Pi, Docker, Docker Swarm

xvi

xvi

ABSTRACT

The focus of our study is on the design, implementation and study of a low-cost, high-availability cluster of raspberry pi 3. This work provides a low-cost, low-power server solution while Guaranteeing the performance of a normal server to MYRABILYS and its customers composed of small and medium structures and large companies. Perfectly adapted to remote areas, not covered by the electrical network, this solution also aims at facilitating the use and deployment of applications such as Odoo ERP through the use of the Docker and the Docker Swarm cluster.

After a thorough study to analyze the existing solutions and to choose the tools (software and hardware) necessary for the realization, we proceeded with a design phase to create the architecture best suited to our needs. We then implemented it and carried out an evaluation of the solution to verify whether the energy, cost and performance objectives were met.

Keywords : Cluster, High Availability, Raspberry Pi, Docker, Docker Swarm

1 IAI Gabon

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

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








"Je ne pense pas qu'un écrivain puisse avoir de profondes assises s'il n'a pas ressenti avec amertume les injustices de la société ou il vit"   Thomas Lanier dit Tennessie Williams