pondělí 23. března 2009

Oracle BI - více instancí na jednom serveru

Taky se vám už stalo, že jste potřebovali mít více běžících instancí Oracle BI a neměli jste k dispozici dostatek fyzických serverů? Potřebovali jste mít při vývoji aplikace v Oracle BI zároveň k dispozici dvě různé verze repository i prezentačního katalogu? Bylo by užitečné využít výhod odděleného vývojového a testovacího serveru bez nutnosti instalace na dalším prostředí?

Samozřejmě výsledku můžeme dosáhnout virtualizací strojů a rozdělením hardwarových zdrojů, které máme k dispozici, dvěma virtuálním serverům. Při troše šikovnosti si ale vystačíme s jediným serverem, operačním systémem i s jedinou instalací Oracle BI, na které můžeme zprovoznit řešení s dvěmi oddělenými repository, prezentačními katalogy a URL adresami pro uživatelský přístup.


Princip
Paralelní běh „dva v jednom“ dosáhneme díky několika základním vlastnostem Oracle Business Intelligence:
  • BI Server je schopen načíst více repository současně (jednomu BI Presentation Serveru však může v reálném čase zpřístupnit pouze jednu).

  • V rámci ODBC propojení BI Serveru a BI Presentation Serveru je možno definovat, která repository se má využít.

  • Lze spustit více instancí BI Presentation Serveru na jednom stroji s odlišnými parametry.

  • Aplikace může být nasazena na aplikační server vícekrát pod růnými názvy.
Architektura takového řešení je tedy následující: jeden BI Server s více načtenými repository, dvě běžící instance BI Presentation Serveru, kdy každá je připojena na jednu repository. Každé instanci také odpovídá nezávislá aplikace na aplikačním serveru (OC4J, Tomcat, ...).


Postup
Postup budu demonstrovat s využitím aplikačního serveru Tomcat, způsob řešení je ale shodný se standarním řešením OC4J Container, který je součástí defaultní instalace OBI.


Načtení dvou repository na BI Serveru
Prvním krokem je editace konfiguračního souboru NQSConfig.ini, ve kterém do sekce [REPOSITORY] přidáme další záznam.

Ke standardnímu
„Star = jmeno_repository.rpd, DEFAULT;“
přidáme další řádek:
„Star2 = jmeno_druhe_repository.rpd;“.

Důležité jsou dva body:
  • jedna z repository je označena jako defaultní,
  • Star, resp. Star2 jsou vnitřní logická označení repository, se kterými budeme dál pracovat

Příprava druhého ODBC připojení
Zatímco standardní ODBC připojení k BI Serveru s názvem AnalyticsWeb automaticky zpřístupňuje repository, která je označena jako DEFAULT, pro zpřístupnění druhé repository je třeba vytvořit druhé ODBC připojení s odlišným názvem. V nastavení tohoto připojení zaškrtneme volbu "change the default repository to" a jako hodnotu vložíme Star2.


Aplikační server
Nyní je třeba vytvořit druhou aplikaci “analytics“ na aplikačním serveru. V adresáři BI Serveru „...\OracleBI\web\“ je k dispozici soubor analytics.war, který pro použití na mém Tomcatu přejmenujeme (např. analytics2.war) a provedeme deploy nové aplikace (pro deploy na OC4J využijeme http://localhost:9704/em).

Po uspěšném nasazení druhé aplikace je třeba upravit její konfigurační soubor web.xml, který je uložen v adresáři aplikačního serveru WEB-INF.
[tomcat: C:\Program Files\Tomcat 6.0\webapps\analytics2\WEB-INF\,
OC4J: C:\oracle\OracleBI\oc4j_bi\j2ee\home\applications\analytics\analytics2\WEB-INF\ ]

V souboru web.xml změníme číslo portu z 9710 na 9712. Výsledkem tohoto kroku jsou dvě URL adresy, například:
http://localhost:8080/analytics
http://localhost:8080/analytics2


Dvě instance prezentačního serveru
Posledním krokem je spuštění dvou oddělených instancí BI Presentation Serveru tak, aby každá byla spojena s jednou aplikací na aplikačním serveru a aby byla napojena na různé repository BI Serveru.
Pro tento učel si vyrobíme dvě kopie konfiguračního souboru InstanceConfig.xml, který najdeme v adresáři ...\OracleBIData\web\config\. Nové kopie uložíme do stejného adresáře a pojmenujeme instanceconfig_9710.xml a instanceconfig_9712.xml. V souboru instanceconfig_9712.xml pak změníme:
  • DSN – jméno ODBC připojení, směřující na ne-defaultní repository
  • Listener port – nová hodnota 9712
  • CatalogPath –prezentační katalog, který má být použit
Nyní již máme vše připraveno k tomu, abychom mohli spustit dva BI Presentation Servery. Před tímto krokem doporučuji restart BI Serveru i aplikačního serveru. Jednotlivé instance spustíme z příkazové řádky následovně:

sawserver.exe -c C:\OracleBIData\web\config\instanceconfig_9710.xml
sawserver.exe -c C:\OracleBIData\web\config\instanceconfig_9712.xml


Pokud je vše nastaveno správně, jsou na jednom počítači nezávisle na sobě zpřístupněny dvě repository, každá s vlastním prezentačním katalogem a URL adresou.


Pokud vám nevyhovují prezentační servery spuštěné v otevřeném okně, lze je zabalit jako klasické služby. Doporučuji standardní Windows nástroj RESKIT, bližší návod k použití najdete na adrese: http://www.tacktech.com/display.cfm?ttid=197.



Jakub Genža (Sophia Solutions).

Žádné komentáře: