Siennax is een ‘application service provider’ van het eerste uur die de internetzeepbel heeft weten te overleven. De asp werkt met grote hoeveelheden servers. De vraag is hoe die gekoppeld zijn. Het klinkt zo eenvoudig: zet er wat ‘serverblades’ bij en je capaciteit is verhoogd. Michiel Steltman, technisch directeur van Siennax, vertelt wat hierbij speelt.
|
Alle ‘problemen’
Siennax zoekt nu met succes zijn heil bij grotere organisaties die internet- en webtechnologie gebruiken maar zelf de hiervoor benodigde infrastructuur niet willen ontwikkelen en beheren. Het Siennax-portfolio biedt hiertoe een aantal online functies, zoals ‘backstage-billing’ voor het verwerken van betaalde content op grote schaal, applicatieplatformen voor op Linux, Java en .Net gebaseerde toepassingen, en diverse andere diensten, waaronder open broncode-mail op grote schaal en Microsoft Exchange.
Een voorbeeld van zo’n internetapplicatie is de ABN Amro Academy, een leeromgeving waarop alle it-medewerkers van de bank zijn aangesloten. Siennax zet zijn online diensten via verschillende dochterondernemingen en partners in de markt. Het neemt hierbij alle ‘problemen’ op zich – van licenties aanschaffen en testen tot beheer – en biedt de complete toepassing als betrouwbare dienst aan. Alles draait op het Intel-platform, voor circa 60 procent onder Linux en de rest onder Windows.
Siennax beschikt nu over zo’n vierhonderd servers. Steltman: “Een soort pc’s, maar wel bijzondere. Ze zijn kwalitatief erg goed, en de leveranciers certificeren de combinatie van hardware en besturingssysteem en ondersteunen het geheel. Een asp-dienst moet voldoende betrouwbaar zijn.” Ze moeten een dubbele voeding en een netwerkaansluiting hebben, over raid (redundant array of independent/inexpensive disks) beschikken, en voorzieningen hebben voor automatische installatie, levering en centraal beheer. Ze worden in rekken gemonteerd: maximaal tien tot vijftien servers per rek, om aan de normen en limieten voor stroomopname en warmteafgifte te voldoen.
Vertrouwen
Door toepassing van volledige virtualisatie van netwerkelementen valt de configuratie voor een bepaalde toepassing van tevoren te maken en is de server later zonder wijzigingen in plaatsing of netwerkaansluitingen voor andere doeleinden inzetbaar. Verregaande standaardisatie is belangrijk om het aantal servers per beheerder hoog te kunnen houden. Bij Siennax ligt dat aantal rond de zestig.
Een belangrijk element is het vertrouwen dat klanten moeten hebben wanneer zij hun toepassingen en gegevens uit handen geven aan een externe dienstverlener. Een asp werkt daarom met garanties op de dienstverlening, die voor elke toepassing worden vastgelegd in een gestandaardiseerde sla (service level agreement). Siennax laat zijn veiligheidsmaatregelen en procedures regelmatig controleren door Deloitte, op basis van de Amerikaanse ’trust services’-norm, die niet alleen kijkt naar de fysieke beveiliging van het computercentrum en de netwerken, maar die juist de procedures eromheen controleert en kijkt of het personeel zich werkelijk daaraan houdt.
Klanten vragen om hoge beschikbaarheden en een flexibele inzet van capaciteit. Daartoe moeten servers zo kunnen samenwerken dat foutbestendigheid ontstaat en dat de werkbelasting over servers te verdelen is.
Koppelen
In een grijs verleden was het niet eenvoudig om processoren te koppelen. Er werden verschillende manieren bedacht: via een gemeenschappelijk geheugen, gemeenschappelijke opslag of een lokaal netwerk. DEC pionierde met clusters en opslag gekoppeld via een gemeenschappelijk lan, maar in die tijd werkte ethernet slechts op 10 Mbit/s. Intel en Microsoft kwamen met twee of vier processoren op een kaart, en Nasa ontwikkelde Beowulf-clusters voor Linux in 1994.
Men praat nu heel gemakkelijk over het op grote schaal clusteren van processoren. Wat is er inmiddels veranderd? Steltman: “Twee dingen: ethernet is veel sneller geworden – nu 1 Gbit/s, en dat gaat naar 10 Gbit/s – en voor standaard Java- en .Net-omgevingen zijn de besturingssystemen en applicatieservers nu geschikt voor grote aantallen servers. Toepassingen zijn eenvoudig te ontwikkelen voor dit type architecturen, Als je je maar aan de normen en ‘best practices’ houdt, kun je de bestaande software voor één server vrijwel ongewijzigd voor de grote clusters gebruiken.” Dit laatste is een voorwaarde voor grootschalige toepassingen.
Voor Java-toepassingen moet je je daarbij aan de J2EE-normen houden. Wat betreft .Net is het ook mogelijk om andere talen dan C# te gebruiken, als je je maar aan de ‘best practices’ en de Microsoft Reference Architecture houdt. Steltman: “Beide omgevingen zijn inmiddels sterk genoeg om met minimale aanpassingen voor ons doel gebruikt te worden. Linux lag enkele jaren voor op .Net, maar inmiddels kun je met beide omgevingen diensten met hoge serviceniveaus garanderen.”
Centrale opslag
Het gaat niet alleen om het parallel schakelen van processoren; minstens even belangrijk is het goed werken met centrale opslag. Steltman: “De servers zijn via ‘fibre channel’ of virtuele lan’s (vlan) en snelle Cisco-switches verbonden met het opslagsysteem. Raid-systemen kun je tegenwoordig bijna om de hoek kopen. Siennax past opslagsystemen van onder andere EMC toe. Die bieden de mogelijkheid om opslag volledig te virtualiseren.” Daarmee zijn goed schaalbare en betrouwbare gecompliceerde technologie-‘stacks’ voor Oracle, Microsoft SQL Server en Microsoft Exchange te realiseren.
Een ontwikkeling van vorig jaar die dit ook op een goede en goedkope manier mogelijk maakt is iscsi, waarin de ‘i’ staat voor internet protocol (ip). Dit heeft met scsi (small computer system interface) alleen te maken dat hetzelfde communicatieprotocol gebruikt wordt, en niets met een fysieke scsi-aansluiting als zodanig; een iscsi-aansluiting loopt via een ip-netwerk. Steltman: “Ip maakt het san (storage-area network) goedkoper en flexibeler dan de tot nu toe gebruikte ‘fibre channel’-netwerken. Dat is dé toekomstige oplossing die naar mijn overtuiging snel de standaard zal worden.” Siennax heeft voor zijn database-toepassingen eerder geïnvesteerd in san-technologie met ‘fibre channel’, maar verwacht dat de uitbreidingen op het gebied van centrale opslag in de komende jaren zullen plaatsvinden met iscsi.
Hiermee wordt het verhaal over parallelle processoren niet afgesloten; het ideaal is dat de parallelle processoren en de opslagschijven samen, integraal en optimaal in gebruik zijn voor de verdeling van de belasting (load balancing) en ‘failover’. Idealiter zou je willen dat, als een willekeurig onderdeel overbelast dreigt te raken, een ander onderdeel een deel van het werk overneemt, en dat, als een onderdeel kapot gaat, een ander onderdeel zijn werk automatisch overneemt.
Verdeling last
Hoe staat het met de verdeling van de belasting? Steltman: “In de opslagsystemen en in het netwerk is dat nu redelijk goed geregeld. Door groepen machines via subnetten met vlan te configureren, valt lastverdeling van netwerkcomponenten, webservers en mailservers goed te realiseren. Met de processoren lukt dat minder goed, omdat commerciële software dit soort automatische en dynamische herconfiguratie vaak niet ondersteunt. De databasesoftware van noch DB2, noch SQL Server ondersteunt dit, alleen Oracle doet dat vanaf versie 9. Waarschijnlijk is dit een kwestie van tijd.”
Over ‘failover’ zegt Steltman: “In een raid-opslagsysteem beschik je over voldoende redundantie. De netwerkswitches zijn ook dubbel uitgevoerd en kunnen elkaars taken overnemen. Bij processoren ligt dat moeilijker, en dat veroorzaakt de noodzaak van extra onderdelen. Als je anderhalve server voor een applicatie nodig hebt, moet je er drie plaatsen om één kapotte server te kunnen opvangen.” Het wachten is dus op de mogelijkheid om processoren uit een pool te kunnen gebruiken.
De vierhonderd servers van Siennax staan opgesteld in drie co-locaties, bij KPN, Enertel en Telecity, waar snelle internetverbindingen beschikbaar zijn en fysieke omgevingen bestaan die nodig zijn voor de hoge beschikbaarheidseisen. Kunnen deze locaties het werk real-time van elkaar overnemen? Steltman: “In principe kan dat, maar financieel is het niet altijd aantrekkelijk. Daarbij gaat het niet om de goedkope servers of serverbladen, maar vooral om de opslag die je dan moet dupliceren en repliceren.” Een rooster (grid) van deze locaties is daarom eigenlijk alleen aantrekkelijk voor rekenintensieve toepassingen of voor toepassingen waarbij de kosten van die extra hoge serviceniveaus te rechtvaardigen zijn.
Er is dus al veel bereikt, ook al is het ideaal nog niet gerealiseerd. Gezien de grote interesse voor goedkope serverbladen en de trend naar centralisatie zullen nieuwe oplossingen ongetwijfeld ontwikkeld worden. Het parallel schakelen van processoren – destijds onderwerp van veel discussie – is geen punt meer. Het gaat om het parallelliseren van het gehele systeem en het vereenvoudigen van het beheer daarvan, en dat is geen geringe opgave.< BR>