Vous êtes sur la page 1sur 9

Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...

Home
Nagios & C o
GStreamer
Hébergement
Annonceurs
A propos
C ontact

Mail Facebook (159) Twitter (992) RSS (1817)

A uteur:
NicoLargo

Date:
10/02/2011

Catégories:
Open-source
Reseau
Systeme

Tags:
opensvc

Architecture de haute-disponibilité avec


OpenSVC
C e billet a été rédigé par Tony Roger (de la société LibrA-LinuX) en collaboration avec OpenSV C
éditeur du logiciel libre du même nom.

LibrA-LinuX, spécialiste des formations Linux à la carte, propose des

1 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...
stages, afin de permettre à des utilisateurs de tous niveaux (débutants ou confirmés), d'aborder
sereinement l'utilisation et l'administration de systèmes Linux (Debian, Ubuntu, RedHat, Fedora..). Dans
le contexte d'un nouveau cursus de cours lié aux technologies de C lustering sous Linux, nous vous
proposons cet article ayant pour but de présenter une solution de clustering sous Linux, permettant de
mettre en oeuvre simplement une architecture pour apporter la haute-disponibilité à vos applications
critiques.

A l’instar des solutions existantes du monde libre (Linux HA) , cette solution utilise le logiciel
libre OpenSVC (produit Français) qui, couplé à un mécanisme de bascule automatique (HeartBeat,
Keepalived, OpenHA) permet une gestion centralisée de vos services sous Linux, indépendamment des
couches applicatives (Services web apache, J2EE, base de données, stockage et serveurs de fichiers,
messagerie, DNS ,LDAP …). L’atout majeur de cette solution consiste en cette couche d’abstraction
(technologie de clustering autour d’OpenSVC ) qui permet comme tout type de cluster actif/passif, le
pilotage des ressources et services, la reprise de vos services en minimisant le temps d’interruption
grâce au mécanisme de bascule automatique, mais garantit également la cohérence des données entre
les noeuds du cluster, par la synchronisation de snapshots filesystem LVM.

Introduction
OpenSVC (framework python sous licence GPLv2) est un gestionnaire de « services » fonctionnant en
mode cluster. Les services sécurisés sont définis comme des ensembles de ressources (IP, Volume de
Disques, Filesystems, synchronisations, et lanceurs d’applications). C es services sont ainsi pilotés via
opensvc installé sur chacun des noeuds du cluster et compatible avec toutes les distributions Linux,
FreeBSD, les unix Solaris et Opensolaris, HP-UX, AIX.

Dans le cadre d’un déploiement massif du framework OpenSVC , les développeurs du produit ont conçus
un collecteur central, contenant la configuration des services, leurs états et les journaux d’actions de
chacun des noeuds, que l’on peut consulter grâce à une interface web. La partie collecteur est quand à
elle non libre et soumise à une tarification de licence par service /an, mais celle-ci n’est pas nécessaire au
bon fonctionnement du cluster.

Les services typiques qui peuvent bénéficier d’une haute-disponibilité grâce à l’implémentation de cette
solution sont :

Serveurs de mail : IMAP, POP, SMTP


Serveurs de Proxy cache et Reverse-Proxy
Serveurs web : HTTP, HTTPS
Serveurs d’application J2ee : Websphere, WebLogic, JBOSS, Tomcat
Serveurs de fichiers et stockage : FTP, SAMBA, LV…
Serveurs de noms : DNS
Serveurs d’annuaire : LDAP
Base de données : Oracle, MySQL, PosgreSQL
etc …

2 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...

Fonctionnalités et architecture

Les principales fonctionnalités et avantages que fournit ce gestionnaire de cluster Linux :

Scalabilité et mutualisation : permet de gérer des milliers de noeuds et services basés sur une
seule et même technologie de clustering.
Compatibilité : OpenSVC fonctionne aujourd’hui sur les OS Linux, FreeBSD, Solaris, OpenSolaris,
AIX et HP-UX et peut aisément être portés sur d’autres systèmes d’exploitation (python).
Cohérence des données entre des noeuds sans stockage partagés : Permet de piloter
les réplications des données par snapshot de filesystems LVM et synchronisation rsync, ZFS et
réplication DRBD, mais également les systèmes de stockage (EMC SRDF, NetApp snapmirror).
L’idéal pour un cluster OpenSVC étant 2 noeuds de production (PRD) en shared disk, avec un
noeud de reprise (DR) en copie asynchrone.
V irtualisation : OpenSVC peut piloter des services eux-mêmes intégrés sous forme de machines
virtuelles ou containers (kvm, xen , lxc, zones, jail, oracle Ldoms…)
Haute-disponibilité : La haute-disponibilité et la reprise des services est apportée par la
compatibilité avec les mécanismes standards de bascules automatiques et battement de coeur
(OpenHA, heartbeatd, keepalived). Gestion des IP virtuelles de service. Possibilité de définir des
plans de reprise (Disaster recovery plans) dans la configuration des services.
Déploiement : Rapidité de déploiement des outils OpenSVC et des créations des containers de
services
Standard et Open source: Le framework OpenSVC est sous licence GPLv2, le collector est
quant à lui soumis à un système de licence
Tracabilité et audit : toutes les commandes executées par OpenSVC sont inscrites dans des
journaux de logs en local sur chaque noeud, mais également centralisés sur le collector
Supervision: Remontée d’alertes mail, et flux RSS, intégration facilitée pour la remontée
d’alertes vers des systèmes de supervision

3 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...

Gestion centralisée (collecteur)


Le collecteur est une interface web de gestion de vos différents services clusterisés qui, au travers de
différentes vues et tableaux de bords, apporte des fonctionnalités supplémentaires :

monitoring : pour afficher l’état des différentes ressources des services à l’aide d’un tableau de
bord (graphique dynamique de la topologie de vos services)
audit : vous permettant de visualiser les journaux de logs des actions entreprises par OpenSVC et
d’agir en conséquence
plan de reprise : pour concevoir des plans de reprise (disaster recovery plans)
délégation d’administration : possibilité d’assigner des responsables à des services ou groupe
de services, aiguillage des alertes
nodes (asset): pour paramétrer les différentes informations matérielles et de géo-localisation de
vos noeuds physiques, afin de pouvoir déterminer le périmètre des services impactés par un
incident (fuite sur un rack…)

audit et performance système : pour monitorer les ressources systèmes (I/O, Mem, C PU ...)
de chacun des noeuds, les incohérences de paquetages entre les noeuds d'un service
alertes: pour visualiser les différentes remontées d’alertes du systèmes, et les gérer en ligne.

4 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...

Mise en oeuvre
L’installation d’OpenSVC nécessite pyhton2.6 comme pré-requis et les packages pour C entOS, RedHat,
Debian et Ubuntu sont disponibles dans le repository d’OpenSVC .

Liens utiles:

LibrA-Linux : intégrateur de cluster linux OpenSVC


Des cursus de formations Linux
Site Officiel d’OpenSV

A propos de NicoLargo

C réateur et rédacteur principal du "Blog de Nicolargo", expert dans les technologies de l'information et
fervent partisan des logiciels libres. Le suivre sur Twitter @nicolargo.

Partager ce billet

Like 2

Billets similaires

Architecture pour un blog optimisé


Hébergement

5 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...
Encodage de vidéo avec GStreamer

6 commentaires/références
On parle de ce billet (ping back):

1. Tweets that mention Architecture de haute-disponibilité avec OpenSVC -- Topsy.com (#11409)

Commentaires (de mes chers lecteurs):

1. Bob, le 10/02/2011 (#11414)

La documentation d’OpenSVC me semble tout de même un peu faible pour permettre de mettre
en place ce service de clustering de façon fiable, non ?

D’où l’intérêt de suivre une formation, tu vas me dire …

As-tu eu l’occasion de tester OpenSVC Nico ?

Répondre

NicoLargo, le 10/02/2011 (#11415)

Je dois avouer que non mais il y a quelques mois j’avais fait un peu mumuse avec Linux-HA
et je l’avais trouvé puissant (trop) mais pas facile du tout à aborder. Peux être que OpenSVC
gomme ces défauts.

Si un lecteur à pu testé OpenSVC je suis preneur de retours !

Répondre

Christophe Varoqui, le 14/02/2011 (#11454)

Bonjour,

une nouvelle fonctionnalité de création interactive des service a été rajoutée, ce qui devrait
considérablement faciliter la vie aux nouveaux utilisateurs.

svcmgr create -s newsvc -i

Si tu te pretes à l’exercice, je suis preneur de ton relevé des manques de la documentation


en ligne.

Répondre

6 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...

2. Stroumf, le 11/02/2011 (#11426)

Je te conseille de te renseigner sur le logiciel pacemaker qui se base sur LinuxHa.

Liens intéressants:

documentation ubuntu:
http://doc.ubuntu-fr.org/pacemaker

interface en java DRBD Management C onsole permettant de créer, configurer et administrer un


cluster de machines
http://oss.linbit.com/drbd-mc/

Répondre

3. OGER Tony, le 11/02/2011 (#11427)

Même si je ne puis être juge et partie, je voudrais quand même rectifier certaines choses.:
On peut toujours faire mieux coté documentation, (et mes cours en témoignent … mais celle
fournie sur le site suffit entièrement à paramétrer votre premier cluster opensvc simplement.
Dans le paquetage, il y a également un template du fichier de configuration (le seul fichier de
configuration) avec tous les paramètres explicités dans le détail.
En ce qui concerne la partie Haute-Dispo, OpenSVC ne remplace pas heartbeat, openha ou autre
solution de battement de coeur, mais peut s’y reposer pour gérer les bascules automatiques de
conteneur. Là ou opensvc gomme la “complexité” d’installation et de configuration de heartbeat
par exemple, est qu’au final heartbeat n’a qu’une seule ressource définie et configurée qui est le
service “OpenSVC ”. Et c’est OpenSVC qui se charge du démarrage des lanceurs applicatifs , des
synchros, du montage des différentes ressources DRBD, IP, FS… disk .. ou du démarrage d’un
conteneur complet de type système xen, kvm, lxc zone…
Bref, Opensvc ne doit pas être confondu et ne se substitue pas aux solutions de linux-ha classique,
c’est plutôt complémentaire en tant qu’il apporte des fonctionnalités avancées et permet une
nouvelle vision de gestion et du pilotage de vos services sous forme de conteneurs.

Répondre

Laisser un message

Les informations saisies resteront privées.

NomVotre nom/pseudo * MailAdresse mail valide *

URLVotre site web

C ommentaire

7 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...

Valider votre commentaire

Merci de m'envoyer un mail quand de nouveaux commentaires sont postés.

TOP 5 des articles

Un serveur RTSP basé sur GStreamer


Un blog en héritage ?
Mon desktop 201103
Vidéos de Youtube roses sous Ubuntu ?
Supprimer les logs Apache "internal dummy connection"

Formation-Linux

Les archives

▼ 2011
March
February
January
► 2010
► 2009
► 2008
► 2007
► 2006

Licence

Sauf mention spéciale, le contenu de ce site est distribué sous licence C reative C ommons version BY 3.0.

Ici on parle

actualite Blog fedora linux mac nagios Open-source s ys tème ubuntu


wordpress

Informations

Open-source& C o depuis 2006

8 of 9 25.03.2011 16:08
Architecture de haute-disponibilité avec OpenSVC http://blog.nicolargo.com/2011/02/architecture-de...
Email: contact {a} nicolargo {dot} com
Twitter: @nicolargo
Rss: http://blog.nicolargo.com/feed

9 of 9 25.03.2011 16:08

Vous aimerez peut-être aussi