«Clustering» et «Load balancing» avec Zope et ZEO



Documents pareils
«clustering» et «load balancing» avec Zope et ZEO

Mise en œuvre des serveurs d application

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Architectures en couches pour applications web Rappel : Architecture en couches

Sylvain Boureliou. Présentation du serveur d'application Zope 20/02/ Tags : Zope Python. 1. Sommaire général de la présentation

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

Programmation Web. Madalina Croitoru IUT Montpellier

Fiche Technique. Cisco Security Agent

Le Ro le Hyper V Troisie me Partie Haute disponibilite des machines virtuelles

Architectures d implémentation de Click&DECiDE NSI

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

CAHIER DES CHARGES D IMPLANTATION

Tests de montée en charge & Haute disponibilité

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Découvrez notre solution Alternative Citrix / TSE

DEILLON Thomas. Copyright CRI74 GNU Free Documentation License

Cluster High Availability. Holger Hennig, HA-Cluster Specialist

Zimbra Collaboration 8.X

en version SAN ou NAS

Les tableaux de bord de pilotage de nouvelle génération. Copyright PRELYTIS

Cours Bases de données

Load Balancing MASSAOUDI MOHAMED CHAHINEZ HACHAICHI AMENI DHAWEFI ERIJ MAIJED EMNA BOUGHANMI

vbladecenter S! tout-en-un en version SAN ou NAS

Informatique en nuage Cloud Computing. G. Urvoy-Keller

emuseum PUBLIEZ VOS COLLECTIONS SUR INTERNET Pourquoi choisir emuseum? Intégration facile avec TMS Puissante fonction de recherche

ArcGIS 10.1 for Server

Hébergement de sites Web

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Manuel d'exploitation de l'application Vitamin version 1.0

OmniVista 2700 Application complémentaires pour l OmniVista 2500 Network Management

LES SOLUTIONS OPEN SOURCE RED HAT

Faulconnier Bastien SIO2. Cahier des charges. Choix et mise en œuvre d'un datacenter pour Infrastructure Cloud. Pour la société :

Cartographie du SI pour alimenter la CMDB

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.


Dix bonnes raisons de choisir ExpressCluster en environnement virtualisé

Réglages du portail de P&WC

Urbanisme du Système d Information et EAI

Fiche technique: Sécurité des terminaux Symantec Endpoint Protection La nouvelle technologie antivirus de Symantec

Cours 20412D Examen

Configuration Matérielle et Logicielle AGORA V2

Spécifications Techniques Générales. Techno Pole Internet. Lycée Djignabo / Ziguinchor

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. 11, bd du Sud Est Nanterre

SECURIDAY 2012 Pro Edition

Documentation d information technique spécifique Education. PGI Open Line PRO

PHP et le Cloud. All rights reserved. Zend Technologies, Inc.

Exigences système Edition & Imprimeries de labeur

Les nouvelles architectures des SI : Etat de l Art

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

ADF Reverse Proxy. Thierry DOSTES

Cisco Certified Network Associate

Présentation de la solution Open Source «Vulture» Version 2.0

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

Systèmes répartis. Fabrice Rossi Université Paris-IX Dauphine. Systèmes répartis p.1/49

Architectures n-tiers Intergiciels à objets et services web

Guide d installation JMap 5.0

Configuration du serveur ESX

Zope: une plateforme collaborative de développement web open source

Exigences système Edition & Imprimeries de labeur

Sans trop entrer dans les détails, la démarche IO Model consiste à : Pour cela, Microsoft découpe la maîtrise de l infrastructure en quatre niveaux :

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Présentation du logiciel Free-EOS Server

Catalogue des Formations Techniques

Plan de notre intervention 1. Pourquoi le test de charge? 2. Les différents types de tests de charge 1.1. Le test de performance 1.2.


Dynamic Computing Services solution de backup. White Paper Stefan Ruckstuhl

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

Symantec Endpoint Protection

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Single Sign On. Nicolas Dewaele. Single Sign On. Page 1. et Web SSO

Technique et architecture de l offre Suite infrastructure cloud. SFR Business Team - Présentation

Configuration système requise

PostgreSQL. Formations. Catalogue Calendrier... 8

Table des matières. Chapitre 1 Les architectures TSE en entreprise

L état de l ART. Évolution récente des technologies. Denis Szalkowski Formateur Consultant

Rebol, un langage «différent»

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

ACTION PROFESSIONNELLE N 4. Fabien SALAMONE BTS INFORMATIQUE DE GESTION. Option Administrateur de Réseaux. Session Sécurité du réseau

Module BD et sites WEB

Etude d architecture de consolidation et virtualisation

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Architecture et infrastructure Web

CIBLE DE SECURITE CSPN DU PRODUIT PASS. (Product for Advanced SSO)

ASP 3.0 Professionnel

FORMATION CN01a CITRIX NETSCALER

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Présentation technique. Architecture et Intégration. Organisation des équipes mobiles. Planification des interventions. Optimisation des plannings

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

10. Base de données et Web. OlivierCuré

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

L3 informatique TP n o 2 : Les applications réseau

Notre Catalogue des Formations IT / 2015

Transcription:

«Clustering» et «Load balancing» avec Zope et ZEO IN53 Printemps 2003 1

Python : généralités 1989 : Guido Van Rossum, le «Python Benevolent Dictator for Life» Orienté objet, interprété, écrit en C Mêle les éléments de l'ingénierie logicielle issus des langages traditionnels (C++, Java) à la syntaxe simple et facile des langages de script (Perl) Python est libre Python est portable Python est puissant Python est inter-opérable La syntaxe de Python est facile à apprendre De plus en plus utilisé à travers le monde : Red Hat, Microsoft, Infoseek, Yahoo, la NASA 2

Python : exemples Les listes : L = [ 0, 1, ['a', 'b', 'ab'] ] for x in L : print x Les chaines : S = 'bonjour ' for c in S : print c Les fichiers : f = open('donnee', 'r') S = f.readlines() # lit le fichier dans une liste de lignes f.writelines(l) # écrit toutes les lignes de L dans le fichier Les dictionnaires : d = {'dejeuner' : {'jambon' :1, 'oeuf' :2} } d['dejeuner']['jambon'] d.has_key('oeuf') del d[cle] 3

Zope : généralités «Z Object Publishing Environment» Digital Creation - Logiciel commercial au début Fin 1998 : fourni sous licence GPL avec ses sources Gestion de portails Internet A mi-chemin entre le serveur d'application et le système de gestion de contenu Zope est multi plateforme et fonctionne avec la majorité des serveurs Web 4

Zope : généralités Zope est basé sur une base de données objet Zope supporte la majorité des bases de données relationnelles La force de Zope réside dans ses capacités à servir un contenu hautement dynamique adapté à chaque utilisateur Administration en ligne à partir de n'importe quel poste possédant un navigateur Web standard Décharge les webmestres des tâches fastidieuses Système de sécurité puissant et complet Développement collaboratif à l aide du versioning Ouverture totale : HTTP, SGBD, LDAP, XML 5

Zope : Interface de gestion 6

Zope : Architecture 7

Zope : Architecture Organisé en couche Serveur web intégré MultiThreading Séparation complète des tâches: logique applicative, stockage et présentation des données 8

Zeo : Problématique Sites professionnels nécessitant une grande capacité de montée en charge : haute disponibilité de 99.99 % (aéronautique, hôpitaux ), grand nombre de clients simultanés, forts pics de charge (couverture d un événement important, publication presse ) Solution : ZEO et la mise en cluster permettent de répartir le risque de panne matérielle et la charge en multipliant les serveurs d application Zope ZEO : «Zope Enterprise Objects» Zeo est un produit Zope distribué par la Zope Corporation sous licence GPL 9

Zeo : Philosophie Permet de faire tourner un site Internet sur plusieurs machines différentes : on parle de «clustering» et de «load balancing» Architecture client/serveur ZEO Server : serveur de stockage, contient la ZODB (base de données objet) n-1 ZEO Client : serveurs Zope standards ayant à charge de servir les pages Web Cache interne à chaque Client, réduisant les conversations au strict nécessaire Architecture utilisant les protocoles de communication Internet standardisés 10

Zeo : Fonctionnalités Haute disponibilité Montée en charge (en divisant la charge par le nombre de serveurs) Distribution de charge (plus forte réactivité du site) Mise à disposition de ressources temporaires (il «suffit» d ajouter des machines au cluster pour voir la disponibilité du site augmenter) Multiplication de serveurs (la probabilité que toutes les machines tombent en panne en même temps diminue fortement) Intégrité transactionnelle (gestion des mises à jour simultanées) 11

Exemple d architecture à trois niveaux 12

Distribution de la charge avec ZEO La seule machine que l utilisateur «voit» est la machine chargée de la distribution de la charge Cette machine est chargée de désigner dans le cluster le client ZEO qui va servir la page demandée par le client Le client ZEO se charge du calcul de la page demandée, en se référant aux données présentes dans son propre cache, ou si nécessaire aux données disponibles sur le serveur ZEO. 13

Distribution de la charge : sites miroirs Ne nécessite aucun logiciel ou matériel supplémentaire Le serveur ZEO présente à l utilisateur une liste de sites miroirs disponibles et l utilisateur choisit lequel il désire utiliser Ou alors le serveur ZEO redirige sur un client choisi aléatoirement <dtml-call expr="response.redirect(_.whrandom.choice(mirror_servers))"> 14

Distribution de la charge : Le «Round-Robin DNS» Le serveur DNS retourne alternativement les adresses de chaque client ZEO (distribution équi-répartie ou séquentielle) Problèmes liés aux informations DNS mises en cache par les autres serveurs de noms du web (cas où un client tombe : l utilisateur garde en mémoire l adresse IP pour plusieurs heures et par conséquent toutes les requêtes suivantes échoueront) Utile mais pas optimisé 15

Distribution de la charge : Le «Layer 4 Switching» Les requêtes passent de manière transparente à travers un switch vers une ferme de serveurs Le switch choisit le client ZEO d après les paramètres qu on lui a donnés Différents produits Zope permettent de réaliser cela Solutions matérielles les plus courantes : les modèles Alteon et LocalDirector de Cisco Systems 16

Le «Layer 4 Switching» : Solutions logicielles Linux Virtual Server (LVS) qui est une extension du système d exploitation Linux et qui permet de transformer un ordinateur sous Linux en «Layer 4 Switch» Apache via son module mod_backend Balance (http://balance.sourceforge.net/) : réputé pour être facilement installé et configuré. Distribué sous licence GPL Pound (http://www.apsis.ch/pound/) : logiciel jouant le rôle de reverse proxy, load balancer et http front-end. Spécialement créé pour être utilisé avec Zope et ZEO, Simple à configurer. Distribué sous licence GPL. 17

Exemple : le portail de l Université de Savoie 1 machine Apache : serveur à base de bi xeon 2Ghz avec 4GO de RAM 1 serveur ZEO : serveur à base de bi xeon 2Ghz avec 4GO de RAM 3 clients ZEO : bi PIII à 900Mhz avec 1GO de RAM et 600GO de DD Zope ZEO : distribué sous licence GPL Pour comparaison avec une solution commerciale : WebSphere Application Server V4.0 Advanced Edition (création, gestion et exploitation d application Internet) : 13073,95 + achats de briques logicielles Charge sur le système : 12000 sessions par jours pour 6500 membres, 600Mo de data.fs (base de données interne à Zope : ZODB) une fois packé et 60Go de données sous forme d'extfile (fichiers externes à la ZODB). 18

Conclusion ZEO est une solution web permettant le déploiement d un cluster et la mise en place d une solution de répartition de charge à l aide des logiciels libres Zope et ZEO Aujourd hui de plus en plus populaire Zope Corporation inclura ZEO dans la prochaine grande évolution de Zope : Zope 3 19

Liens utiles ZEO : http://www.zope.org/products/zeo Présentation de Zope : http://pref.msgsoftware.com:6969/sylvain/presentations/zope/zope_index.html Installing, configuring, and administering ZEO : http://www.zope.org/members/mmceahern/installing_zeo Zope : http://www.zope.org/ Pound : http://www.apsis.ch/pound/ Balance : http://balance.sourceforge.net/ Mod_ssl : http://www.modssl.org/ Openssl : http://www.openssl.org/ Apache : http://www.apache.org/ Python : http://www.python.org 20