Infrastrukturális támogatás a webes szolgáltatásokhoz
A Novell NetWare 6 az Apache webszerver, valamint a Tomcat servlet és JSP konténer kombinációját tartalmazza. A Tomcat a Java servlet és a JavaServer Pages (JSP) technológiák hivatalos referencia-implementációja. Az Apache webszervert a Java alkalmazások használatának képességével ruházza fel.
A Novell beolvasztotta a NetWare 6-ba az Apache/Tomcat kombinációt, hogy új webes szolgáltatásaihoz mint az iFolder Web Access és iManage infrastruktúra-támogatást biztosítson. A NetWare 6 alapbeállításban négy Apache/Tomcat-komponenst telepít:
- Apache 1.3.2.0 for NetWare 6
- Tomcat 3.2.2 for NetWare 6
- Tomcat 3.3 for NetWare 6
- Java Virtual Machine 1.3 for NetWare 6
AZ APACHE/TOMCAT BEÁLLÍTÁSA JAVA FEJLESZTőI KÖRNYEZETK&Eeacute;NT NETWARE 6-ON
Az Apache/Tomcat és a NetWare 6 kombinációja megbízható, nagyteljesítményű környezet Java alkalmazások fejlesztéséhez és futtatásához. Ez az útmutató lépésről lépésre bemutatja az Apache/Tomcat fejlesztő- és futtatókörnyezet beállítását a NetWare 6 szerveren.
A Novell azt tanácsolja, hogy az Apache/Tomcat alkalmazásfejlesztő- és futtatókörnyezetet egy erre a célra kijelölt NetWare 6 szerverre telepítsük. A fejlesztő- és futtatókörnyezet szétválasztásával minimalizálhatók a fejlesztőkörnyezet és a NetWare 6 felügyeleti infrastruktúra között fellépő zavaró hatások. Az üzemi környezet működését sem kell megszakítani a fejlesztőkörnyezet leállításakor és újraindításakor.
Mivel az Apache kis memóriaterületet foglal és kevés erőforrást haszál, az Apache több példányának futtatása minimális hatással van a NetWare 6-ra.
Megjegyzés: A Tomcat a Novell Enterprise Serverrel is együttműködik, e kombinációval igen nagy hatékonyságú webes környezet biztosítható. Ennek oka, hogy a Novell Enterprise Server kihasználja a NetWare 6 többprocesszoros feldolgozási képességeinek összes előnyét, és számos területen optimalizálva lett NetWare 6-ra, a memóriagyorsítást is beleértve. A jelen dokumentum az Apache/Tomcat párosítással foglalkozik.
1. L&Eeacute;P&Eeacute;S: IMPLEMENTÁCIÓ ELőTTI TERVEZ&Eeacute;S
Először is el kell dönteni, hogy hogyan konfiguráljuk a Java fejlesztői környezetet. Három konfigurációs lehetőség van:
- Független (standalone) konténerek
- Folyamaton kívüli (out-of-process) konténerek
- Folyamaton belüli (in-process) konténerek
Nagy teljesítménye és az egyszerű konfigurálhatósága miatt a Novell a folyamaton belüli konténereket használó fejlesztő- és futtatókörnyezet kialakítását javasolja. Emiatt ez a tájékoztató a folyamaton belüli konténereket alkalmazó Apache/Tomcat konfiguráció megvalósításának lépéseit mutatja be. A teljesség kedvéért a másik két konfiguráció leírása is szerepel.
Független konténerek
A Tomcat jól működik független konténerként. (Egy független servlet-konténer web- vagy http-szolgáltatásokat biztosít, közvetlenül kiszolgálva weboldalakat, servleteket és Java-szerveroldalakat). Ebben a felállásban a Tomcat jeleníti meg az összes statikus HTML-t, képet, formátumot, valamint a Java-szolgáltatásokon keresztül végrehajtott üzleti folyamatokat. A webszerver nem vesz részt ebben a folyamatban.
Ennél a kialakításnál a hozzáférés nem a 80-as porton keresztül történik (hanem általában a 8080-as porton). Ennek következtében összeütközésbe kerülhet a többi szolgáltatással, például a Novell BorderManager szolgáltatásaival, amelyek szintén a 8080-as portot használják, ezért inkább a folyamaton belüli konténeres megoldást érdemes a fejlesztőkörnyezethez alkalmazni, és a környezetet elkülönített szerverpartíción futtatni. Így nem kell aggódni a lehetséges portütközés miatt.
Folyamaton kívüli konténerek
Ez a megoldás két memóriaterületet használ. Az első memóriaterületet használja a webszerver és a Java-bővítőmodulok, a másodikat pedig a virtuális Java-gép (JVM) és a servlet-konténerek.
Ebben a kialakításban a webszerver(ek) akár egy másik platformon is futtathatók, például NetWare-en, Solarison, AIX-en vagy Linuxon. NetWare-en futtatva a Tomcatet és a JVM-et, kihasználhatjuk a NetWare 6 többprocesszoros feldolgozási képességeit.
A bővítőmodul és a konténer közötti kommunikáció általában TCP/IP-n keresztül zajlik. Néhány Java-alkalmazásszerver másik protokollt használ a kommunikációhoz IIOP-t vagy esetleg egyedi protokollokat.
A folyamaton kívüli konténer-konfigurációnak megvannak az előnyei és a hátrányai is.
Előny: Azáltal, hogy a megjelenítés feladata és az üzleti logika szét van választva, és az üzleti logika máshol fut, a feldolgozási terhelés nagy részétől megszabadul a servlet-konténer. Ez javítja a méretezhetőséget és növeli a megbízhatóságot.
Hátrány: A servletnek egy külső protokollt kell használnia a két memóriaterület közötti kommunikációhoz. Ez ronthatja a teljesítményt.
Folyamaton belüli konténerek
Ebben a változatban a servlet-konténerek ugyanazt a memóriaterületet használják, mint a webszerver, vagyis ugyanazon a fizikai hardveren, NetWare 6 alatt futnak. A Tomcat-bővítőmodul intézi a két folyamat közötti kapcsolatot. A teljesítmény jó, mert ez a konfiguráció a nagy hatékonyságú NetWare 6 operációs rendszer összes előnyét kihasználja. A tájékoztatóban feltételeztük ennek a konténer-konfigurációnak a használatát.
2. L&Eeacute;P&Eeacute;S: A NETWARE 6 SZERVER KONFIGURÁCIÓJÁNAK MEGHATÁROZÁSA
Az Apache/Tomcat új, védett helyen futó példányának beállítása előtt meg kell határozni a NetWare szerveren már futó Apache-példányokat. Erre azért van szükség, mert meg kell győződni arról, hogy az új példány nem kerül-e konfliktusba a meglevő példányokkal.
A NetWare 6-on már futó Apache-példányok meghatározásához először meg kell ismerni a szerver konfigurációját. A konfiguráció a NetWare 6 eredeti telepítésénél választott opcióktól függően különböző lehet.
Az Express telepítési opció esetén van egy kernelterületen futó Apache példány, és egy Tomcat példány, amelyet úgy állítottak be, hogy együttműködjön a Java Virtual Machine 1.3 for NetWare 6-tal. Ha nem az Express telepítés opciót választottuk, akkor a konfiguráció a választott termékopciótól függ. Például ha az iFolder és a Novell Enterprise Webszervert választottuk, akkor az Apache egy példánya és a Novell Enterprise szerver a kernel területen, és az Apache egy másik példánya a védett területen fut.
Megjegyzés: Ha egy egyszerű, zavarmentes fejlesztőkörnyezet létrehozása a cél, a Novell az Express telepítési opció választását javasolja.
A NetWare 6 konfiguráció meghatározásához a NetWare-szerverkonzolt használhatjuk. A konzol elérhető közvetlenül a szerverről, vagy távolról webböngészőn keresztül NetWare Web Manager segédprogram használatával. Ezen segédprogram használatához megfelelő jogosultságok kellenek, vagy NetWare Adminként kell belépni, és secure socket-módot kell használni, különben a hozzáférést a rendszer elutasítja.
Annak érdekében, hogy a NetWare 6 szerverkonzolt webböngészőn keresztül elérjük, a következő lépéseket kell tennünk:
- Írjuk be https://[hostnév] vagy https://[IP-cím]:2200 karaktersorozatot. A rendszer felszólít a felhasználói név és jelszó megadására.
- Írjuk be a felhasználói nevet és jelszót. Válaszul a böngésző megjeleníti a NetWare Web Manager nyitóképernyőjét. A megjelenő hozzáférési lehetőség a telepítési opciótól függően különböző lehet.
- Kattintsunk a NetWare Remote Manager-re. A böngésző megjeleníti a Remote Manager képernyőt.
- Válasszuk ki a Manage Server fejléc alatt levő Console opciót a képernyő bal oldalán. A böngésző a képernyő jobb oldalán megjeleníti az aktuálisan futó programokat. Legalább azt kell látnunk, hogy a Tomcat fut. Lehetséges, hogy az Apache vagy a Novell webszerver is fut.
- Kattintsunk az ablak jobb oldalán levő Console Screens feliratra. Ez megnyitja a NetWare-szerverkonzol távoli képernyőjét a böngészőn. Innentől kezdve úgy dolgozhatunk, mintha a helyi NetWare-szerverkonzol előtt ülnénk.
A szerver konfigurációjának meghatározásához:
- Írjuk be az [m apache] parancsot a parancssorba a helyi vagy a távoli NetWare-szerver konzolon. A konzol megjelenít egy képernyőt, amely megmutatja az Apache összes futó példányát (mind a kernelterületen, mind a védett területen futókat). Valószínűleg látni fogunk egy Apache-példányt, amely a kernelterületen fut, és láthatunk egy vagy több Apache példányt, amelyek a védett területen futnak.
Megjegyzés: Ha [ctrl escape]-et nyomunk az [m apache] parancs beírása helyett, a konzol megjeleníti a megnyitott képernyők választékát. Ez azonban nem biztos, hogy megmutatja az összeset, mivel a kerneltérben futó Apache alapértelmezésben nem jelenik meg.
3. L&Eeacute;P&Eeacute;S: HOZZUNK L&Eeacute;TRE A V&Eeacute;DETT TERÜLETEN EGY KIJELÖLT APACHE-P&Eeacute;LDÁNYT
Annak leegyszerűsítésére, hogy az Apache új példányát védett területre töltsük be, a Novell azt ajánlja, hogy hozzunk létre két NCF-fájlt: egyet az Apache-szerver elindításához és egyet a leállításához. Ezeket a fájlokat (majdnem) tetszőleges szövegszerkesztővel létre lehet hozni, a NetWare 6-ban levő NetWare-konzolszerkesztőt és a GUI-szerkesztőt is beleértve. Az indító fájl létrehozásához írjuk be a Load address space = apache apache.nlm sort a szövegszerkesztőbe és mentsük el a fájlt az Apache-könyvtárba startfilename.ncf néven, ahol a startfilename egy tetszőlegesen választott fájlnév.
A leállítási fájl létrehozásához írjuk be az unload address space = apache apache.nlm sort a szövegszerkesztőbe és mentsük el az Apache könyvtárba stopfilename.ncf formában, ahol a stopfilename tetszőlegesen választott fájlnév. Ha ezeket az NCF-fájlokat használjuk az újabb Apache-példány elindításához és leállításához, biztosíthatjuk, hogy az Apache megfelelő példánya álljon le a fejlesztői webszerver újraindításakor.
4. L&Eeacute;P&Eeacute;S: A TOMCAT EGY TOVÁBBI P&Eeacute;LDÁNYÁNAK KONFIGURÁLÁSA
A fejlesztő- és futtatókörnyezethez konfigurálni kell egy, csak erre a célra használt Tomcat-példányt. A három legfontosabb oka ennek az eljárásnak:
- Minimalizálhatók a fejlesztőkörnyezet és a NetWare 6 felügyeleti infrastruktúra közötti zavarok.
- Nem kell megszakítani az üzemi környezetet a fejlesztőkörnyezet minden egyes újraindításakor.
- A servlet- és a JSP-fejlesztés engedélyezésével kihasználhatjuk az automatikus konfiguráció előnyeit, melynek nagy része kihasználja a Tomcat automatikus konfigurációs lehetőségeit és a Web Archive (WAR) fájltelepítési lehetőségét. (A NetWare 6-ban lévő Tomcat alapértelmezésben támogatja a NetWare 6 felügyeleti infrastruktúráját statikus fájlok alkalmazásával.)
A Tomcat egy újabb példányának konfigurálásához néhány fájlt át kell alakítani.
Megjegyzés: a változtatások végrehajtása előtt ajánlatos megnézni a szerverport-konfigurációt. Ha telepítéskor az összes NetWare 6-hoz kapható termék telepítése opciót választottuk, akkor lehetnek olyan konfigurált portok, amelyekről nem tudunk. Továbbá, ha egynél több IP-címet használunk a szerveren, akkor előfordulhat, hogy a szerveren ugyanaz a port több példányban különböző IP-címekhez van rendelve.
A TCPCON segédprogram használható a szerverkonzolon (helyi vagy távoli konzolról egyaránt) a NetWare szerver használatban levő portjainak meghatározásához. Ehhez a következő parancsokat kell megadni a konzol parancssorában:
- TCPCON
- Protocol Information
- TCP
- TCP Connections
- Enter
- Lefelé nyíl (down arrow)
Válaszul a konzol megjeleníti a NetWare-szerver használatban levő portjait.
Az adminserv.conf fájl szerkesztése
Alapértelmezésben a NetWare 6 úgy konfigurálja a Tomcatet, hogy együttműködjön az Apache-csal a Novell Enterprise Web Server felügyeleti felületeként. Az [nvxadmup] ncf fájl indítja el az Apache első példányát. Ha begépeli az Apache szót a NetWare konzolon az Apache leállítás utáni újraindításhoz, különböző konfigurációs fájlok hívódnak meg az Apache első példányához, és ennek következtében a felügyeleti felület leáll.
Ezért ne felejtsük el használni az nvxadmup parancsot, mikor az Apache felügyeleti példányával dolgozunk. A lehetséges konfliktusok elkerülése érdekében célszerű létrehozni egy új NCF-fájlt más néven. Ezzel az új fájllal indítható el a Tomcat új példánya, amely hozzárendelődik a fejlesztéshez használt második Apache példányhoz. A NetWare 6 System könyvtárban levő nvxadmup.ncf meghívja az adminserv.conf konfigurációs fájlt. Az adminserv.conf fájlon a következő módosításokat kell végrehajtani:
- Válasszunk ki egy olyan meghajtót, amely a NetWare 6 szerverhez van rendelve. A sys: köteten egy Apache nevű könyvtárat fogunk látni.
- Keressük meg és lépjünk be az Apache könyvtárban levő conf alkönyvtárba.
- Szövegszerkesztővel nyissuk meg az adminserv.conf fájlt és érvénytelenítsük a Port 80 konfigurációt megjegyzés-jel beírásával. (E konfigurációban foglaltak szerint az Apache első példánya a 80-as portot figyeli.) A konfiguráció felszabadítása érvénytelenné teszi a 80-as portot, így az Apache második példánya ezt a portot figyelheti. (Az Apache első példánya szintén a 2200-as portot figyeli.)
Hasznos ötlet:
Használjuk a kettős keresztet a megjegyzéssé jelöléshez, így meg tudjuk különböztetni a saját megjegyzéseinket a másokétól.
- Mentsük el a fájlt.
A server.xml fájl szerkesztése
Most a Tomcat/33/conf könyvtárban található server.xml fájlt kell átalakítani:
- A szövegszerkesztőből nyissuk meg a Tomcat/33/conf könyvtárban található server.xml fájlt.
Megjegyzés: Legyünk óvatosak, ne keverjük össze a server.xml fájlt az nwserver.xml-lel, amely az Apache felügyeleti példányának néhány konfigurációs beállítását határozza meg.
- Indítsunk egy keresést a [8009] mintával és cseréljük le a megtalált mintákat 8019-re. (A 8019-es portnak elérhetőnek kell lennie a szerveren.) A NetWare Remote Manager úgy van beállítva, hogy a 8009-es porton fusson és így összeütközhetne az egyik Tomcat AJP13 feldolgozó programszállal a Tomcat második példányának elindításakor.
Megjegyzés: A 8007-es port (néhány sorral a 8009-es fölött található) valószínűleg nincs használatban, de a következetesség érdekében ez is lecserélhető a 8017-es portra.
- Keressük meg az ApacheConfig, forward All = 'true' karaktersorozatot, és vegyük ki előle a megjegyzés jelet (azaz érvényesítsük).
- Mentsük el a fájlt.
A workers.properties fájl szerkesztése
Mivel megváltoztattuk a portkijelölést a server.xml-ben, meg kell változtatni a workers.properties fájlban is:
- Válasszuk ki a Tomcat\33\conf\jk könyvtárban levő workers.properties fájlt.
Megjegyzés: Legyünk óvatosak, ne keverjük össze a workers.properties fájlt az nwworkers.properties fájllal, amely a felügyeleti konfigurációra hivatkozik.
- Nyissuk meg a workers.properties fájlt a szerkesztőben, és menjünk le körülbelül 85 sort a fájlban.
- Változtassuk meg a #--------DEFAULT ajp12 WORKER DEFINITION --------# alatt található bejegyzését a worker.12-nél 8007-as portról 8017-re.
- Változtassuk meg a #--------DEFAULT ajp13 WORKER DEFINITION--------# alatt található bejegyzést a worker.ajp13-nál 8009-es portól 8019-re. (Ez a bejegyzés követi az előző lépésben módosított bejegyzést).
- Mentsük el a fájlt.
A tomcat33.ncf fájl szerkesztése
Módosítsuk a tomcat33.ncf fájlt:
- Válasszuk ki a Tomcat\33\bin könyvtárban levő tomcat33.ncf fájlt.
- Nyissuk meg a fájlt a szövegszerkesztővel, és menjünk a fájl legutolsó sorába.
- Változtassuk meg az utolsó sor végét [nwserver.xml]-ről [server.xml]-re.
- Mentsük el a fájlt más néven.
Megjegyzés: Vigyázzunk, nehogy felülírjuk az eredeti tomcat33.ncf fájlt.
A httpd.conf fájl szerkesztése
Változtassuk meg a httpd.conf fájlt:
- A hálózati meghajtó hozzárendelésből válasszuk ki az Apache\conf könyvtárban levő httpd.conf fájlt.
- Nyissuk meg a fájlt a szövegszerkesztőben és menjünk a fájl végére.
- Írjuk hozzá a következő sort a fájl végéhez:
Include sys:/tomcat/33/conf/auto/mod_jk.conf
Megjegyzés: Ez a módosítás lehetővé teszi, hogy az Apache átadja a kéréseket a servleteket és a JSP oldalakat is beleértve a Tomcatnek. Ehhez szükség van a mod_JK nevű bővítőmodulra. A szükséges leképezések a Tomcat servlet/JSP alrendszer elindításakor jönnek létre. Az indítási folyamat a sys:/tomcat/33/conf/auto könyvtárban létrehoz egy mod_JK.conf nevű fájlt.
- Mentsük el a fájlt.
Ennél a pontnál a rendszer újra inicializálásához le kell állítani és újraindítania a Tomcatet és az Apache-ot. Először a Tomcatet indítsuk újra és utána az Apache-ot, mert az Apache-nak ki kell olvasnia a mod_jk.conf fájlban levő információkat . Mikor a rendszer újraindul, látnunk kell az újonnan létrejött mod_JK.conf fájlt.
Most teszteljük le a konfigurációt.
- Nyissuk meg a böngészőt és írjuk be a szerver IP-címét vagy a gazdagép nevét, majd gépeljük be az /examples karaktersort. Ekkor fel kell jönnie a Tomcat servlet/JSP példaoldalnak, amely két példakategóriát tartalmaz: egyet a servlethez és egyet a JSP-hez. (Ha az oldal nem jelenik meg, ellenőrizze, hogy az Apache és a Tomcat is fut-e, és megvan a hozzárendelés a példaoldalhoz, amely a mod_jk fájlban jött létre.)
- Válasszuk ki a jsp/ category-t. Ekkor meg kell jelennie a példákat tartalmazó oldalnak. Innen futtatható a JSP, és az oldal forráskódja is látható.
- Válasszuk ki a date JSP-t és kattinsunk a végrehajtásra (execute). Ekkor a dátummal kapcsolatos információkat tartalmazó oldalnak kell megjelennie, amelyen a hónap napjai, az év, a pontos idő, a hét napjai, az év napjai, az év hetei és az időzóna-eltolódások láthatók.
Gratulálunk. Ön létrehozta a Java fejlesztő- és futtatókörnyezetet, amely kihasználja a NetWare 6 előnyeit a hatékonyságot, a nagy megbízhatóságot és a nagy teljesítményt. Mostantól a fejlesztők egy olyan védett környezetben dolgozhatnak, amelyet bármikor újraindíthatnak a szerver többi szolgáltatásának zavarása nélkül.
TOVÁBBI INFORMÁCIÓ
További információ a Novell NetWare mindennapos felügyeletével, a termék tulajdonságaival, illetve különböző kérdésekkel és válaszokkal kapcsolatban az alábbi oldalakon találhatók:
- Ha további információt szeretne megtudni a NetWare-en működő Apache-ról, látogasson el a http://httpd.apache.org/docs/netware.html oldalra.
- Ha további információt szeretne megtudni a NetWare-es Apache Tomcat Pluginról, látogasson el a http://jakarta.apache.org/builds/jakarta-tomcat/release/ lapra és ott a megfelelő verziószám alatt levő src könyvtárba.