Dependable Clustered Computing Jari Kellokoski
Pankkipalvelut, verkosta ostaminen, tieteellinen laskenta (mallinnus), telepalvelut, valvontajärjestelmät, palvelinohjelmistot, jne. Yhteistä: toimintavarmuus ja suorituskyky oltavia hyviä Tiedepiirit Tuhansia solmuja Laitteistovauriot Sovellusvirheet Kaupallinen puoli Kriittiset sovellukset Tiedon varmistus Palveluiden saatavuus Skaalautuvuus Suorituskyky Ylläpito
Luotettavuus käsitteitä Virheiden erilainen kesto MTBF ja MTTR Virheiden estäminen Virheiden sieto Ohjelmalliset virheet –Heisenbugs –Bohrbugs Arkkitehtuuri Jaettu –Jaettuja resursseja –Resurssi aina yhden solmun käytössä kerralla Jakamaton Aktiivinen / varalla Aktiivinen / aktiivinen
Virheiden havainnointi Virheenkorjaus sekä laitteisto että ohjelma tasolla –Kuinka suuri osa virheistä saadaan korjattua? –Kuinka nopeasti virheet havaitaan? Oma diagnostiikka (self-testing) Watchdog –Laitteistotasolla –Ohjelmatasolla Heartbeats Idle notifications Error notifications Consistency checking ABFT
Toipuminen virheistä Tarkistuspisteet ja niihin palaaminen Toimintojen siirtäminen (failover ja failback) –Uudelleen järjestelyt Vuorovaikutukset (transactions) –Jakamattomat –Yhdenmukaisuus –Eheys –Säilyminen
Käytännön kokemukset Microsoft Cluster Server –Resource, Resource Group, Cluster – sekunnin alhaalla olo aika / vuosi NCR LifeKeeper –active/active –active/standby –N-way Oracle Fail Safe and Parallel Server –maksimissaan 2 solmua (Oracle Fail Safe) –Parallel Server tarjoaa myös skaalautuvuutta Liitännät Klustereiden kannalta kolmenlaisia liitäntöjä: verkko, tiedontallennus ja valvonta Tiedontallennuksessa –SAN ja Fiber Channel –SCSI –VIA Ulkopuolinen verkkoliikenne –Ethernet Valvonnassa –Yhdistelmä edellisistä tai oma menetelmä