Blackboard aan de TU Delft
Ir. W.F. van Valkenburg www.e-learn.nl February 21, 2008 1
Shared Service Centre ICT – Ontwikkeling & Innovatie
Agenda
• Load-balancing • Custom authentication met A-Select • Anti-hijacking patch
February 21, 2008
2
Load Balancing, waarom?
• Schaalbaarheid/Performance Gefaseerd capaciteit bijschakelen • Beschikbaarheid Geen “single point of failure”
February 21, 2008
3
Situatie TU Delft – 1999
February 21, 2008
4
Situatie TU Delft – 2001
February 21, 2008
5
Situatie TU Delft 2003
February 21, 2008
6
February 21, 2008
7
Blackboard.tudelft.nl Load-balancers
Databaseserver
Application servers
Standby databaseserver
SAN A
February 21, 2008
NFS-server
Standby NFS-server
SAN B
8
February 21, 2008
9
DC-RID
DC-IO heartbeat
NFS-server
February 21, 2008
Databaseserver
NFS-server
Databaseserver
10
Netwerk/Firewall • Netwerk •1 GB •Tussen DC’s 10 GB • Firewall • 2 X Juniper • Is open voor applicatie en realserver
February 21, 2008
11
Load-balancers • Belangrijkste eisen aan de load-balancing: • Persistence • Direct access • Redundancy • Outgoing access • Phase-out/Phase-in mogelijkheid
February 21, 2008
12
Load balancers • • • • • • •
2 x Sun V20z 2 x 2GHz AMD processoren 4 GB geheugen Redhat Linux LVS voor load-balancing (opensource) Ultramonkey voor failover (opensource) LVS is een level-4 oplossing
• LVS controleert beschikbaarheid app.servers op basis van url in het CS, daarmee check je apache, tomcat, en database. February 21, 2008
13
Applicatieservers
• • • •
7 x SUN V210 2 x 1 GHz SPARC processoren 4 GB geheugen Solaris 10 loadbalancer 1
February 21, 2008
loadbalancer 2 (standby)
14
Applicatieservers
• Alle app-servers zijn identiek • Elke app-server bevat een Blackboard-installatie in /usr/local/blackboard. • Onder /usr/local/blackboard zijn 5 directories afkomstig van de NFS server. • Worden dit jaar vervangen door nieuwe HW met Linux. • Onderzoek naar tomcat-clustering. February 21, 2008
15
Databaseservers
Beide database servers identiek • Sun Fire X4600 • 8 DualCore AMD Opteron • 32 GB geheugen • RHEL5 loadbalancer 1 loadbalancer 2 (standby)
February 21, 2008
16
Databaseservers • Oracle 10.2 • Active/passive configuratie • Passieve host wordt continu gesynchroniseerd met DataGuard • Passieve host mode : maximum performance • Beide machines gebruiken het SAN als storage • Nog te doen: • virtueel ip, zodat switchen zonder aanpassing op applicatie kan. February 21, 2008
17
NFS servers • • • • • • •
Active/passive configuratie 2 x Sun V210 2 x 1 GHz SPARC processoren 2 x 4 GB geheugen Solaris 10 Cisco ISCSI-drivers Failover mbv. scripts (op alle app-servers)
• Op onze nieuwe SAN zijn geen aparte NFS-servers nodig. loadbalancer 1 loadbalancer 2 (standby)
February 21, 2008
18
Storage • 2 x EqualLogic iSCSI Raid 5 • Content: • 1 x 4 TeraByte, 1 x 1 TeraByte • Database: • 300 GB • Wordt vervangen door EMC storage. loadbalancer 1 loadbalancer 2 (standby)
February 21, 2008
19
A-Select
February 21, 2008 20
A-Select
• • • • •
Authenticatiedienst voor Web-applicaties Meerdere authenticatiemogelijkheden beschikbaar Federatiemogelijkheden Open-source Eén A-select server; meerdere “Authentication Service Providers”
February 21, 2008
21
A-Select schets
February 21, 2008
22
A-Select schets
Dit is mijn “ticket” Authenticatiedialoog Ga naar A-select server Hier is uw ticket
Ticket check Nieuwe authenticatie begint
February 21, 2008
23
A-Select schets
Dit is mijn “ticket”
Ga naar A-select server Hier is uw ticket
Ticket check Nieuwe authenticatie begint
February 21, 2008
24
Applicatieconfiguratie
• Per applicatie draait er een “A-Select agent” • Elke applicatie moet aangepast worden om deze agent te gebruiken, deze aanpassing heet een “Integratie component” (IC) • Voor een aantal gangbare applicaties is een IC beschikbaar, ook voor Blackboard!
February 21, 2008
25
Wijziging inlogprocedure in Blackboard
February 21, 2008
26
Technische wijzigingen Blackboard
• Installatie A-Select agent (standaard) • Installatie en configuratie Blackboard IC
February 21, 2008
27
Voordelen A-Select
• Geen SSL op Blackboard nodig • Single-sign-on met andere web-applicaties • Meerdere (hardere) authenticatiemethoden mogelijk voor Blackboard • Open source • Federatiemogelijkheden • SAML + Shibboleth ondersteuning
February 21, 2008
28
Nadelen A-Select
• Complexiteit/tests bij upgrades • Extra (missie kritiek) element in de authenticatieketen • Extra issues bij gebruik van mixed-protocol applicaties (zoals bv. Blackboard + WebDAV). • Extra handelingen nodig bij inloggen (usability) • Documentatiekwaliteit • SURFnet • “Open source” February 21, 2008
29
Wanneer A-Select overwegen
• Centraal identity management (met LDAP?) op orde • Goede provisioning processen • Provisioning-proces (aanmaken gebruikers) is feitelijk authorisatie! A-Select is geen vervanging van deze 2 zaken!! Voor federatief gebruik geldt dit nog meer. February 21, 2008
30
Anti-hijacking patch
February 21, 2008
31
Aanleiding
• Een Blackboard sessie bevat niet het IP-adres. • Het CS biedt de mogelijkheid om zelf javascript te uploaden. • Er is een exploit bekend.
February 21, 2008
32
Oplossing • i.s.m. Blackboard Consulting een patch ontwikkeld. • Deze neemt in de sessie wel het ip-adres mee. • Dit betekent dat: • Als je ingelogd bent in Bb en je krijgt een ander ip, moet je opnieuw inloggen. • Werkt alleen als meeste gebruikers op unieke ip zitten (dus weinig gebruik van NAT).
February 21, 2008
33
February 21, 2008
34