datum wcms-cluster der eth zürich © eth zürich |
TRANSCRIPT
Datum
WCMS-Cluster der ETH Zürich
© ETH Zürich |
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 2
Historische Entwicklung: Bottom-Up
2001/2002: ein Departement bricht komm. CMS-Projekt nach 125 kFr. Ausgaben ab
2002: Gemeinschaftsprojekt WCMS (Departemente + ID) beginnt Evaluation Wyona CMS (Java, Cocoon) Konventor (Zope), später Silva (Zope)
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 3
Historische Entwicklung: Top-Down
SL-Beschluss: Jubiläum 1880-2005 mit WebCD
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 4
Historische Entwicklung: Betrieb
Start März 2003, 1 Server
www.ethz.ch: Sept. 2003, 3 Server
ZEO-Cluster ab März 2004 9x 2 CPU Xeon 2.6 GHz, 4 GB RAM bis Ende '06
(für gewisse Aufgaben noch im Einsatz) 6x 4 CPU Xeon 5130 2 GHz, 16 GB RAM heute
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 5
Historische Entwicklung: Zahlen
09/01/02 01/14/04 05/28/05 10/10/06 02/22/08 07/06/090
50100150200250300350400450
Sit
es o
nlin
e se
it S
ervi
ceb
egin
n
2007: 10 TByte verschickt, 460 Mio. Requests, 10 Mio. verschiedene Dateien
ZODB: 8 GByte, Assets (Binärdaten inkl. Bilder): 200 GByte
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 6
Aktuelle Abdeckung
zentrale Site www.ethz.ch
11 (+1) von 16 Dept.-Sites
Verwaltung: Personalabt., Rektorat, Finanzabt., Informatikdienste uvm.
Institute, Kooperationen, Projekte
95% im Standard-Layout
18. März 2008 Bengt Giger/Informatikdienste/[email protected]
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 8
Problem #1: Cache Trashing
Dedizierte Zope-Installation für 'Protos' und ETH
Dedizierte Prozesse auf Produktion für Editieren Suchmaschinen-Spider
Logisches Subclustering reduziert Cache Trashing genug Sites für
statistische Verteilung10 20 30 40 50 60 70 80 90 100
Page Hit Distribution
broad
sharp
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 9
Komponenten des Subclusterings
Apache mod_rewrite jeder virt. Host mit eigener Regel für Weiterleitung auf
Loadbalancer-Ports
Distributions-Script verteilt Apache-Konfiguration auf 2 Apache-Server setzt Loadbalancer-Ports
Loadbalancer pro Port 2 Zope-Prozesse + Failover
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 10
Matrix der logischen Subcluster
Endausbau Produktion ethzKnoten-Port 3080 3081 3082 3083 5080Knoten cmpfeb 1 1 4 7 10 13
2 1 4 7 10 133 2 5 8 11 134 2 5 8 11 135 3 6 9 12 136 3 6 9 12 13
Definitionen für den Loadbalancer
Port auf Loadbalancer: 5000 + N
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 11
Subcluster-Selektion durch Apache
RewriteCond %{ENV:search_engine} 1RewriteRule ^/(.*) http://192.168.159.252:VIRTUAL_SERVER_SEARCHENGINE_PORT/VirtualHostBase /http/www.cms.ethz.ch:80/silva_ethz/ETH/id_sites/wcms/wcms/VirtualHostRoot/$1 [P,L]
# site specific rewriting rules# ........
RewriteRule ^/(.*manage(/.*|$)) https://%{HTTP_HOST}/$1 [R]RewriteRule ^/(.*edit(/.*|$)) https://%{HTTP_HOST}/$1 [R]RewriteRule ^/(.*intranet(/.*|$)) https://%{HTTP_HOST}/$1 [R]RewriteRule ^/(.*) http://192.168.159.252:VIRTUAL_SERVER_PORT/VirtualHostBase /http/www.cms.ethz.ch:80/silva_ethz/ETH/id_sites/wcms/wcms/VirtualHostRoot/$1 [P,L]
Selektion pro Site-spezifischer Konfiguration
search_engine: global anhand Browser-Kennung gesetzte Variable
VIRTUAL_SERVER_PORT (_SEARCHENGINE_PORT, _EDIT_PORT): bei
Transfer der Konfiguration auf Apache gesetzte Variablen, Portnummern der
Clustermatrix
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 12
Strukturierung in ZopeZope Root
Silva Root
ETH Root FH RootLDAP, zentrale Code-Sources (Plugins),WebCD-Layout (CSS, Icons)
Gruppe 1 Gruppe 2 Gruppe N
Site 1 Site 2 Site NHeader-Bilder, spez. CSSund Icons, komplette Layouts
Ziele der Redirects
Renderer, Silva Konfigu-rations-Services
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 13
SilvaExtETHLayout
Standard-Layout im ETH WebCD
Funktionen für Navigation, Sprachumschaltung, PDF-Umwandlung, Caching von externen Datenquellen, Formularbaukasten ...
Vielfältig konfigurierbar im SMI: HTML-Titel, Breadcrumb-Prefix, Menueinträge, Verbergen, 1-3 Spalten, Suchfunktion, Farbschema ...
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 14
Standard-ElementeSite Root
/people SilvaExtPersonalInfo (Tel., Büro, Adresse aus LDAP)
Deutsch oder Englisch (Seiten in DE, EN, FR, IT möglich)
/contact standardisiertes Kontaktformular
/mail_this_page Seiten als PDF verschicken
/sitemap Auflistung aller Seiten
Weitere Module: RSS-Viewer/Feed, Zugriff auf Vorlesungsverzeichnis, iCalender, Mensa-Menu, ETH-Veranstaltungskalender
'Code-Elemente': Formular-Bearbeitung, Einbinden von Flash, Java, Filmen vom Streaming-Server, IFRAME, Newsletter-Service, ETH-Telefonbuch
18. März 2008 Bengt Giger/Informatikdienste/[email protected] 15
Problemzonen
Assets: Inkonsistenzen möglich
NAS ist netztopologisch weit weg
Session-DB
Koordination mit ID-KOM (Loadbalancer)
Entwickler denken nicht grosstechnisch
Steuerung von HTTP-Caches mangelhaft