Kapcsolódó információk:
Paraméterezési útmutatók

Kapcsolódó témakör: Adatbázisok mentése - visszatöltése

Az adatbázisok automatikus mentését egy JAVA-ban fejlesztett alkalmazás biztosítja. A JAVA platform lehetővé teszi, hogy a szolgáltatás Windows és Linux környezetben is használható legyen. Az üzemeltetéshez JRE 1.7 futtatási környezet szükséges, mely Windows környezethez ingyenesen letölthető az Oracle weboldaláról.

Telepítés

A működéshez szükséges a QsBackupFdbService.zip telepítőcsomagon kívül:

  • Java Runtime Environment - JRE 1.7
  • Firebird SQL kliens
  • 7zip konzol utility - Windows esetén a <SupHome>\UTIL könyvtárban található, Linux esetén csomagból javasolt telepíteni.
 Figyelem

A 64 bites Windows esetén előfordulhat, hogy a programot alkalmazásként futtatva tökéletesen működik, service-ként azonban nem települ. Ez esetben csak 32 bites JRE van telepítve a 64 bites Windows-on. Telepíteni kell a JRE 64 bites változatát.

A szolgáltatást arra a gépre célszerű telepíteni, ahol a SUP® rendszer elindulásához, és működéséhez szükséges SUP.INI file fizikailag található. Más szóval arra a gépre, ahol a <SupHome> könyvtár van. Ezen lehet Windows vagy Linux operációs rendszer. A telepítő készlet ZIP formátumban érhető el, melyet ki kell csomagolni a futtatási könyvtárba. A ZIP file lehetőség szerint NE legyen elhelyezve ugyanabban a könyvtárban, mint a futtatandó és a konfigurációs állomány.
A működtetéséhez szükséges file-okat a <SupHome>\LIB könyvtárba célszerű elhelyezni. Az alkalmazást a QsBackupFdbService.jar file tartalmazza. A működési paramétereket a QsBackupFdbService.ini file-ban kell beállítani. Emellett néhány további .BAT file is található a telepítő készletben, mely elsősorban a Windows környezetben történő működtetéshez ad segítséget.

A működéshez szükséges a Firebird SQL kliens, ill. ennek a GBAK utility modulja. A mentett file-ok tömörítéséhez szükséges 7ZIP program Windows verziója a telepítő készlet része, Linux alatt pedig a csomagkezelőből kell feltenni.

 Megjegyzés

Az újabb verziók kiadása nem külön frissítő csomagban történik, ugyanezt a telepítő csomagot kell használni. A verzófrissítéskor a QsBackupFdbService.zip file-t egy munkakönyvtárba kell kicsomagolni, majd a a QsBackupFdbService.jar file-t a <SupHome>\LIB könyvtárba át kell másolni. Az új verzió megfelelő helyre történő másolása után a szolgáltatás újraindítása szükséges.

Paraméterek beállítása

A szolgáltatás működtetéséhez szükséges INI file a <SupHome>\LIB\QsBackupFdbService.ini néven található meg.  Az ebben levő paraméterek vezérlik a program működését. Az alapvető működési paramétereket az indulásakor olvassa fel, és a változásuk esetén a szolgáltatás újraindítása szükséges. A paraméterek másik csoportja minden egyes időzített futtatáskor újraolvasásra kerül, így ezek a szolgáltatás újraindítása nélkül megváltoztathatók. A működési paraméterek a telepítés során felmásolásra került QsBackupFdbService.ini file-ban vannak dokumentálva.

A legfontosabb indítási paraméter, a [Startup] szekció SysIniPath bejegyzése, mely a mentés indításához szükséges adatbázis kapcsolódást írja le.

 Figyelem

A SUP.INI file [SysData] szekciójban, a SysDataGDB kulcson csak regisztrált szerverneves hivatkozás használható! A régi natív hivatkozás használata esetén a program hibát jelez!

 

A [Backup] szekcióban kell beállítani a futáshoz szükséges GBAK és 7ZIP konzol utility elérhetőséget. Továbbá itt kell beállítani az ütemezést, valamint a notifikációs e-mailek küldési paramétereit is!

 

A telepítőben található eredeti konfigurációs állomány
; QsBackupFdbService Copyright QSoft Kft. 2013
; --------------------------------------------
;
; A file neve kötelezően: QsBackupFdbService.ini

; Ez a fájl tartalmazza a szolgáltatás indítási és működési paramétereit.
;
; A konfigurációs file két szekcióra van bontva: [Startup] és [Backup]
; A [Startup] szekció csak egyszer töltődik be, a alkalmazás/szolgáltatás indításánál.
; A [Startup] szekció kritikus fontosságú, tehát ha bármely paraméter hiányzik vagy hibás, fatális hiba keletkezik.
;
; A [Backup] szekció minden alkalommal betöltődik, a mentés indulása előtt (napi 1x).
; A [Backup] szekció ütemezést paraméterező kulcsait, az ütemezett napokat, illetve ütemezett időt 
; a program folymatosan figyeli.
; A [Backup] konfiguráció is adhat hibákat, de ezek nem fogják leállítani a programot/szolgáltatást.
; Ez esetben a LOG fájlokat kell megvizsgálni, főleg startupnál, hogy megbizonyosodjunk abban
; hogy minden lényeges paraméter megfelelően lett megadva.
; ----------------------------------------------------------------------------------------------------------------


; Az induláshoz szükséges paraméterek. Változtatás esetén a szolgáltatás újraindítása szükséges!
[Startup]
; A SUP renszerindítási könyvtára. Itt található a SUP.INI és SERVERS.INI konfigurációs file.
;     Pl.: 
;           Windows op. rendszer:  C:\Qsoft\SUP\SysData 
;           Linux op. rendszer:    /usr/local/qsoft/SysData
SysIniPath=C:\QSoft\SUP\SysData


; A szolgáltatás képes egy egyszerű http alapú webszolgáltatást biztosítani html formátumban futás közben.
; Itt lehet megadni a portot, amin elérhető/hosztolható a webszolgáltatás.
;   -1 esetén ki van kapcsolva, javasolt az 1024 fölötti portok használata.
; Ha be van kapcsolva, weben keresztül monitorozható az alkalmazás. Pl.: supserver:8080
; A portot a tüzfalon engedélyezni kell!
; A SUP rendszerben javasolt bekapcsolni a szolgáltatás muködésének figyelését, a
; "Szerviz | Technikai funkciók | Rendszerinformációk" menüpontban, ahol a [Mentés paraméterei] adatlapon 
; be kell állítani a QsBackupFdbService szolgáltatás elérhetoséget. 
; A SUP kliens rendszeresen ellenorzi a szolgáltatás állapotát, és hibát jelez, ha a szolgáltatás leállt.
;  DEFAULT = 8080
;WebservicePort=8080


; A szolgáltatás kihagyja-e az első napot indításnál, vagy ne
;  DEFAULT = False
;ServiceSkipFirstDay=False


; Az INI file ütemezési bejegyséseinek vizsgálati gyakorisága (milliseconds)
; Ennyit vár a szolgáltatás 2 vizsgálat között.
;     Alap példa: A szolgáltatás megvizsgálja az .INI fájlt 30 percente, hátha változott az ütemezett 
;                   napok vagy idő értéke,
;    ha igen, frissíti a saját értékeit. Ez lehetové teszi hogy a szolgáltatást kézzel napi több 
;       alkalommal is lehet futtatni.
;  DEFAULT = 30 * 60 * 1000 = 1800000 (30 minutes)
;  A teszteléshez célszerű ennél gyakoribb beállítást használni. Pl.: 5000 (5 sec)
;ServiceInitimeCheckInterval=5000


; A gyakoriság amivel a szolgáltatás az időpontot vizsgálja (elértük-e már az ütemezett idot) (milliseconds)
;  DEFAULT = 5 * 1000 = 5000 (5 seconds)
;ServiceScheduledCheckInterval=5000


; Az időmennyiség, amennyivel a szolgáltatás késésben lehet az ütemezett backup elvégzésével (seconds) - avagy ha ennyit vagy kevesebbet késik, még lefuthat aznap
; Ha ez az érték -1, a szolgáltatás végtelen idot késhet, mindenképpen le fog futni aznap
;    Alap példa: A szolgáltatásnak 11:20-kor kellett volna elvégeznie az ütemezett backupot, de egyéb hatások miatt
;    (rendszer fennakadás, alacsony prioritás, stb..) késobb vizsgálja az ütemezett idopontot, pl. 11:23-kor, ettol függetlenül
;    a szolgáltatás még elvégezheti a backupot, mivel 5 perc késésen belül van
;  DEFAULT = 60 * 60 = 3600 (60 minutes)
;ServiceScheduledCheckMaxlate=300
; ----------------------------------------------------------------------------------------------------------------

; Adatbázis mentés paraméterei
[Backup]
; Ütemezés paraméterei
;   Mely napokon mentse az aktív állapotú cégeket.
;    Formátum: MON, TUE, WED, THU, FRI, SAT, SUN
ScheduledWeekDaysAct=MON, TUE, WED, THU, FRI

; Mely napokon mentse az archív állapotú cégeket.
ScheduledWeekDaysArc=SAT

; Futtatás időpontja. Pl.: 22:00 ( http://en.wikipedia.org/wiki/ISO_8601 )
; Időzítés nélküli futtatásra nincs lehetőség.
ScheduledTime=23:00:00

; A szükséges utility és path beállítások
;  A tömörített mentések helye. Ide készülnek a mentések. 
;  A mentéseket erősen ajánlott NEM ugyanarra a lemezre készíteni,
;  mint ahol a mentendő adatbázis file-ok (FDB) vannak!
;      Pl. 
;           Windows op. rendszer:   C:\Qsoft\Mentes 
;           Linux op. rendszer:     /usr/local/qsoft/mentes
BackupPath=C:\QSoft\Mentes


;  A Firebird SQL  GBAK utility elérhetösége. 
;      Pl. 
;           Windows op. rendszer:   C:\Program Files\Firebird25\BIN\GBAK.exe 
;           Linux op. rendszer:     /usr/bin/gbak
GbakExe=C:\Program Files\Firebird25\bin\gbak.exe


;  A tömörítéshez szükséges 7ZIP archiver elérhetősége. 
;      Pl. 
;           Windows op. rendszer:   C:\Qsoft\SUP\UTIL\7ZA.EXE
;           Linux op. rendszer:     /usr/lib/p7zip/7zr
ArchiverExe=C:\QSoft\SUP\UTIL\7ZA.EXE


; Notifikációs paraméterek
; Adminisztrátor e-mail címe. Ide kerül elküldésre minden esemény,
; és a futási LOG. Minden futási napon egy darab e-mail.
; Vesszővel felsorolva több cím is megadható.
EmailToAdmin=admin@sajatdomain.hu

; Csak abban az esteben küld e-mailt, és a LOG-ot, ha a futás során 
; hiba keletkezik.
; Vesszővel felsorolva több cím is megadható.
EmailToError=admin@sajatdomain.hu

; Levelező szerver adatai az értesítok küldéséhez.
;   SmtpHost: Üres HOST esetén nem küld értesítést
;   SmptPort: default: 25, secure: 465, gmail: 587
;   SmtpUser, SmtpPwd üres esetén [none], vagyis nincs autentikáció 
;   SmtpAuth: none, starttls, tls, ssl
SMTPHost=smtp.sajatdomain.hu
SMTPPort=25
SMTPUser=
SMTPPwd=
SMTPAuth=none

 

Működés tesztelése alkalmazásként

A paraméterek beállítása után célszerű ellenőrizni a működést még alkalmazás módban, és csak a sikeres teszt után véglegesíteni service-ként. Mivel ez egy konzolalkalmazás, parancssorból a JAVA -jar QsBackupFdbService.jar parancs kiadásával lehet indítani. A futás során keletkező információkat a konzolra, ill. az aktuálisan futtatott JAR file alá létrehozott .\LOG könyvtárban létrehozott naplózó file-okba írja.

A tesztfutás során a [Backup] szekcióban  ScheduledTime beállítással kell időzítést beállítani a jelenlegi rendszeridőnél egy-két  perccel későbbre. Amikor az ütemezett időpont bekövetkezik, a konzolon, ill. a <SupHome>\LIB\LOG könyvtárban keletkező file-okban ellenőrizhető a futás eredménye.

A normál működés, ill. a futás során keletkezett hibák külön napló file-ba kerülnek. Ezek elküldése külön kérhető.

Szolgáltatás indítása - Windows környezet

Az alkalmazás módú sikeres tesztelés után kerül sor a Windows service-ként történő telepítésre. Ezt az srv_install.bat file indításával lehet kezdeményezni. A szolgáltatás telepítése előtt a file tartalma szintén átszerkesztendő, az aktuális működési környezetre adaptálva. További információ a file kommentekben. A JAR file Windows szolgáltatásként történő indításához szükséges a telepítő csomag részeként megtalálható PRUNSRV.EXE.

 Figyelem

A szolgáltatás telepítéshez adminisztrátori jogosultság szükséges. A telepítő nem indítja el a szolgáltatást. Ezt a SERVICES.MSC futtatásával, lehet kezdeményezni. A szolgáltatások listájában meg kell keresni a QsBackupFdbService bejegyzést, és el kell indítani a szolgáltatást.

 Megjegyzés

Kettős licence telepítés esetén a szolgáltatás több példányban is indítható. Ehhez egyedi srv_install.bat file szerkesztés szükséges. A kettős licence telepítéshez hasonlóan a szolgáltatás nevét ki kell egészíteni a kettős licence azonosításánál használt utótagokkal.
Két hely kell beavatkozni: az egyik a //IS kapcsoló után, a másik a Displayname= paraméter.

Szolgáltatás indítása - Linux környezet

Az alkalmazás módú sikeres tesztelés után kerül sor a Linux daemon-ként történő telepítésre. A szolgáltatás elindítását a rendszer betöltésének folyamatában érdemes megtenni. Mivel a szolgáltatások telepítése disztribúciónként egyedi lehet, és a rendszer felépítése cégenként változhat, ezért Linux környezetben csak ajánlásokat tehetünk.

Debian alapú környezetben az /etc/init.d könyvtár alá kell bemásolni a QsBackupFdbService.sh állományt, majd ezt kell regisztrálni, mint szolgáltatást. A QsBackupFdbService.sh állomány tartalmazza azt az útvonalat, ahol megtalálható a QsBackupFdbService.jar állomány. Alapértelmezetten a /usr/local/qsoft/lib útvonal van megadva, de ez tetszőlegesen átírható, szerkeszthető. A QsBackupFdbService.jar állomány mellett kell helyet kapjon a QsBackupFdbService.ini konfigurációs állomány, amelyben további információ található a működési környezet beállítására.

A Linux környezethez szükséges csomagokat nem tartalmazza a QsBackupFdbService.zip telepítő készlet, mivel ezek disztribúció, és verziófüggőek. Ezért a csomagokat külön kell letölteni, és telepíteni.
Debian alapú rendszereken - amennyiben elérhető - az alábbi csomagok telepítése szükséges:

  • Java telepítéséhez: apt-get install openjdk-7-jre
  • 7Zip telepítése: apt-get install p7zip
  • Szolgáltatás felvétele: update-rc.d QsBackupFdbService.sh start 20 2 3 4 5 . stop 20 0 1 6 .

Szolgáltatás működésének figyelése

A SUP® rendszerben a Szerviz | Technikai funkciók | Rendszerinformációk menüpontban, a Mentés paraméterei adatlapon be kell állítani a QsBackupFdbService szolgáltatás elérhetőséget. A SUP kliens rendszeresen ellenőrzi a szolgáltatás állapotát, és hibát jelez, ha leállt.

A szolgáltatás ellenőrzése nemcsak a SUP® rendszerben, hanem egy böngésző segítségével is ellenőrizhető. Egyszerűen be kell írni a címsorba a gép nevét/IP címét, és a QsBackupFdbService.ini -ben beállított port számot.
Pl.:
   http://supserver:8080

A megjelenő webes felületen megtekinthetők a futással kapcsolatos legfontosabb információk.

 Megjegyzés

Olyan formátumban kell beállítani az elérhetőséget, hogy a SUP klienst futtató gépről elérhető legyen. A beállítást célszerű ellenőrizni a [Teszt] nyomógombbal.
Ahhoz, hogy ne csak localhost-on működjön, hanem a SUP kliensek is letudják kérdezni, a Windows tűzfalat ki kell kapcsolni, vagy a konfigurációs fileban megadott port-ot engedélyezni kell.