Pokud nemáte k dispozici Aplikační server, pak můžete službu pro ODI 11g Agenta vytvořit s pomocí Open Source Wrapperu - Yet Another Java Service Wrapper, viz. návod níže.
Budeme používat následující software:
- Oracle Data Integrator 11g C:\Oracle\Oracle_ODI_11g\
- Java Development Kit jrockit-jdk1.6.0_17 (funguje i pro jiné distribuce Javy, ale tato je přímo součástí ODI) C:\Oracle\Oracle_ODI_11g\jrockitjdk1.6.0_17\
- Yet Another Java Service Wrapper – yajsw-10.6 (starší verze jsou nekompatibilní s jrockit-jdk) C:\ODI_Agent_wrapper\yajswbeta10.6\
Dále předpokládáme fungující ODI Standalone Agent.
- Stáhneme a rozbalíme Yet Another Java Service Wrapper (yajsw) z adresy http://sourceforge.net/projects/yajsw/, ve verzi 10.6 nebo novější. Yajsw rozbalíme např. do složky C:\ODI_Agent_wrapper\yajswbeta10.6\ (není nutné instalovat)
- Normálním způsobem spustíme ODI Standalone Agent, kterého budeme chtít dále spouštět jako službu Windows. V našem případě to je dávkový soubor C:\Oracle\Oracle_ODI_11g\oracledi\agent\bin\agent_DEVAGENTEXCEL.bat
- Ve Správci úloh Windows nalezneme PID procesu spuštěného Agenta.
- Zobrazení PID: Zobrazit > Vybrat sloupce > PID (Identifikator procesu)
- Najdeme PID procesu s názvem „java.exe“ - Vygenerujeme konfigurační soubor wrapperu. Spustíme dávku: C:\ODI_Agent_wrapper\yajswbeta10.6\bat\genConfig.bat PID (kde PID je identifikační číslo procesu získané v kroku 3). Tato dávka vygeneruje automaticky konfigurační soubor C:\ODI_Agent_wrapper\yajswbeta10.6\conf\wrapper.conf který budeme muset ještě dále upravit.
- Vypneme standardním způsobem Standalone Agent. V našem případě to je spuštění dávky s parametrem: C:\Oracle\Oracle_ODI_11g\oracledi\agent\bin\agentstop.bat -NAME=DEVAGENTEXCEL
- Wrapperu nastavíme cestu k Java Development Kit, který chceme ke spouštění použít: V dávkovém souboru C:\ODI_Agent_wrapper\yajswbeta10.6\bat\setenv.bat nastavíme řádek s proměnnou java_exe takto: set java_exe="C:\Oracle\Oracle_ODI_11g\jrockitjdk1.6.0_17\bin\java.exe"
- Editujeme konfigurační soubor služby, který jsme vygenerovali v kroku 4: V souboru C:\ODI_Agent_wrapper\yajswbeta10.6\conf\wrapper.conf nastavíme následující proměnné:
a/ wrapper.java.command=C:\\Oracle\\Oracle_ODI_11g\\jrockitjdk1.6.0_17\\bin\\java.exe (pozor, musí tam být dvojitá lomítka, jako escape sekvence)
b/ wrapper.ntservice.name=OracleODIAgent nebo jiný název služby
c/ wrapper.ntservice.displayname=Oracle ODI Agent nebo jiný název, který se bude zobrazovat v manažeru služeb windows, může být s mezerami, nepoužívat uvozovky
d/ wrapper.ntservice.description=Agent DEVAGENTEXCEL nebo jiný popis, který se bude zobrazovat v manažeru služeb windows
e/ V poslední části souboru je sekce „further properties generated by genConfig.“ Tady je nutné vyhledat všechna přednastavená hesla (název proměnné obsahuje PASS) a ve všech těchto heslech, pokud se tam vyskytuje znak čárky, přepsat ho escape sekvencí čárky, tedy \, (zpětné lomítko a čárka). - Můžeme vyzkoušet naše nastavení pomocí dávkového souboru C:\ODI_Agent_wrapper\yajswbeta10.6\bat\genConfig.bat
a/Spustíme dávkový soubor (bez parametrů)
b/ Počkáme než se zapne Agent a otestujeme ho, např. v ODI
c/ Vypneme Agent standardním způsobem (viz. krok 5), čímž se vypne i dávkový soubor - Službu nainstalujeme pomocí C:\ODI_Agent_wrapper\yajswbeta10.6\bat\installService.bat (opět bez parametrů)
- Konfigurační soubor C:\ODI_Agent_wrapper\yajswbeta10.6\conf\wrapper.conf musíme zachovat pro další potřebu (modifikaci nebo odinstalování služby). Je nutné ho zálohovat před tím, než vygenerujeme nový pro jinou službu, kterou budeme chtít pomocí wrapperu v budoucnu nastavovat.
- Služba je nainstalovaná a můžeme restartovat – při spuštění systému se rozběhne Agent
a/ Wrapper ukládá informace o svém běhu a o běhu Agenta do wrapper.log.0, který je umístěn v adresáři, ve kterém je dávkový soubor agenta. V našem případě C:\Oracle\Oracle_ODI_11g\oracledi\agent\bin
b/ Při jakékoliv změně je nutné službu odinstalovat, tzn. spustit dávku C:\ODI_Agent_wrapper\yajswbeta10.6\bat\uninstallService.bat Potom můžeme opravit konfigurační soubor a službu znovu nainstalovat.
c/ Službu je možné najít v manažeru Služby pod jménem zadaným v 7.3. Manažer spustíme pomocí Start > Spustit > services.msc. Odtud můžeme službu spouštět, zastavovat nebo do určité míry i editovat.
Tomáš Ibehej / Vojtěch Šíp (Datacons)