Vysoká dostupnost a licence Oracle

Jednou z hlavních otázek, které se řeší při licencování Oracle software jsou různé mechanismy řešení vysoké dostupnosti - clustery, standby databáze, remote-mirroring atd. Zkusím vám zde popsat základní pravidla.
U tohoto příspěvku ale více než kdy jindy musím zdůraznit ono upozornění na konci tohoto blogu - jedná se o můj osobní výklad pravidel sestavený na základě mého aktuálního poznání, nejde se tedy o oficiální znění licenčních pravidel Oracle. V případě rozporu platí informace uvedené v oficiálních materiálech, jakými je licenční smlouvě (tzv. OLSA), resp výkladu licenčních pravidel - tzv. Software Investment Guide (Konkrétně téma tohoto příspěvku je v aktuálně platné verzi SIG vysvětleno v kapitole Technology Products od stránky 20.).

A teď zpět k vlastním licenčním pravidlům. Obecně Oracle vyžaduje, aby byl licenčně pokrytý každý server, na kterém je software Oracle nainstalován a/nebo provozován. Od tohoto pravidla z pohledu vysoké dostupnosti existuje jediná vyjímka - a to tzv. Failover cluster s desetidenním omezením.

Vezměme to ale trochu systematičtěji.

Vysoká dostupnost serverů

Nejprve se soustředíme na řešení umožňující překonat pouze výpadek serveru. To znamená, neřešíme ochranu dat. Z tohoto pohledu rozlišujeme:

Failover cluster

failover.JPG
Zákazník provozuje více serverů, které sdílí společné diskové pole. Software Oracle je provozován na primárním serveru a v případě jeho výpadku dojde ke spuštění software Oracle na některém ze záložních serverů. Automatické spuštění zajišťuje cluster software, jako je např. Oracle Clusterware, Sun Cluster, HP Service Guard, IBM HACMP, Oracle FailSafe + MS Windows Cluster atd.
Z technického pohledu je vždy jedna konkrétní databáze spuštěna pouze na jednom serveru v clusteru (resp. abych byl přesnější - každá databáze je v každém okamžiku obsluhována jedinou databázovou instancí na jediném serveru, tj. nejde o Real Application Clusters), z pohledu jedné databáze se tak nesčítá výkon serverů v clusteru. Při výpadku serveru dojde k pádu všech spojení a uživatelé se mohou připojit k databázovému serveru teprve po jeho nastartování na druhém uzlu. Rozumná doba, se kterou lze počítat, je cca 10 minutový výpadek služby.

Z licenčního pohledu Oracle umožňuje aby v takovém clusteru byl vybrán jeden server jako tzv. "spare" a pokud na tomto serveru není spuštěn daný software Oracle častěji, než 10 kalendářních dnů v roce, není třeba jej licencovat (tj. není na něj třeba CPU licence, a v případě licencování přes Named User Plus se tento server nepočítá při výpočtu minimálního počtu NUP). Máte-li tedy cluster tvořen 4 servery, pak jeden z nich nemusíte licencovat, pakliže se nepoužívá více než 10 dnů v roce. (Každý kalendářní den, ve kterém dojde ke spuštění software Oracle na "spare" serveru na libovolně krátký okamžik se počítá jako celý kalendářní den).

Podstatné je připomenout, že všechny servery v clusteru MUSÍ sdílet stejné diskové pole, jakmile pracuje část serverů s jednou kopií dat a druhá část s druhou kopií dat, jak je to obvyklé např. u geoclusterů, nejedná se z licenčního pohledu o "Failover cluster", ale o situaci "Standby/Remote Mirroring" a je třeba licencovat všechny servery.

Ostatní (aktivní) clustery

rac4.JPG
Toto označení v licenčních pravidlech pro vysokou dostupnost nenajdete, ale pro úplnost ho zde uvádím. Jde o případ, kdy software Oracle běží současně na všech serverech clusteru, jak je to typické na databázové úrovni při použití Oracle Real Application Clusters, nebo na úrovni middleware např. u aktivních J2EE clusterů. V tomto případě na rozdíl od Failover clusteru výpadek serveru nepostihne všechny uživatele ale jen jejich poměrnou část, navíc i ti postižení mohou okamžitě pracovat s ostatními servery v clusteru.

Zde je licenční řešení jednoduché: licencují se všechny servery.

Ochrana dat

Jde o řešení zajišťující vícenásobné uložení dat.

Standby / Remote Mirroring

standby.JPG
Jedná se o typické řešení vysoké dostupnosti a ochrany dat (Disaster Recovery) u systémů s vysokými požadavky. V tomto případě existuje záložní kopie dat, která je dostupná ze záložního serveru, na kterém je nainstalován software Oracle. Je přitom jedno, jestli se k přenosu dat z primární lokality do záložní využívají prostředky databáze (tzv. standby database - vytvořená manuálně, nebo pomocí Oracle DataGuard ), nebo prostředky diskového pole či operačního systému (SRDF, Volume Replicator, Oracle ASM apod.).

Licenční podminky zde vyžadují licencování všech serverů (v obou lokalitách) a to stejnou metrikou - tj. buď všechny per CPU, nebo všechny per NUP.

Backup

backup.JPG
V tomto případě máte někde uloženu kopii databáze, ale na záložním serveru není nainstalován (ani není jinak spustitelný) software Oracle.
Zatím co u řešení typu standby/remote mirroring lze předpokládat že k obnovení provozu po pádu primární databáze (a ztrátě dat na primární databáze) dojde v řádu jednotek nebo maximálně desítek minut, v případě "backup" je nutné počítat čas na obnovu dat, resp. instalaci software na záložním serveru a je tudíž rozumné počítat s odstávkou odhadem 1 den (samozřejmě záleží na konkrétním způsobu zálohování i obnovy a velikosti databáze)..

Zde samozřejmě není za co platit na záložní lokalitě, dokud zde není nainstalován či spuštěn daný software Oracle. Při pádu primární lokality by bylo třeba buď přenést data zpět na primární lokalitu, nebo nainstalovat software Oracle na záložní lokalitě. V druhém případě je ale pak třeba dokoupit na něj licence. Převést licence z primární lokality na záložní půjde pouze v případě, že software Oracle odinstalujete z primárního serveru , nebo bude tento fyzicky tak zničený, že je nefunkční a nelze ani provést deinstalaci (tj. např. zcela vyhoří).

Comments:

Post a Comment:
  • HTML Syntax: NOT allowed
About

Česky o všem co se točí kolem Oracle Database.

Autoři:

Patrik Plachý
Technology Sales Consultant

David Krch
Principal Consultant
Oracle Expert Services

Oracle Czech

Search

Archives
« duben 2014
PoÚtStČtSoNe
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today