|
[ Dr:Lun @ 31.08.2004. 21:35 ] @
| Pozdrav!
Interesuje me koliko ljudi sa ovog foruma poznaje C i C++ programske jezike, mrezno programiranje i programiranje sa medjuprocesnom komunikacijom (i zainteresovano je za rad na jednom OpenSource projektu)?
Konkretnije, u pitanju je pisanje daemon-a, koji bi preko kriptovanih XML poruka komunicirao preko mreze sa klijentom.
Takodje, koliko vas ima poznavanje GTK i QT biblioteka?
Projekat bi moralo da podrzi 10-ak kvalitetnih (iskusnih programera i poznavaoca Linux OS-a) ljudi.
Pozdrav! |
[ random @ 31.08.2004. 22:23 ] @
Naravno, sve to možeš da radiš i od nule, ali skrenuo bih ti pažnju da takvi daemoni već postoje, i čak razvijen protokol (XMPP) za klijent-server razmenu XML poruka.
Od GPL XMPP daemona možda bi ti najviše odgovarao jabberd2, pošto je pisan u C-u. SSL/TLS enkripcija je podržana, što ti, koliko razumem treba.
Imaš i dosta već gotovih biblioteka za razne jezike koje bi olakšale razvoj klijenta.
[ Goran Rakić @ 31.08.2004. 22:24 ] @
a da ponesto kazes i o projektu..
tj. sta je klijent, cemu to moze da sluzi itd. Kakve veze imaju QT i GTK sa tim? Pises daemon GUI?
[ Dr:Lun @ 01.09.2004. 10:39 ] @
Pozdrav!
Gorane, random - u pravu ste. Nisam dao dovoljno informacija.
Nije u pitanju neki sistem za razmenu poruka izmedju korisnika (tipa ICQ, MSN...).
U pitanju je softver za kontrolu i konfigurisanje Linux sistem tj. distribucije. Dakle daemon koji prima instrukcije u XML formatu. Npr.:
Code:
<instruction>
<startup>
<service>rc.httpd</service>
<runlevel>3</runlevel>
<action>disable</action>
</startup>
</instruction>
Medjuprocesna komunikacija: jos jedan daemon na istom sistemu, sa kojim moze da se komunicira preko web browsera a on dalje instrukcije prenosi prvom daemonu.
GUI programiranje (GTK i QT): klijenti za razgovor sa daemon-om (dakle, preko XML poruka).
Takodje, moguce je da se napise i neki modul za KDE-ov Control Center.
Nadam se da sam malo pojasnio o cemu je rec. Poruke tipa da slicne stvari vec postoje (npr. Webmin) su suvisne jer postoji mnogo detalja o ovom softveru koje nisam ovde hteo da iznosim dok ne vidim da li postoje ljudi da se ovako nesto realizuje.
Citat: random: Naravno, sve to možeš da radiš i od nule, ali skrenuo bih ti pažnju da takvi daemoni već postoje, i čak razvijen protokol (XMPP) za klijent-server razmenu XML poruka.
Od GPL XMPP daemona možda bi ti najviše odgovarao jabberd2, pošto je pisan u C-u. SSL/TLS enkripcija je podržana, što ti, koliko razumem treba.
Imaš i dosta već gotovih biblioteka za razne jezike koje bi olakšale razvoj klijenta.
random, ne mislim na tvoju poruku i poruke tog tipa, (sve argumentoavne korekcije su dobrodosle) ali zelim da izbegnem ljude sa ovog foruma sa minimalnim znanjem i maksimalnom zeljom da ponidastavaju sve sto ne razumeju. Na zalost, na ES-u vidim sve veci broj takvih ljudi.
Pozdrav,
Lun
[ stalker @ 01.09.2004. 11:09 ] @
Mene ne interesuje ni gtk ni qt, ali znam da u takvim velikim projektima uvek ima onih malih dosadnih stvari koje smaraju, a koje sam npr. voljan da odradim. Tako da, mogu da pomognem sa nekim misc.cpp-om ili nekom(im) objektima,klasama...ali videcemo
[ caboom @ 01.09.2004. 14:04 ] @
Citat: Dr:Lun: Pozdrav!
Gorane, random - u pravu ste. Nisam dao dovoljno informacija.
Nije u pitanju neki sistem za razmenu poruka izmedju korisnika (tipa ICQ, MSN...).
U pitanju je softver za kontrolu i konfigurisanje Linux sistem tj. distribucije. Dakle daemon koji prima instrukcije u XML formatu. Npr.:
Code:
<instruction>
<startup>
<service>rc.httpd</service>
<runlevel>3</runlevel>
<action>disable</action>
</startup>
</instruction>
Medjuprocesna komunikacija: jos jedan daemon na istom sistemu, sa kojim moze da se komunicira preko web browsera a on dalje instrukcije prenosi prvom daemonu.
apsolutno mi nije jasno zasto ne koristis neki od vec standardizovanih protokola tipa xml-rpc-a ili soap-a? mislim da razvijanjem posebnog protokola i pisanjem nepotrebnih biblioteka nepotrebno komplikujes celu stvar i povecavas mogucnost greske i bagova... just my $0.02.
[ random @ 01.09.2004. 14:30 ] @
Citat: Dr:Lun:
Nije u pitanju neki sistem za razmenu poruka izmedju korisnika (tipa ICQ, MSN...).
Verovao ili ne, otprilike sam te dobro shvatio i iz prve, i nisam ni mislio da hoćeš da praviš IM sistem. XMPP je generički protokol, možeš da ga koristiš za bilo šta. To što ga Jabber projekat koristi za razmenu tekst poruka između korisnika, ne ograničava njegovu mogućnost primene u druge svrhe. Naravno, ako ti je potreban jednostavniji, "stateless" IPC, pored XMPP-a imaš i XML-RPC kao što caboom reče, ili SOAP, ili OPML (svi su bazirani na XML-u).
Poenta je da te stvari nisu topla voda, i uštedećeš mnogo posla ako se malo raspitaš.
[ Dr:Lun @ 01.09.2004. 15:12 ] @
random, caboom, stalker - tu smo, diskutujemo :)
Cilj i jeste da ljudi koji bi to radili iznesu svoja misljenja, odluce se koje ce tehnologije (i kako) biti koriscene, a zatim realizuju sve to. Dakle, ko je (stvarno) zainteresovan neka se pojavi u ovoj diskusiji, pa, ako se dogovorimo, da pocnemo sa radom.
Uzgred, koliko ste upoznati sa BSD i SystemV rc organizacijom? Imate li tu neke predloge?
Pozdrav,
Lun
[ Dr:Lun @ 01.09.2004. 15:21 ] @
Takodje, evo i konkretnih stvari koje bi navedeni softver trebalo da omoguci:
- konfiguracija podizanja sistema (rc.skript/runlevel)
- kontrola procesa (start/stop/restart)
- administracija softverskih paketa (install/upgrade/remove)
- automatizovano azuriranje softverskih paketa
- podrska za module koji bi omogucili konfigurisanje odredjenog softvera (npr. apache, samba...)
- mogucnost konfigurisanja kernela (sa instalacijom image-a)
kao i
- mogucnost pravljenja conf. klasa racunara
- centralizovana administracija veceg broja racunara
Moj predlog je da se softver radi na Slackware-u iz razloga sto je Slackware relativno jednostavan distro, bez slicnih alata (i mogucnosti za konflikt).
(Mozda neko raspolozen za razmatranje nove distribucije? :))
[ random @ 01.09.2004. 19:35 ] @
Btw, kako bi se taj softver mogao uporediti sa postojećim softverom slične namene (recimo sa Webmin projektom?). Koje bi bile značajne prednosti?
[ Dr:Lun @ 01.09.2004. 20:17 ] @
Jel podrzava Webmin administraciju veceg broja racunara odjednom? Nisam mnogo koristio Webmin ali mi se cini da to nije mogucnost ovog softvera.
[ Goran Rakić @ 01.09.2004. 23:45 ] @
verujem da ti je sada jasno da obavezno treba koristiti standardizovan protokol, makar zarad toga da programer XYZ moze da se lakse prikljuci razvoju itd.
Ono sto me jos uvek buni jeste sto ne vidim sta je to sto upotreba gore opisanog sistema moze da obezbedi? Jos jedan nacin za automatsku remote administraciju koja ce biti ili prekomplikovana ili previse ogranicena za bilo koji ozbiljniji setup. Isuvise je stvari koje bi sistem trebao da zna da odradi, a bilo koja rucna promena bi se automatski odrazila na prekid rada ovog programa na masini gde se izmena dogodila. Dodatno, postoje manje ili vise slicne stvari, a i sam problem svakako treba posmatrati od daemon-a koji se nalazi na remote hostu i koji prima komande. To kako ce on da ih primi i da li ce klijent da ima GUI pomocu QT ili GTK biblioteke je apsolutno svejedno, ono o cemu na pocetku treba razmisljati jeste kako ce daemon da obradi komandu. Ja do sada sam retko vidjao setup u kome je sve bas tako izravnano da to moze da se uradi sa next, next, finish. (Naravno, govorimo o setup-u mreze sa vise od 10 kompjutera jer jedino tada sistem ima smisla).
Alternativno, mozda sistem ne treba posmatrati kao interfejs za remote install (za sta postoje mnogo bolji alati pocev od shell skripti u koju se ubace paketi koje treba instalirati pa do dd-a ili RedHat-ovog scripting jezika za Anaconda setup) vec kao resenje za remote administraciju. Opet, shell skripta koja izvrsava komandu preko SSH na svim kompjuterima u mrezi je nesto sto ce svaki administrator pre koristiti (i pre se na to osloniti) od nekakvog next, next, finish kroz GTK GUI koji salje XML komande daemon-u na host-u koji odradjuje posao itd.
[ Dr:Lun @ 02.09.2004. 13:51 ] @
Pozdrav!
Ovaj daemon bi trebalo da ima standardizovanu podlogu da bi mogao normalno da radi. Neke rucne izmene bi mogle da ga u tome onemoguce.
Ipak, mislim da polako prolazi vreme rucnog editovanja conf fajlova, cak i za linux. Ovaj daemon bi mogao da se shvati kao sloj izmedju korisnika i conf skripti. Moguce klijente mozemo da izuzmemo privremeno iz diskusije.
Relativno stabilan rc. sistem i administracija paketa su stvari kod kojih ovaj softver ima smisla.
Takodje, radio sam kao administrator veceg broja racunara. Jednostavni upgrade paketa ili iskljucivanje servisa, koji oduzima recimo 10 minuta po masini moze da se pretvori u puno radno vreme na 50 racunara.
U ovakvoj situaciji, pomenuti softver ima smisla.
Cak i da treba uraditi potpuno novu distribuciju koja bi podrzala ovakav sistem administracije, mislim da ima opet smisla.
Nema smisla? :)
[ Dr:Lun @ 02.09.2004. 13:54 ] @
Uzgred, u potpunosti se slazem da se iskoristi sto veci broj gotovih i standardnih resenja. Brzi razvoj, standardnije resenje, mogucnost prebacivanja krivice :)
A, primarni cilj uopste nije remote administracija vec lokalna. Remote je baksis i podloga za konfigurisanje veceg broja racunara odjednom.
Pozdrav,
Lun
[ flylord @ 02.09.2004. 14:09 ] @
Vec te ke Goran pitao, ali sta je prednost ovog tvog sistema u odnosu na postojece? Webmin, Yast, LinuxConf, koji svi dobro rade, i svi mogu da administriraju remote masinu (ne znam za Yasy) ...
Ja volim da koristim webmin, ali je meni isuvise komplikovan za dodavanje novih mogucnosti, pogotovo sto ne znam dobro perl...
Ajde uporedi tvoj sistem sa webminom i sa yastom
poz
[ leka @ 02.09.2004. 15:25 ] @
Lun, ako se odluka da se koristi GTK ili QT moze promeniti na to da se koristi FLTK v2.0 ja sam raspolozen za ucestvovanje na projektu. Ako nema nista od FLTK-a, onda nema nista ni od moje pomoci. Nemam ni volje ni vremena da ucim gorespomenute stvari. GTK bih voleo da znam, QT me nikada nije interesovao niti ce me interesovati - gledam svaki dan QT aplikacije koje uzimaju brdo resursa za jako proste stvari... GTK je naravno druga prica... :)
P.S. Ideja mi se jako svidja, jer sam od onih koji bi vise voleli da imaju pult (koji je u obliku native aplikacije) za administraciju/monitoring udaljenih masina.
[ flylord @ 02.09.2004. 15:57 ] @
Mozda je bolje da se pise aplikacija u nekom jeziku (c/c++ ...) ali da bude konzolna, a da se graficki interface odvoji od nje. U tom slucaju se dobija aplikacija koja je dobra za skriptovanje (ja ne vidim smisao ove aplikacije ako ja ne mogu da napisem neki skript koji mogu da stavim u cron/at ...) a usput postoji neki GUI (ne bitno u kojoj biblioteci, ali je definitivno bolje FLTK zbog brzine ako nista)
I inace ovakav tip aplikacija vec postoji: IBM Tivoli, Novel ZENWorks ...
[ vladab @ 02.09.2004. 19:01 ] @
Ja nisam bas neki programer. C znam sa faxa, ali imam entuzijazam i zelju da naucim jos, pa ako vam treba takav, tu sam. Linux i administraciju istog poznajem solidno (naravno da nisam guru), pa to moze da mi bude plus. :o) Inace, imam iskustva u pascalu i vise u Delphiju, pa se nadam da mi ne treba puno da se usemim sa c/c++.
[ Dr:Lun @ 04.09.2004. 12:54 ] @
Citat: flylord: Vec te ke Goran pitao, ali sta je prednost ovog tvog sistema u odnosu na postojece? Webmin, Yast, LinuxConf, koji svi dobro rade, i svi mogu da administriraju remote masinu (ne znam za Yasy) ...
Ja volim da koristim webmin, ali je meni isuvise komplikovan za dodavanje novih mogucnosti, pogotovo sto ne znam dobro perl...
Ajde uporedi tvoj sistem sa webminom i sa yastom
poz Citat: Dr:Lun: Jel podrzava Webmin administraciju veceg broja racunara odjednom? Nisam mnogo koristio Webmin ali mi se cini da to nije mogucnost ovog softvera.
Citat: leka: Lun, ako se odluka da se koristi GTK ili QT moze promeniti na to da se koristi FLTK v2.0 ja sam raspolozen za ucestvovanje na projektu. Ako nema nista od FLTK-a, onda nema nista ni od moje pomoci. Nemam ni volje ni vremena da ucim gorespomenute stvari. GTK bih voleo da znam, QT me nikada nije interesovao niti ce me interesovati - gledam svaki dan QT aplikacije koje uzimaju brdo resursa za jako proste stvari... GTK je naravno druga prica... :)
P.S. Ideja mi se jako svidja, jer sam od onih koji bi vise voleli da imaju pult (koji je u obliku native aplikacije) za administraciju/monitoring udaljenih masina.
Slazem se da je GTK optimizovaniji od QT-a a takodje, nisam protiv FLTK-a. U principu, ako se dobro projektuje i organizuje daemon, klijenti mogu da budu pisani u bilo cemu pod bilo cim. Svako znanje je ovde upotrebljivo, a sto se klijenata tice, i MS alati dolaze u obzir :)
Za tebe Leko moze sve, tebe ne smemo da izgubimo iz ovog :)
Citat: flylord: Mozda je bolje da se pise aplikacija u nekom jeziku (c/c++ ...) ali da bude konzolna, a da se graficki interface odvoji od nje. U tom slucaju se dobija aplikacija koja je dobra za skriptovanje (ja ne vidim smisao ove aplikacije ako ja ne mogu da napisem neki skript koji mogu da stavim u cron/at ...) a usput postoji neki GUI (ne bitno u kojoj biblioteci, ali je definitivno bolje FLTK zbog brzine ako nista)
I inace ovakav tip aplikacija vec postoji: IBM Tivoli, Novel ZENWorks ...
Jesi li procitao prve postove? Daemon moze stalno da bude aktivan sa opcijom "na svakih pola sata se povezi na conf. server i prilagodi se, upgrade-uj pakete...".
Imas li iskustva sa aplikacijama koje si pomenuo?
Konzolni klijent (recimo sa ncurses) je sasvim prihvatljiv (dobro bre, valjda ja ovde koristim Slackware :))
Citat: vladab: Ja nisam bas neki programer. C znam sa faxa, ali imam entuzijazam i zelju da naucim jos, pa ako vam treba takav, tu sam. Linux i administraciju istog poznajem solidno (naravno da nisam guru), pa to moze da mi bude plus. :o) Inace, imam iskustva u pascalu i vise u Delphiju, pa se nadam da mi ne treba puno da se usemim sa c/c++.
Ostani sa nama do kraja ovog posta, dok se ne dogovorimo ili raspadnemo :)
[ caiser @ 04.09.2004. 14:20 ] @
Pogledajte SoL linux distibuciju. Konfiguracija sistema se radi preko XML skripti, mozda dodjete do neke ideje. :)
http://www.sol-linux.com/Private/Documentation/SoLXMLboot
[ Tigerheart @ 07.09.2004. 17:10 ] @
Trebalo bi takodje razmisliti o podrski programa za X.500 protokol, tacnije za LDAP .... (recimo OpenLDAP), mozda cak napraviti dve verzije aplikacije, client i server varijanta ..??
Primer:
http://hosting.eunet.yu/cms/view.php?id=1081 (SuSE Linux OpenExchange Server)
Info o LDAP-u ...
LDAP (Lightweight Directory Access Protocol) je protokol i specifikacija opisana u brojnim RFC-ovima (Request For Comments). Postoji nekoliko servera od kojih su najpoznatiji LDAP server Michigan Univerziteta i OpenLDAP. Ovaj tekst će se baviti OpenLDAP implementacijom. Protokol postoji u verziji 2 i 3, a sistem koji sam koristio je stariji openldap-1.2.9-5 preinstaliran na Red Hat 6.2 računaru. Ukoliko ga nemate već instaliranog, možete ga preuzeti sa OpenLDAP Web sajta.
LDAP se zasniva na strukturi baza podataka u obliku stabla, dakle nešto različito od relacionih baza (MySQL, Oracle) kakve uglavnom koristimo. Nema ničega sličnog transakcijama, svaka promena je trajna. Predstavlja otvoreni standard razvijen po ugledu na X.500 i koristi TCP/IP stack umesto OSI-a. Između ostalog, Microsoftov Active Directory se zasniva na LDAP-u. Directory je baza podataka organizovana u obliku strukture drveta optimizovana za veoma brz pristup informacijama. Svaki deo drveta (entry) sadrži odgovarajuće atribute i poseduje jedinstveni dn (distinguished name) koje se sastoji od rdn-ova (relative distinuished name). Koji atributi moraju biti prisutni, a koji su dozvoljeni, određeno je klasom objekta (objectclass) što predstavlja šemu. Primer dn-a je cn=Manager,dc=mire,dc=net. Možete napraviti analogiju dn-a i primarnih ključeva kod relacionih baza podataka.
Postoji opcija replikacije, finog podešavanja prava pristupa i korišćenje kriptovanja (SSL) pri prenosu informacija. LDAP server može poslati referencu ukoliko ne sadrži odgovarajuće informacije, što daje klijentu drugu adresu za upit. Ukoliko deo upita ne može biti uslužen sa tekućeg servera, klijentu se šalje referenca koja ga upućuje na drugi server.
Postoje mnoge primene LDAP-a. Može da čuva sadržaje korisničkih naloga, grupa ( www.padl.com), mail aliasa, DNS slogove, adresare, Netscape roaming profile, sertifikate, binarne podatke i drugo. Pritom, LDAP podršku imaju Qmail, Sendmail i Samba, kao i neki drugi softver. Web sajtovi ga koriste za autorizaciju korisnika, pretraživanje (npr. projekat baze hotela) i slično.
Od vizualnih alata Netscape browser u verziji 4.70 bi trebalo da ima podršku za LDAP. U svakom slučaju, nećete pogrešiti ako uzmete GQ (GNOME program).
Link:
http://www.openldap.org
[ caboom @ 08.09.2004. 10:40 ] @
SuSE open exchange je shit decenije... openldap je so-so na do 100K record-a, ako nekome treba vise morace da se snalazi, ili da plati. hepi heking...
[ neetzach @ 09.09.2004. 10:53 ] @
Usput, pogledaj Sun Control Station, mozda dobijes i neke ideje...
[ Dr:Lun @ 09.09.2004. 21:55 ] @
Citat: neetzach: Usput, pogledaj Sun Control Station, mozda dobijes i neke ideje...
neetzach, hvala na linku. Da, tog tipa nesto, s tim da Sun u poslednje vreme ne mirisem bas nesto zbog poprilicno ********* politike koju vode :)
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|