| 
  
  
    
      
      
      
         Spolehlivost každého výrobku se samozřejmě odráží v jeho ceně.
        Například spolehlivé a robustní automobily jsou vždy dražší než
        masověji vyráběné vozy. Totéž platí prakticky ve všech dalších
        oblastech - počítače, jejichž výrobci se snaží dosáhnout maximálního
        výkonu za co nejmenší cenu, zdaleka nedosahují spolehlivosti řídicích
        systémů letadel či kosmických lodí. Stačí zastavení ventilátoru
        aktivního chlazení procesoru v moderním stolním počítači a systém
        přestane fungovat během několika desítek sekund či minut. Výpadek
        stolního počítače a s ním spojená možná ztráta dat, i když velmi
        nepříjemná, ale zpravidla neohrozí běh celé firmy. V případě firemních
        serverů udržujících podnikové databáze či řídících klíčové technologie
        je ale situace jiná. Proto se například v serverech používá jiný
        systém chlazení procesorů, u něhož výpadek jediného ventilátoru
        neohrozí celý počítač a navíc jsou v takových systémech zabudovány
        prostředky pro diagnostiku a hlášení těchto poruch. Samozřejmě cena
        serveru je oproti stolnímu počítači patřičně vyšší. 
        Technické vybavení ale pouze přispívá ke spolehlivosti počítačových
        systémů. Velmi podstatnou roli hraje spolehlivost software. Programové
        vybavení je zpravidla tou vrstvou, která činí systém unikátní, která
        plní specifické požadavky uživatele a která také jednotlivé systémy
        navzájem odlišuje. Software je tedy zákonitě mnohem variabilnější a
        flexibilnější než hardware. Bankovní transakce, digitální triky v
        novém filmu, simulace fyzikálního děje či počítačová hra - nelze
        vyjmenovat byť jen nepatrný zlomek úloh vykonávaných na v podstatě
        shodných počítačích. Zatímco finanční analytik, filmový výtvarník,
        vědec či počítačový hráč mohou používat shodný počítač se stejným
        procesorem, určitě budou používat jiné programové vybavení. Přitom
        komplexnost programového vybavení je často nesmírná a snad jen
        komplexnost samotného procesoru je srovnatelná s rozsáhlými
        programovými systémy. Velká variabilita a rychlejší inovační cyklus
        software ale neumožňuje firmám vyvíjejícím programové vybavení
        investovat stejné množství prostředků do testování svých produktů,
        jako to dělají firmy vyvíjející procesory. Řada chyb obsažených
        například v různých verzích procesorů Intel Pentium jsou dokladem, že
        ani největší firmy s obrovskými zdroji nejsou zárukou naprosté
        spolehlivosti. A tak díky chybám programového vybavení havarují
        civilní letadla se spoustou cestujících, umírají pacienti na následky
        překročení dávek při ozařování, kosmické sondy se rozbíjejí o povrch
        Marsu a explodují nosné rakety s komunikačními satelity. 
        Ačkoliv naprosto spolehlivý hardware ani software nelze udělat,
        přesto vysoké požadavky na spolehlivost existují a nemohou je
        uspokojit ani nejpropracovanější návrhy daných systémů. Jediné řešení
        je použití zálohování - redundantních prvků, které jsou schopny práce
        (byt se sníženým výkonem) i po vysazení nějaké komponenty. Redundance
        může být na úrovni chladicích ventilátorů, napájecích zdrojů, disků a
        tak porucha těchto komponent není kritická. Je ale nutné zdůraznit, že
        redundance poruchu nevylučuje, jen výrazně snižuje její
        pravděpodobnost. 
        Návrh redundantních chladicích prvků nebo napájecích zdrojů je
        poměrně prostý, neboť tyto komponenty neudržují žádnou stavovou
        informaci systému. V případě diskových pamětí je to již horší, protože
        na discích jsou uchovávána data a jejich ztráta při poruchy disku je
        nepřípustná. Nejjednodušší metodou je zrcadlení - data jsou uchovávána
        současně na dvou discích. Za svou jednoduchost platí zrcadlení
        snížením dostupné kapacity disků na polovinu. Existují i
        propracovanější mechanismy rozprostření dat na více disků tak, že
        poměr skutečné ku využitelné kapacitě disků je výrazně lepší než 2:1
        (např. RAID5). Ovšem navrhnout systém, který pomocí redundance dokáže
        přestát poruchu procesoru nebo modulu paměti, je ale nepoměrně
        složitější a ekonomicky velmi náročné. Proto bývá mnohem častěji
        používána redundance na úrovni celých počítačů - dva nebo více
        počítačů pracují na shodném úkolu s tím, že v případě výpadku jednoho
        systému jeho práci převezme druhý (aktivní záloha) nebo druhý počítač
        jen pasivně čeká a monitoruje stav aktivního počítače a začíná
        pracovat v okamžiku, kdy první počítač selže (pasivní záloha). Skupina
        takto spolupracujících počítačů je nazývána „cluster" (česky
        chumel nebo nakupení). 
        Pojmu cluster počítačů se ovšem používá mnohem obecněji.
        Vědecko-výzkumné instituce často spojují velké množství počítačů do
        jediného systému a využívají velkého výpočetního výkonu paralelně
        pracujících strojů k řešení rozsáhlých simulací apod. V těchto
        případech se ale nejedná o zálohování, jednotlivé počítače si sice
        vyměňují data ale zpravidla nesdílejí žádné prostředky a navenek
        vystupují jako jednotlivé systémy. Běh distribuované aplikace bývá
        často zajišťován aplikací samotnou, nikoliv operačním systémem. 
        Jako cluster může například vystupovat taktéž skupina serverů
        služby WWW, před něž je předřazen tzv. vyvažovač zátěže (load
        balancer). Z hlediska klientů se celý systém jeví jako jediný server s
        jedinou IP adresou, ale ve skutečnosti práci na pozadí provádí řada
        serverů, které dostávají jednotlivé požadavky podle momentální zátěže. 
        Skutečný cluster ale dokáže mnohem více. Z hlediska klientů
        vystupuje jako jediný počítač s unikátní IP adresou a s řadou služeb,
        které poskytuje. Tyto služby zahrnují nejen WWW, ale taktéž přístup k
        databázím, výměnu zpráv apod. Systém trvale monitoruje stav všech
        prostředků, které byly administrátorem určeny jako sdílené, a v
        okamžiku jejich výpadku je spouští na záložním počítači. Důvod jejich
        výpadku není důležitý - služba může vysadit vlivem poruchy hardware
        nebo vlastní programovou chybou nebo může být dokonce ukončena chybným
        zásahem obsluhy. Situace může být i natolik fatální jako odstavení
        celého systém z důvodu poruchy procesoru, čipové sady či paměti. Ve
        všech případech její činnost přebírá záložní systém. Tento způsob
        práce clusteru ale již vyžaduje podporu na úrovni operačního systému. 
        Nasazení systému Control Web 2000 na cluster 
        Ačkoliv se historicky jedná o poměrně starý koncept, cena za takové
        řešení v prostředí sálových počítačů IBM či vlastnických systémů UNIX
        bývá velmi vysoká. Schopnost budovat zálohované clustery je ale
        začleněna i do rodiny Advanced Server systémů Microsoft Windows NT a
        Windows 2000, čímž se celá technologie stává podstatně přístupnější. 
        Potřeba dosažení velmi vysoké spolehlivosti a odolnosti před
        náhodnými chybami jednotlivých komponent systému se ale netýká jen
        rozsáhlých databází či serverů WWW. Existují i náročná nasazení
        technologických řídicích a vizualizačních systémů, kdy je nepřetržitý
        běh podmínkou. Proto byl systém Windows 2000 Advanced Server
        konfigurovaný do clusteru vybrán jako platforma pro aplikaci
        komplexního řízení energetiky závodu Škoda-Auto v Mladé Boleslavi
        běžící pod systémem Control Web 2000. 
        Aplikace dosud pracovala na dvojici počítačů s průmyslovým systémem
        Control Panel v3. Svým rozsahem ojedinělá aplikace komunikující s
        desítkami průmyslových automatů prostřednictvím více jak deseti tisíc
        kanálů a obsluhující tisíce archivních souborů ale potřebuje další
        rozšiřování, efektivnější navázání na podnikový informační systém,
        lepší distribuci na více počítačů a zabudování WWW služby. Proto se
        realizační firma DMS rozhodla pro nasazení systému Control Web 2000 v
        prostředí clusteru Windows 2000. 
        Struktura systému 
        Ačkoliv Windows 2000 Advanced Server dokáže prakticky jakoukoliv
        službu nebo aplikaci konfigurovat jako sdílený prostředek, toto řešení
        je často nevyhovující, protože pokud aplikace nedokáže se správcem
        clusteru komunikovat, její spouštění a zastavování se děje
        standardními prostředky API Win32. To s sebou přináší nejen značné
        prodlevy spojené se zaváděním a ukončováním aplikace, ale taktéž
        nerespektuje vnitřní stav aplikace. Přepnutí běhu aplikace z jednoho
        serveru na druhý je prováděno jako její zastavení a opětovné spuštění.
        Z těchto důvodů byl systém Control Web 2000 rozšířen o prostředky
        komunikace se správcem clusteru Windows 2000. Toto rozšíření nejen
        dovoluje správně uchovávat vnitřní stavy aplikace, ale také
        mnohonásobně zrychluje reakční dobu systému v případě výpadku jednoho
        serveru. Integrací s Windows 2000 Advanced Server potvrdil Control Web
        2000 svou pozici mocného nástroje pro tvorbu rozsáhlých podnikových
        aplikací vizualizace, sběru dat a řízení průmyslových procesů. 
      
    
  
 |