Vous êtes sur la page 1sur 45

M203

Implémenter un environnement cloud


avec une Solution libre

M.MANGAD

M.MANGAD 1
III . Services Openstack
Services de base
• Service de dashboard (interface web de paramétrage et de gestion) : Horizon.
• Service de compute (cœur d'OpenStack) : Nova.
• Service de gestion des réseaux : Neutron (ex-Quantum).
• Service de stockage bloc : Cinder.
• Service de stockage objet : Swift.

Services partagés
• Service d'identité : Keystone.
• Service d'image : Glance.
• Service d'orchestration : Heat.
• Service de métrologie : Telemetry (ex Ceilometer).
• Service de base de données : Trove.
• Service de big data : Sahara. M.MANGAD 2
III . Services Openstack
• K

Service Openstack bare metal: Ironic


Rappel:
• OpenStack est une plateforme libre et open source de cloud-computing, déployée en
tant qu’Infrastructure as a Service (IaaS).
• OpenStack est utilisé pour créer des machines virtuelles (Virtual Machine, VM) à la
demande, tout en offrant des backend pour le stockage d’images système (Glance), de
fichiers sous forme d’objet (Swif), ou de volumes (Cinder), ainsi que pour la création de
réseaux virtuels (Neutron).
Ironic
• le service Ironic permet de provisionner (fournir un système sur lequel la machine va
démarrer) des machines physiques (baremetal).
• Cela permettrait de gérer de façon centralisée les machines physiques sur un cluster
bare metal.
M.MANGAD 3
III . Services Openstack
1. K

Service Openstack bare metal: Ironic

M.MANGAD 4
III . Services Openstack
• K

Service Openstack : Freezer


Sinistre
• Un sinistre est un évènement imprévu qui peut présenter un risque significatif
pour votre organisation en perturbant vos activités
– qu’il soit naturel, comme une inondation
– d’origine humaine, comme la rupture accidentelle d’une canalisation d’eau.
Reprise après sinistre
• La reprise après sinistre est le processus de retour à la normal des opérations à la
suite d’un sinistre, grâce à la restauration de l’accès aux données, aux
équipements informatiques, aux logiciels, aux équipements réseau, à
l’alimentation électrique et à la connectivité
M.MANGAD 5
III . Services Openstack
• K

Service Openstack : Freezer


• Freezer est un service OpenStack de sauvegarde distribuée et de reprise après
sinistre

• Il est conçu pour être multi-OS (Linux, Windows, *BSD), axé sur l'efficacité et la
flexibilité pour les sauvegardes basées sur des blocs, les sauvegardes
incrémentielles basées sur des fichiers, la synchronisation des tâches (c'est-à-dire
la synchronisation des sauvegardes sur plusieurs nœuds ) et de nombreuses
autres fonctionnalités.

M.MANGAD 6
III . Services Openstack
• K

Service de Gestion d’Infrastructure de Conteneur (magnum)


• Le service de Gestion d’Infrastructure de Conteneur (magnum) est un service API
OpenStack permettant à des conteneurs comme Docker d’être disponibles comme
ressources dans OpenStack.
conteneur
• Un conteneur est une unité logicielle standard qui regroupe le code et toutes ses
dépendances afin que l'application s'exécute rapidement et de manière fiable d'un
environnement informatique à un autre.
• Une image de conteneur Docker est un package logiciel léger, autonome et
exécutable qui comprend tout ce qui est nécessaire pour exécuter une
application (code, environnement d'exécution, outils système, bibliothèques système
et paramètres) sur n'importe quelle plate-forme ou n'importe quel cloud sans aucun
problème.

M.MANGAD 7
III . Services Openstack
Format image:
Lors de l'ajout d'une image à Glance, il faut spécifier le format son format
• VHD: (Virtual Hard Disk), un format de disque courant utilisé par les moniteurs de machines
virtuelles de VMware, Xen, Microsoft, VirtualBox
• vhdx : une version améliorée du vhdformat. Il prend en charge des tailles de disque plus
importantes.
• Vmdk : (Virtual Machine Disk) est pris en charge par de nombreux moniteurs de machines
virtuelles courants, par exemple l'hyperviseur VMware ESXi.
• VDI: (Virtual Disk Image) pour les fichiers image est pris en charge par le moniteur de machine
virtuelle VirtualBox.
• ISO: Le format ISO est une image disque formatée avec le système de fichiers en lecture seule
couramment utilisé pour les CD et les DVD.
• Qcow2: Le format QCOW2 (QEMU copy-on-write version 2) est couramment utilisé avec
l'hyperviseur KVM. Il utilise une représentation de sorte que la taille de l'image est inférieure à
celle d'un fichier au format brut du même disque virtuel
M.MANGAD 8
III . Services Openstack
KVM:
• KVM (Kernel-based Virtual Machine) est un hyperviseur libre pour Linux

• KVM est intégré dans le noyau Linux

• Avec KVM, vous pouvez transformer Linux en un hyperviseur qui permet à une
machine hôte d'exécuter plusieurs environnements virtuels isolés, appelés invités
ou machines virtuelles.

• KVM et l’hyperviseur par défaut dans Openstack

M.MANGAD 9
III . Services Openstack
Stockage objet: Swift
• C'est un système de stockage de données redondant et évolutif.

• Les fichiers sont écrits sur de multiples disques durs répartis sur plusieurs
serveurs dans un Datacenter.

• Il s'assure de la réplication et de l'intégrité des données au sein du cluster


(groupe de serveurs).

• Si un serveur ou un disque dur tombe en panne, Swift réplique son contenu


depuis des nœuds actifs du cluster dans des emplacements nouveaux.

M.MANGAD 10
1.
III . Services Openstack
K

Stockage bloc: Cinder


• Il fournit des périphériques persistants de type bloc aux instances OpenStack.

• Il gère les opérations de création, d'attachement et de détachement de ces


périphériques sur les serveurs.

• Le stockage en mode bloc est utilisé pour des scénarios performants comme celui
du stockage de base de données, mais aussi pour fournir au serveur un accès bas
niveau au périphérique de stockage.

• Cinder gère aussi la création d'instantanés (snapshots), très utile pour sauvegarder
des données contenues dans les périphériques de type bloc. Les instantanés
peuvent être restaurés ou utilisés pour créer de nouveaux volumes.

M.MANGAD 11
III . Services Openstack
1. K

Disque éphémères
• un disque éphémère est un disque non persistant pour le stockage des données .

• Il disparait une fois l’instance est supprimée.

• Comparé à un disque de système d’exploitation standard, un disque éphémère


offre une latence plus faible pour les opérations de lecture/écriture

M.MANGAD 12
III . Services Openstack
1. K

Disque racine:
• un disque racine contient le chargeur de démarrage et les fichiers du système
d'exploitation principal

• Chaque instance a besoin d'au moins un disque racine et peut avoir un disque
éphémère facultatif

• Le contenu du disque racine provient soit d'une image stockée dans le référentiel
Glance, soit d'un volume de stockage de blocs persistant (via Cinder).

M.MANGAD 13
III . Services Openstack
1. K

Disque racine:
Il existe plusieurs choix pour la création du disque racine:
• boot from image: cette option permet à un utilisateur de spécifier une image du
référentiel Glance à copier dans un volume Cinder persistant, qui est ensuite attaché
en tant que disque racine de l'instance.
• Boot from volume : cette option permet à un utilisateur de spécifier un volume
Cinder (par nom ou UUID) qui doit être directement attaché à l'instance en tant que
disque racine.
• boot from snapshot: (créer un nouveau volume), cette option permet à un
utilisateur de spécifier un instantané de volume Cinder (par nom ou UUID) qui doit
être utilisé comme disque racine ; l'instantané est copié dans un nouveau volume
Cinder persistant qui est ensuite attaché en tant que disque racine de l'instance

M.MANGAD 14
III . Services Openstack
1. K

Serveur bare metal:


• Un serveur bare metal est un ordinateur physique dédié à un seul client.
• En général, les serveurs bare metal sont disponibles en location auprès
d’un fournisseur de Datacenter.
• La principale différence avec les serveurs virtuels réside dans le fait que le
boîtier métallique physique qui contient le processeur, la mémoire et les
autres composants est loué en tant qu’unité (ou environnement à locataire
unique) et n’est pas partagé avec d’autres clients.
• Ainsi, le client peut choisir le système d’exploitation de son serveur bare
metal, en plus de le personnaliser en fonction de ses besoins spécifiques et
de ses charges de travail.
M.MANGAD 15
III . Services Openstack
1. K

Serveur bare metal:


Types:
• Serveur bare metal traditionnel : c’est un serveur dédié classique, où le système
d’exploitation (OS) administré par l’utilisateur repose directement sur le matériel. Toutes
les applications utilisateur s’exécutent directement sur le système d’exploitation.

• Serveur bare metal avec hyperviseur : le serveur Bare metal existe également en
combinaison avec un hyperviseur. Il repose directement sur le matériel (hyperviseur natif)
et fournit aux utilisateurs une interface d’administration pour la gestion des machines
virtuelles. Les applications utilisateur ne s’exécutent pas directement sur l’hyperviseur, mais
séparément dans les systèmes d’exploitation invités virtualisés. Les hyperviseurs classiques
sont KVM , Microsoft Hyper-V, vSphere de VMware ou Citrix XenServer.

M.MANGAD 16
III . Services Openstack
1. K

Serveur bare metal:


Types:

M.MANGAD 17
III . Services Openstack
1. K

Serveur bare metal:


Avantages / inconvénients:

M.MANGAD 18
IV . Architecture Openstack
1. Architecture logique Openstack:
• D'un point de vue logique, OpenStack peut être représenté avec trois
services :
– un bloc de compute,
– un bloc de Networking
– et un bloc de Storage.

• Ces services utilisent un bus de communication pour communiquer


entre eux.
• Un dashboard permet de se connecter aux services avec un portail
présentant une IHM (interface homme-machine).
M.MANGAD 19
IV . Architecture Openstack
1. Architecture logique Openstack:

M.MANGAD 20
IV . Architecture Openstack
1. S

2. Architecture conceptuelle:
• D'un point de vue conceptuel, OpenStack est composé de services
reliés les uns aux autres autour de deux services qui communiquent
avec tous les autres modules : Horizon et Keystone.

M.MANGAD 21
V . Superviser les ressources
1. Présentation du service de télémétrie
Service de collecte de données de télémétrie
• Les services de collecte de données de télémétrie offrent les fonctions suivantes :

– Interrogent efficacement les données de mesure liées aux services OpenStack.

– Collectent les données d'événement et de mesure en surveillant les


notifications envoyées par les services.

– Publient les données collectées

M.MANGAD 22
V . Superviser les ressources
1. Présentation du service de télémétrie
Service de collecte de données de télémétrie
Le service de télémétrie comprend les composants suivants :

– Un collecteur: collecter les informations pour les envoyer aux agents de calcul

– Un agent de calcul : S'exécute sur chaque nœud de calcul et interroge les statistiques
d'utilisation des ressources.

– Un agent central : Fonctionne sur un serveur de gestion central pour collecter les
statistiques d'utilisation des ressources

– Un agent de notification : utilise les messages collectés pour créer des données
d'événement et de mesure.

– Un serveur API: fournir un accès aux données.

M.MANGAD 23
V . Superviser les ressources
1. Présentation du service de télémétrie
Service d’alarme de télémétrie
• Avant d’installer et configurer le service d’Alarme, vous devez créer une base de
données pour stocker les alarmes.
• Pour créer la base de données, utiliser les commandes suivantes:
– mysql -u root -p
– CREATE DATABASE aodh #Créer la base de données aodh:
– GRANT ALL PRIVILEGES ON aodh.* TO 'aodh'@'localhost' IDENTIFIED BY
'AODH_DBPASS';
• Pour créer un utilisateur et lui ajouter le rôle admin:
– openstack user create --domain default --password-prompt aodh
– openstack role add --user aodh admin

M.MANGAD 24
V . Superviser les ressources
1. Présentation du service de télémétrie
Service d’alarme de télémétrie
• Les services d'alarme de télémétrie déclenchent des alarmes lorsque les données de mesure
ou d'événement collectées enfreignent les règles définies.

• Le service d'alarme de télémétrie comprend les composants suivants :

– Un serveur API ( aodh-api ) fournit un accès aux informations d'alarme stockées dans le
magasin de données.

– Un évaluateur d'alarme ( aodh-evaluator ) détermine quand les alarmes se déclenchent


en raison de la tendance statistique associée franchissant un seuil sur une fenêtre de
temps glissante.

– Un notificateur d'alarme ( aodh-notifier ) permet de définir des alarmes en fonction de


l'évaluation du seuil pour une collection d'échantillons.
M.MANGAD 25
V . Superviser les ressources
1. Présentation du service de télémétrie
Service d’alarme de télémétrie
Créer le service alarme « aodh »:
• openstack service create --name aodh --description "Telemetry" alarming

M.MANGAD 26
1.
V . Superviser les ressources
J

2. Mise à l’échelle automatique:


• La mise à l’échelle "Auto-Scaling" fait référence à la capacité d'un Cloud à détecter
automatiquement les conditions liées à la charge de travail dans le Cloud et à réagir
de manière appropriée sans l'intervention d'un Opérateur.
• La mise à l'échelle comprend à la fois des actions d'augmentation et de réduction
pour essayer d'allouer les ressources de manière appropriée et efficace et d'éviter
les problèmes.
• La mise à l’échelle vise à éviter les problèmes en allouant plus de ressources
lorsqu'un besoin est détecté ou prévu, ou à conserver les ressources en les
désactivant lorsque les charges sont faibles.
• OpenStack fournit plusieurs méthodes pour mettre à l'échelle automatiquement le
cluster : utilisation de Heat AutoScalingGroup, Senlin Cluster, etc.

M.MANGAD 27
V . Superviser les ressources
1. J

2. Mise à l’échelle automatique:

• Plusieurs couches et composants de l’architecture permettent


d’aboutir aux objectifs de mise à l’échelle.
– Service de monitoring

– Service d’alarme

– Service d’optimisation

– Service de mise en cluster

– Service d’analyse

M.MANGAD 28
V . Superviser les ressources
1. J

2. Mise à l’échelle automatique:

M.MANGAD 29
V . Superviser les ressources
1. 1

2. A

3. Composants de la mise à l’échelle automatique:


• OpenStack offre un riche ensemble de services pour créer, gérer,
orchestrer et provisionner un Cloud.
Unités de mise à l'échelle
• Il existe un certain nombre de composants qui peuvent être contrôlés
avec la mise à l'échelle automatique.
– Hôte de calcul
– VM exécutée sur un hôte de calcul
– Conteneur exécuté sur un hôte de calcul
– Stockage en réseau
– Fonctions de réseau virtuel

M.MANGAD 30
V . Superviser les ressources
1.

2.
1

3. Composants de la mise à l’échelle automatique:


• OpenStack offre un riche ensemble de services pour créer, gérer, orchestrer et
provisionner un Cloud.

Service de surveillance
• La surveillance fonctionne soit en utilisant un agent installé sur l'unité de mise à
l'échelle, soit en utilisant une méthode d'interrogation pour récupérer les
métriques.
• Exemples:
– Monasca
– Ceilometer
– Prometheus

M.MANGAD 31
1.

2.
V . Superviser les ressources
1

3. Composants de la mise à l’échelle automatique:


Service alarmant
– Monasca dispose d'un service de seuillage d'alarme intégré et d'un service de
notification
– Aodh du projet Télémétrie
Services de décision
– Congress
– Heat
– Mistral
– Vitrage
– Watcher
Moteurs d'orchestration
– Heat
– Senlin est un moteur de clustering pour OpenStack et peut orchestrer la mise à
l'échelle automatique
– Tacker
M.MANGAD 32
1.

2.
V . Superviser les ressources
1

3. Composants de la mise à l’échelle automatique:


Environnement avec mise à l’échelle automatique:
• Les environnements avec mise à l'échelle automatique ajoutent ou suppriment des
ressources selon les variations de la demande.

• Les groupes de mise à l'échelle automatique comportent des règles qui indiquent le
moment auquel les ressources doivent être ajoutées ou supprimées.

• Par exemple, une règle peut indiquer que le groupe doit ajouter une instance lorsque
l'utilisation moyenne de l'unité centrale dépasse 80%.

M.MANGAD 33
1.

2.
3.
V . Superviser les ressources
1

A
A

4. Facturation:
Ceilometer
• Ceilometer, composant de facturation, permet de calculer la consommation de chaque
client.

• Des mesures :

• Le service de télémétrie collecte les compteurs dans un déploiement OpenStack.

• La télémétrie utilise les types de compteurs suivants :

M.MANGAD 34
VI . Mettre en œuvre une solution de backup
1. Service trove:
• Trove est une base de données en tant que service pour OpenStack.

• Les utilisateurs du Cloud et les administrateurs de base de données peuvent provisionner


et gérer plusieurs instances de base de données selon les besoins.

• Le service permet l'isolation des ressources à haute performance tout en automatisant les
tâches administratives complexes, notamment le déploiement, la configuration, les
correctifs, les sauvegardes, les restaurations et la surveillance.

• Trove permet d’installer et de gérer des instances de base de données relationnelle et


NoSQL au sein d’OpenStack.

• Les services de base de données supportés sont les suivants : MySQL, Redis, PostgreSQL,
Mongodb, Cassandra, Couchbase et Percona …

M.MANGAD 35
VI . Mettre en œuvre une solution de backup
1. A

2. Créer et accéder à une instance de base de données:


Avant de créer l'instance

• Choisir la saveur. Une version définit la RAM et la taille du volume racine pour
l'instance.

• La commande pour afficher la liste de saveurs qui sont prises en charge pour créer
une instance de Trove:

OpenStack database flavor list

M.MANGAD 36
VI . Mettre en œuvre une solution de backup
1. A

2. Créer et accéder à une instance de base de données:


Créer une instance de base de données
Cet exemple crée une instance de base de données avec les paramètres suivants :
• Nom de l'instance :mysql_instance_1.
• Version de la base de données :1fb05bb0-4605-48b6-81e6-3d4622e4a330.
• Une taille de volume de 5(5 Go).
• Une base de données nommée test.
• La base de données est basée sur mysql et la version du magasin de données est la 5.7.29
• L'utilisateur « user » avec le mot de passe « password ».
• Un réseau Neutron 8799cf10-01ef-40e2-b04e-06da7cfa5668 pour allouer l'adresse IP de la base
de données (pour l'accès interne).
• Exposer l'instance au public via --is-public(pour un accès externe).
• Seules les adresses IP provenant de 202.37.199.1/24ou 10.1.0.1/24 sont autorisées à accéder à
la base de données.
M.MANGAD 37
VI . Mettre en œuvre une solution de backup
1. A

2. Créer et accéder à une instance de base de données:


Créer une instance de base de données

M.MANGAD 38
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


S’assurer d'avoir créé une instance

Créer une stratégie de sauvegarde pour l'instance

M.MANGAD 39
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


Sauvegarder l'instance de base de données

Dans cet exemple, la sauvegarde s'appelle backup1.

M.MANGAD 40
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


Vérifier l’état de la sauvegarde:

Utiliser la commande OpenStack database backup list ou la commande


OpenStack database backup show pour vérifier l'état de la sauvegarde :

M.MANGAD 41
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


Restaurer une instance de base de données

– Si l'instance de base de données « guest1 » est endommagée et que l’on désir


la restaurer :
• Utiliser la commande de création d'instance de base de données OpenStack pour créer une
nouvelle instance de base de données « guest2 ».

• Spécifier que la nouvelle instance « guest2 » a le même type ( 10) et la même taille de
volume racine (2) que l'instance guest1 d'origine.

• Utiliser l’argument « --backup » pour indiquer que cette nouvelle instance est basée sur la
sauvegarde identifiée par BACKUP_ID.

– Dans cet exemple, remplacer BACKUP_ID par 8af30763-61fd-4aab-8fe8-


57d528911138.

M.MANGAD 42
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


Restaurer une instance de base de données

M.MANGAD 43
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


Vérifier la sauvegarde

Vérifier que la nouvelle instance a les mêmes caractéristiques que l‘instance


d'origine.

M.MANGAD 44
VI . Mettre en œuvre une solution de backup
1.

2.
A

3. Sauvegarder et restaurer une base de données


Vérifier la sauvegarde

Utiliser la commande show de l'instance de base de données OpenStack pour


afficher des informations sur la nouvelle instance.

M.MANGAD 45

Vous aimerez peut-être aussi