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:

  1. Í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.
  2. Í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.
  3. Kattintsunk a NetWare Remote Manager-re. A böngésző megjeleníti a Remote Manager képernyőt.
  4. 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.
  5. 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:

  1. TCPCON
  2. Protocol Information
  3. TCP
  4. TCP Connections
  5. Enter
  6. 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:

  1. 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.
  2. Keressük meg és lépjünk be az Apache könyvtárban levő conf alkönyvtárba.
  3. 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.

  4. 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:

  1. 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.

  2. 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.

  3. Keressük meg az ApacheConfig, forward All = 'true' karaktersorozatot, és vegyük ki előle a megjegyzés jelet (azaz érvényesítsük).
  4. 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:

  1. 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.

  2. Nyissuk meg a workers.properties fájlt a szerkesztőben, és menjünk le körülbelül 85 sort a fájlban.
  3. 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.
  4. 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).
  5. Mentsük el a fájlt.

A tomcat33.ncf fájl szerkesztése

Módosítsuk a tomcat33.ncf fájlt:

  1. Válasszuk ki a Tomcat\33\bin könyvtárban levő tomcat33.ncf fájlt.
  2. Nyissuk meg a fájlt a szövegszerkesztővel, és menjünk a fájl legutolsó sorába.
  3. Változtassuk meg az utolsó sor végét [nwserver.xml]-ről [server.xml]-re.
  4. 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:

  1. A hálózati meghajtó hozzárendelésből válasszuk ki az Apache\conf könyvtárban levő httpd.conf fájlt.
  2. Nyissuk meg a fájlt a szövegszerkesztőben és menjünk a fájl végére.
  3. Í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.

  4. 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.

  1. 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.)
  2. 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ó.
  3. 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: