Sziasztok! Az alabbi megoldasra lenne szuksegem, melynek megvalositasa 5.000 Ft-ot is meg er nekem. A 272.0242-es szamon napkozben elerhettek. A zorpnak az alabbi modon kell mukodnie: A bejovo kereseket (http/https) transzparens modon osztja a belso applikacios szerverek fele. Tudnia kell donteni arrol, hogy mely applikacios szerverek kaphatjak meg a kerest az alabbi modon: Az applikacios szerverek csoportokra oszthatok. A csoportok elemei kozt (pl app szerver ip:port) kozott sulyozva kell tudni valasztani. Az eppen elerheto applikacios szervereket egy fajlbol olvassa csoport_azonosito:ip:port formatumban. Eloszor megvizsgalja a GET utani reszt, itt keres tobb mintara. Az egyes mintakra illeszkedes alapjan azonnal tud donteni hogy mely rendelkezesre allo applikacios szervernek kaphatjak meg a kerest. Ha nincs elerheto applikacios szerver a keresett csoporthoz (pl ures a file) ugy egy elore definialt urlre redirektal. Ha egy mintara sem tortent illeszkedes akkor megnezi, hogy egy masik cookie erteke illeszkedik-e meghatarozott mintakra.Ha igen akkor a megfelelo applikacios szerver csoportot valassza ki. Amennyiben nem szerepelt egyben sem ugy redirektalja a klienst egy elore definialt url-re. En igy programoznam le, ha tudnek programozni pythonban, vagy ha hasznalhato dokumentaicoja lenne... url_mintak=1:csoport1, 2:csoport2, 3:csoport3... szerverek=csoport1:/etc/zorp/group1,csoport2:/etc/zorp/group2... cookie=string cookie_mintak=1:csoport1, 2:soport2, 3:csoport3... http(s) request erkezik | url illeszkedik az url_mintakban megfogalmazott regexpek barmelyikere? | +igen | | | kivalasztja a csoportot. van a csoportban hasznalhato szerver(ip:port)? | | | +igen | | | | | tobb szerver is van? | | | | | +igen | | | | | | | random valaszt egyet | | | | | +nem | | | | | kivalasztja az egy elerhetot | | | +nem | | | elore definialt url-re redirectel | +nem | a 'string' nevu cookie illeszkedik a cookie_mintakban megfogalmazott regexpek barmelyikere? | +igen | | | kivalasztja a csoportot. van a csoportban hasznalhato szerver(ip:port)? | | | +igen | | | | | tobb szerver is van? | | | | | +igen | | | | | | | random valaszt egyet | | | | | +nem | | | | | kivalasztja az egy elerhetot | | | +nem | | | elore definialt url-re redirectel | +nem | elore definialt url-re redirectel Koszi! -- Pásztor Lénárd Zoltán
hello, nem marad(tak) le nulla(k) véletlenül a "vérdíj"-ból? Szerintem ennyiért nem fogsz találni embert, aki beállítja neked. üdv, Ago --
Sziasztok!
Az alabbi megoldasra lenne szuksegem, melynek megvalositasa 5.000 Ft-ot is meg er nekem. A 272.0242-es szamon napkozben elerhettek.
:) A transzparens http(s) proxy megvan es mukodik is. A feladat url-re regexpet, cookiera regexpet csinalni ami ha az ember ert pythonul szerintem nem egy ordongos feladat. A 'verdijat' azert kinaltam fel, mert ido hianyaban nem tudok foglalkozni vele. Addigis amig nincs vallalkozo szellem tudtok ajanlani valamilyen python doksit? Ami a hivatalos szajton van (szamomra) eleg erthetetlen. Pl a php doksival osszehasonlitva eg es fold. :( Ami itt zorp specifikus, hogy hogyan irom at a cel cimet ha mar megvan. Ezt mar megirtatok a listara. Az is megvan hogyan szedem ki a cookie-t a requestbol, szinten leirtatok a listara, de kozben megtalaltam a /usr/share/zorp/pylib/Zorp/Http.py fajlban is. Ami nincs meg az az url. A gondom az, hogy nem atlathato szamomra a python szintaxisa. Amire szuksegem van: minimalis fajl kezeles, minimalis tomb kezeles. if, ciklusok es akkor ez kozel sem nagy feladat. Esetleg rosszul latom? Konnyelmuen veszek valamit? Deim Ágoston wrote:
hello,
nem marad(tak) le nulla(k) véletlenül a "vérdíj"-ból?
Szerintem ennyiért nem fogsz találni embert, aki beállítja neked.
üdv, Ago
-- Pásztor Lénárd Zoltán rendszergazda Wonderline Hungary Kft. Telefon: (+36-1) 272.0242 Fax: (+36-1) 272.0252 E-mail: lenard.pasztor@wonderline.hu Honlap: www.wonderline.hu
Sziasztok! Sikerult megoldanom, rendben, megfeleloen mukodik. Mivel kezdo vagyok meg zorpban ezert meg par kerdest szeretnem, ha segitenetek tisztazni. 1. Stabilitas Az eddigi teszteken gond nelkul mukodott, nem hasalt el, stb. Van ra mod, hogy valamilyen informaciot nyerjek a zorp allapotarol? Hogyan tudom 'monitorozni'? (az atmeno forgalom tesztelesen kivul) 2. Teljesitmeny Hol talalok informaciot arrol, hogyan lehet a zorpot finomhangolni. Milyen parameterekkel celszeru tuningolni, milyen szempontok szerint celszeru tuningolni? 3. Tovabbi szolgaltatasok Hol talalok leirast arrol, hogy milyen belso hivasai vannak a zorpnak es ezek hogyan mukodnek, milyen parametereik vannak, stb? Pásztor Lénárd Zoltán wrote:
:)
A transzparens http(s) proxy megvan es mukodik is. A feladat url-re regexpet, cookiera regexpet csinalni ami ha az ember ert pythonul szerintem nem egy ordongos feladat. A 'verdijat' azert kinaltam fel, mert ido hianyaban nem tudok foglalkozni vele. Addigis amig nincs vallalkozo szellem tudtok ajanlani valamilyen python doksit? Ami a hivatalos szajton van (szamomra) eleg erthetetlen. Pl a php doksival osszehasonlitva eg es fold. :(
Ami itt zorp specifikus, hogy hogyan irom at a cel cimet ha mar megvan. Ezt mar megirtatok a listara. Az is megvan hogyan szedem ki a cookie-t a requestbol, szinten leirtatok a listara, de kozben megtalaltam a /usr/share/zorp/pylib/Zorp/Http.py fajlban is.
Ami nincs meg az az url.
A gondom az, hogy nem atlathato szamomra a python szintaxisa. Amire szuksegem van: minimalis fajl kezeles, minimalis tomb kezeles. if, ciklusok es akkor ez kozel sem nagy feladat.
Esetleg rosszul latom? Konnyelmuen veszek valamit?
Deim Ágoston wrote:
hello,
nem marad(tak) le nulla(k) véletlenül a "vérdíj"-ból?
Szerintem ennyiért nem fogsz találni embert, aki beállítja neked.
üdv, Ago
-- Pásztor Lénárd Zoltán rendszergazda Wonderline Hungary Kft. Telefon: (+36-1) 272.0242 Fax: (+36-1) 272.0252 E-mail: lenard.pasztor@wonderline.hu Honlap: www.wonderline.hu
hello,
1. Stabilitas Az eddigi teszteken gond nelkul mukodott, nem hasalt el, stb. Van ra mod, hogy valamilyen informaciot nyerjek a zorp allapotarol? Hogyan tudom 'monitorozni'? (az atmeno forgalom tesztelesen kivul) instances.conf-ba: zorp_proxy_name --verbose=10 ...
3. Tovabbi szolgaltatasok Hol talalok leirast arrol, hogy milyen belso hivasai vannak a zorpnak es ezek hogyan mukodnek, milyen parametereik vannak, stb? for i in /usr/share/zorp/pylib/Zorp/*.py; do more $i; done
:) a. -- Minden baj forrása az 1/x függvény.
Hi! Konfigolt mar valaki zorpot es ipvs-t egy gepre? Ugy latom az ipvs nem fogadja a localhostrol jovo kapcsolatokat igy a zorpot nem tudom egy gepen betenni az ipvs ele. Jelenleg csak az xen-ben latom a megoldast, ha ezt ket gepen kell megoldani. Esetleg valaki megoldotta mas uton ezt a problemat? -- Pásztor Lénárd Zoltán rendszergazda Wonderline Hungary Kft. Telefon: (+36-1) 272.0242 Fax: (+36-1) 272.0252 E-mail: lenard.pasztor@wonderline.hu Honlap: www.wonderline.hu
2.6.12 kernel az amihez talaltam egyarant tproxy es xen patchet. a tproxy patch 2.0.2-es verzioszamu, mig a legfrissebb tproxy patch 2.0.4-es. jelenelg a 3.0.9-es zorpot hasznalnam. Lehet ezt hasznalni a 2.0.2-es tproxy patchel? Javasolt 2.0.2-es tproxy patchet hasznalni production kornyezetben, vagy mindenkepp 2.0.4-et kene gyurni? Pásztor Lénárd Zoltán wrote:
Hi!
Konfigolt mar valaki zorpot es ipvs-t egy gepre? Ugy latom az ipvs nem fogadja a localhostrol jovo kapcsolatokat igy a zorpot nem tudom egy gepen betenni az ipvs ele. Jelenleg csak az xen-ben latom a megoldast, ha ezt ket gepen kell megoldani. Esetleg valaki megoldotta mas uton ezt a problemat?
-- Pásztor Lénárd Zoltán rendszergazda Wonderline Hungary Kft. Telefon: (+36-1) 272.0242 Fax: (+36-1) 272.0252 E-mail: lenard.pasztor@wonderline.hu Honlap: www.wonderline.hu
Sziasztok! FYI: ha zorpnak es ipvs-nek egy gepen kell futnia akkor ket megoldast latok. 1. xen 2. uml 1. Mivel jelen pillanatban nincs olyan xen es cttproxy forras ami egyutt lefordulna ezert ez a lehetoseg kiesik 2. teszteltem, teljesen jol megy Stressz tesztnel tartok a konfiggal. Sajna nem tul jok az eredmenyek. A site ahol hasznalnam 2-3 millio oldal letoltest szolgal ki naponta. Ennek a zorp (alap beallitasokkal) a toredeket sem szolgalja ki egy AMD Athlon(tm) XP 2000+, 256M ram gepen. Gyakorlatilag hibat nem ir, egyszeruen beragad. Csinaltam belso tesztet, par perc forgalmazas utan (amit megfeleloen ki is szolgalt) egyszer csak megall kb 2000 request kiszolgalasa utan, de ez valtozik 1000-2000 kozt random. utana a portot meg lehet nyitni, de nem reagal, a logba verbose=5 mellett sem kerul semmi. zorpctl-el ha restart-ot nyomok vagy sikerul kilonie es ujrainditania, vagy az is elszall. Hogyan lehet megoldani, hogy nagyobb terhelest is elvigyen? Hogyan tudok informaciot kinyerni a rendszerbol ami szamotokra hasznos lehet a hiba detektalasaban. Eloszor keves volt a thread, ezt --threads kapcsoloval megoldottam, de most mar nem mond semmit, csak beall... :( Pásztor Lénárd Zoltán wrote:
Hi!
Konfigolt mar valaki zorpot es ipvs-t egy gepre? Ugy latom az ipvs nem fogadja a localhostrol jovo kapcsolatokat igy a zorpot nem tudom egy gepen betenni az ipvs ele. Jelenleg csak az xen-ben latom a megoldast, ha ezt ket gepen kell megoldani. Esetleg valaki megoldotta mas uton ezt a problemat?
-- Pásztor Lénárd Zoltán rendszergazda Wonderline Hungary Kft. Telefon: (+36-1) 272.0242 Fax: (+36-1) 272.0252 E-mail: lenard.pasztor@wonderline.hu Honlap: www.wonderline.hu
Pásztor Lénárd Zoltán wrote:
Stressz tesztnel tartok a konfiggal. Sajna nem tul jok az eredmenyek. A site ahol hasznalnam 2-3 millio oldal letoltest szolgal ki naponta. Ennek a zorp (alap beallitasokkal) a toredeket sem szolgalja ki egy AMD Athlon(tm) XP 2000+, 256M ram gepen.
Bocs, nem okoskodni akarok, de nem kevés ez a 256MB RAM és a proci teljesítmény egy ilyen oldalszám kiszolgálásának áteresztéséhez? Kis számítás: 1 nap = 86400 másodperc Alsóhangon 2 millió kérést mondtál Az, ha nem is peakekkel, hanem egyenletes eloszlással számolunk, akkor 23.148/mp kapcsolattal kell számolni. Ha ennyi SSL handshaket, SSL réteg lebontást és visszacsomagolást + a protokoll elemzést és a regexp fordítást megcsinálod, ekkora gépen, akkor kiveszem pár bordámat, hogy lejjebb tudjak hajolni... a többit a fantáziádra bízom. Arról nem is beszélve, hogy tekintsünk 4 időzónát, amiben működni kell, ami 24 órás napokkal számolva 12 órás munkaidőt feltételez. Az kb 46 kapcsolat másodpercenként. És akkor most lefele kerekítettem és "csak" 2 millió látogatóval számoltam. És ugye megy még az oprendszer, az UML-ek stb. Egyéb problémákról - hálókártya áteresztőképessége, alaplapi kommunikáció sebessége, adatok ramból CPU-ba történő oda-visszavitele, hát... Hivatalos termékleírásban és más teszteken, ha jól emlékszem valami jobb hardveren, de csak HTTP forgalmat elemezve pár ezer egyidejű kapcsolat működik, de az más vas kategória. Röviden: ezt a konfigot erre a feladatra komolyan gondoltad? Vagy aki kiadta feladatot, hogy old meg ezzel? Szerintem a lehetetlent karcoljuk. Ago ui.: a látszattal ellentétben nem lealázni akarlak vagy flamelni, de nézzük már meg reálisan a lehetőségeket... persze, ha tévednék, akkor én lennék a legboldogabb, mert még jobban tudnám nyomni a Zorp-ot. De a Balabites fejlesztők remélem majd kiigazítanak, ha hülyeséget írok
Pásztor Lénárd Zoltán wrote:
Eloszor keves volt a thread, ezt --threads kapcsoloval megoldottam, de most mar nem mond semmit, csak beall... :(
Kb hany thread-ed van, amikor beall? Van egy hasonlo ismert bug, ami akkor jon elo, ha nem tud uj thread-et inditani valamilyen eroforras elfogyasa eseten. Ez jelenleg azert szokott elofordulni, mert stack meret a default 2MB-os mereten marad, ami miatt az address space-t eleg hamar kitomi. Probald meg, hogy a zorpctl kiadasa elott egy ulimit -s 256 paranccsal kisebbre veszed a default stack meretet. Ha ez nem segit, akkor majd az uj libzorpll verziot kellene kiprobalni, ami hamarosan elerheto lesz. (elvileg a test agban a 3.0.6.5.1-es verzio mar tartalmazza is a javitast) MCS
Major Csaba wrote:
Kb hany thread-ed van, amikor beall? Van egy hasonlo ismert bug, ami akkor jon elo, ha nem tud uj thread-et inditani valamilyen eroforras elfogyasa eseten. Ez jelenleg azert szokott elofordulni, mert stack meret a
Ja, es ha zorp-os-t hasznalsz, akkor ne emeld a thread limitet ~1024 fole! MCS
On Wed, Apr 12, 2006 at 09:17:45AM +0200, Major Csaba wrote:
Ja, es ha zorp-os-t hasznalsz, akkor ne emeld a thread limitet ~1024 fole!
Mi az oka? Es miert csak zorp-os-re vonatkozik ez? -- Udvozlettel Zsiga
On Wed, 2006-04-12 at 09:52 +0200, Kosa Attila wrote:
On Wed, Apr 12, 2006 at 09:17:45AM +0200, Major Csaba wrote:
Ja, es ha zorp-os-t hasznalsz, akkor ne emeld a thread limitet ~1024 fole!
Mi az oka? Es miert csak zorp-os-re vonatkozik ez?
glibc limit, 2.2.5-ig bezarolag. 2.6-os kernellel, 2.3-as libc-vel, mar lehet emelni, 256k-s stacklimittel kb 4000-ig. ha ennel tobb kell, akkor szet kell vagni a forgalmat tobb peldanyra, vagy 64 bites procit kell alatolni. -- Bazsi
On Wed, Apr 12, 2006 at 10:47:53AM +0200, Balazs Scheidler wrote:
On Wed, 2006-04-12 at 09:52 +0200, Kosa Attila wrote:
On Wed, Apr 12, 2006 at 09:17:45AM +0200, Major Csaba wrote:
Ja, es ha zorp-os-t hasznalsz, akkor ne emeld a thread limitet ~1024 fole!
Mi az oka? Es miert csak zorp-os-re vonatkozik ez?
glibc limit, 2.2.5-ig bezarolag. 2.6-os kernellel, 2.3-as libc-vel, mar lehet emelni, 256k-s stacklimittel kb 4000-ig.
ha ennel tobb kell, akkor szet kell vagni a forgalmat tobb peldanyra, vagy 64 bites procit kell alatolni.
Koszi a magyarazatot! -- Udvozlettel Zsiga
hi, mivel megoldottad a kérdéskört, a listát böngészve és konzultálva, most már nem neveznélek kezdőnek :) És talán már a python doksit is megbecsülöd :) A teszteknél, ha gondolod próbáld ki a siege-t. Lokális hálón tuti meg tudod küldeni kapcsolatokkal :) üdv, Ago
Sikerult megoldanom, rendben, megfeleloen mukodik. Mivel kezdo vagyok meg zorpban ezert meg par kerdest szeretnem, ha segitenetek tisztazni.
On Wed, 2006-04-05 at 20:59 +0200, Pásztor Lénárd Zoltán wrote:
Sziasztok!
Sikerult megoldanom, rendben, megfeleloen mukodik. Mivel kezdo vagyok meg zorpban ezert meg par kerdest szeretnem, ha segitenetek tisztazni.
1. Stabilitas Az eddigi teszteken gond nelkul mukodott, nem hasalt el, stb. Van ra mod, hogy valamilyen informaciot nyerjek a zorp allapotarol? Hogyan tudom 'monitorozni'? (az atmeno forgalom tesztelesen kivul)
zorpctl status esetleg "zorpctl szig" Elszallaskor a Zorp kuld a logba egy "Signal" kezdetu logsort es egy nagy backtrace-t, a core fileokat pedig a /var/run/zorp ala gyujti, bar ezt kulon be kell kapcsolni. a zorpctl ujrainditja a Zorpot ilyen esetben, es hacsak nem deadlock tortenik altalaban "eszrevetlenul" megoldodik az elszallas.
2. Teljesitmeny Hol talalok informaciot arrol, hogyan lehet a zorpot finomhangolni. Milyen parameterekkel celszeru tuningolni, milyen szempontok szerint celszeru tuningolni?
altalaban limiteket erhetsz el, amiket a Zorp most mar megprobal viszonylag intelligensen beallitani (processz limit, fd limit stb) illetve figyelni kell, hogy a stack meret ne legyen tul nagy, mert amiatt a Zorp kifuthat az address space-bol. (a stack meret beallitasa ZorpOS 3.0-n egeszen 2 hettel ezelottig nem mukodott, csak sarge-on, ami miatt 2MB-os lett minden szalhoz tartozo stack) a stack meretet ellenorizni a /proc/<pid>/maps-ban lehet. Ezen kivul a --threads opcio szamit meg, nagyjabol annyi kapcsolatod lehet, amekkora szam itt meg van adva.
3. Tovabbi szolgaltatasok Hol talalok leirast arrol, hogy milyen belso hivasai vannak a zorpnak es ezek hogyan mukodnek, milyen parametereik vannak, stb?
Az /usr/share/zorp/pylib/Zorp alatt megtalalod, hogy milyen osztalyokbol epitkezik a Zorp, meg az internal osztalyok nagyresze is dokumentalt, bar teny, hogy a proxyk dokumentaltsagara figyelunk legjobban. -- Bazsi
participants (7)
-
Balazs Scheidler
-
Deim Agoston
-
Deim Ágoston
-
Hegedüs Ervin
-
Kosa Attila
-
Major Csaba
-
Pásztor Lénárd Zoltán