Sziasztok!
Tanácsot szeretnék kérni, hogy a következő dolgot ki hogyan oldaná meg.
Adott 30db szerver, 30 külön helyen. Tételezzük fel, hogy az internet kapcsolatban nem bízunk, tehát a vpn mint olyan kilőhető.
Mind a 30 szerver 1-1 samba domaint szolgálna ki, de most jön a csavar.
Mindezt úgy szeretném megoldani, hogy egy központi LDAP szerverben legyen az összes felhasználó és a "kis szerverek" csak szinkronizálják le az ldapot adott időközönként pl.
Valami ilyesmi lenne a struktúra:
[root]
|
---dc=egyes,dc=ceg,dc=hu
|
---dc=kettes,dc=ceg,dc=hu
A példában említett ágak közül az egyes szerverre kellene syncelni az egyes ágat, de csakis azt, a kettes szerverre a "kettes" ágat.
Van valakinek erre valami jó ötlete? Vagy már kész program, akármi.
Vagy ezt az egész bohóckodást nekem kell valami perl/php/bármi megoldással megcsinálni?
Előre is köszi!
Üdv.
- 8852 megtekintés
Hozzászólások
Nem kell semmit bohóckodnod, az LDAP erre jó, nagyjából ezért van létjogosultsága, hogy lehessen orrba-szájba replikálni...
Tanulmányozd a syncrepl replikációt:
http://www.openldap.org/doc/admin23/syncrepl.html
A lényeg, hogy van a master szervered, ezt beállítod, mint syncrepl provider:
index objectclass,entryCSN,entryUUID eq
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
ehhez ennyi kell, a consumer (tehát a "kis" szerverek) pedig a syncrepl=... (elég sok paramétere van) beállítással mehetnek, a searchbase pedig lehet dc=egyes,dc=xxx, másik szerveren dc=kettes,dc=xxx
Hogy még biztonságos is legyen, létrehozhatsz minden kis szervernek egy-egy replicator dn-t, pl. cn=replicator,dc=egyes,dc=xxx cn=replicator,dc=kettes,dc=xxx, az ACL-eket úgy állítod be, hogy ez a replicator user csak a saját fáját tudja lekeresni, az "egyes" szerveren pedig a syncrepl opcióiba binddn="cn=replicator,dc=egyes,dc=xxx", a "kettesen" binddn="cn=replicator,dc=kettes,dc=xxx", stb.
- A hozzászóláshoz be kell jelentkezni
Thx, pont ezt kerestem, csak még nem álltam neki az ldap manualt átolvasni.
(kényelmesebb út kivételesen :))
Köszi még 1x!
- A hozzászóláshoz be kell jelentkezni
Szia!
Kicsit régi ugyan a hozzászólás, de nagyjából hasonló problémám van nekem is. Mindösszesen 2 szervert szeretnék szinkronizálni, de nem sikerül:
Master-en hozzáadva:
moduleload syncprov
index objectclass,entryCSN,entryUUID eq
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
Slave-en:
syncrepl rid=1
provider=ldap://192.168.1.3
type=refreshAndPersist
scope=sub
searchbase=”dc=example,dc=com”
filter=”(objectClass=*)”
attrs="*"
schemachecking=off
bindmethod=simple
binddn=”cn=admin,dc=example,dc=com”
credentials=Password
updateref ldap://192.168.1.3
Master rendben elindul, slave viszont:
Error: Malformed "syncrepl" line in slapd config file, missing provider searchbase.
Sajnos a google segítségével nem jutok semmire, ha valakinek van működő megoldása vagy ötlete szívesen látom.
- A hozzászóláshoz be kell jelentkezni
Csak magamnak, a megoldás:
syncrepl rid=1
provider=ldap://192.168.1.3
binddn=”cn=replicator,dc=example,dc=com”
credentials=Password
type=refreshAndPersist
scope=sub
searchbase=”dc=example,dc=com”
filter=”(objectClass=*)”
attrs="*"
schemachecking=off
bindmethod=simple
overlay syncprov
Az updateref sor kimarad és szükséges egy replicator felhasználó, mert a leírások szerint az admin userrel nem megy...
Most működik.
- A hozzászóláshoz be kell jelentkezni
tudom banális kérdés, de hogy hozod létre a replicator felhasználót?
nálunk van egy openldap szerver ami rootdn="cd=admin,....." alatt fut, ez a provider.
és van egy customer szerver ami rootdn="cn=replicator,..." alatt fut. ez így nem okés. :(
--
\\-- blog --//
- A hozzászóláshoz be kell jelentkezni
öööö sztornó, megoldottam :D
--
\\-- blog --//
- A hozzászóláshoz be kell jelentkezni
Még valami, mielőtt nagyon megszopatod magad. A replikálós userre kapcsold ki a limiteket, különben végtelen ciklusban újra és újra fog replikálni Te meg vered a fejed a falba.
- A hozzászóláshoz be kell jelentkezni
Ezt el tudod mondani hogyan tudom megtenni? (És ha esetleg azt is, hogy miről is van szó tulajdonképpen, nagyon megköszönném)
- A hozzászóláshoz be kell jelentkezni
Elmélet: ha van 501 db replikálandó entryd viszont meg van mondva hogy a maximálisan visszaadható bejegyzések száma 500, akkor a végtelenségig fog pörögni a replikáció, hiszen soha sem tudja befejezni a tranzakciót.
OpenLDAP-ban:
limits dn.exact="cn=repl,dc=encegem,dc=hu" time.soft=unlimited time.hard=unlimited size.soft=unlimited size.hard=unlimited
- A hozzászóláshoz be kell jelentkezni
Én csak kóstolgatom az LDAP-ot, úgyhogy inkább kérdezek, mint állítok: A lekérdezéseknél, ha be van állítva az 500-as limit, az első lekérdezésnél megkapok max. 500 rekordot, ha van még, a következő lekérdezésnél kapom a többit, szintén 500-anként. Nem tudom, ez a replikációnál hogyan működik...
- A hozzászóláshoz be kell jelentkezni
koszi - en is epp ezt tanulmanyoztam.....
- A hozzászóláshoz be kell jelentkezni
Még egy nagy kérdés maradt azért :)
Ha mindezt én arra akarom használni h. egy Samba DOMAIN paramétereit és felhasználóit tároljam, akkor a replikának írhatónak kellene lennie és valamilyen úton módon visszafelé is kellene működjön a szinkronizálás (pl. LastLogin attribútumot a távoli Samba server a távoli Ldap szerveren fogja írni is...)
Erre valami ötlet esetleg?
Vagy én néztem el és a syncrepl erre is jó?
- A hozzászóláshoz be kell jelentkezni
Te multimaster replikát szeretnél szerintem. :) Avagy mirrormode.
- A hozzászóláshoz be kell jelentkezni
Es az hogy muxik openldap-pal? Marmint a multimaster
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Pl. így:
serverID 999
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/samba.schema
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/ppolicy.schemamodulepath /usr/lib/ldap
moduleload back_bdb
moduleload syncprov
moduleload valsortpidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
logfile /var/log/slapd.logloglevel 0
backend bdb
database bdb
suffix "dc=ceg,dc=hu"
rootdn "cn=admin,dc=ceg,dc=hu"
directory /var/lib/ldap
lastmod oncheckpoint 512 30
index default pres,eq,sub
access to attrs=userPassword
by dn="cn=replicator,dc=ceg,dc=hu" write
by anonymous auth
by self write
by * noneaccess to dn.base=""
by * readaccess to *
by dn="cn=replicator,dc=ceg,dc=hu" write
by * readoverlay valsort
valsort-attr uid ou=People,dc=ceg,dc=hu alpha-ascendoverlay syncprov
syncprov-checkpoint 2 60
syncprov-sessionlog 1000syncrepl rid=001
provider=ldap://172.16.1.254
bindmethod=simple
binddn="cn=replicator,dc=ceg,dc=hu"
credentials=TITKOS JELSZO
searchbase="ou=FTP,dc=ceg,dc=hu"
schemachecking=on
type=refreshAndPersist
retry="60 +"syncrepl rid=999
provider=ldap://127.0.0.1
bindmethod=simple
binddn="cn=replicator,dc=ceg,dc=hu"
credentials=TITKOS JELSZO
searchbase="ou=FTP,dc=ceg,dc=hu"
schemachecking=on
type=refreshAndPersist
retry="60 +"mirrormode on
A serverid-t változtatod, mert mindegyik gépen ua. a konfig...
Több gépet is felvehetsz... természetesen más és más rid-del...
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
Cool. Minden gepen onmagat is fel kell venni?
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Talán ez segít; LDAP replika típusokról beszél ezen a SambaWiki site-on ...
- A hozzászóláshoz be kell jelentkezni
igen
http://www.openldap.org/doc/admin24/replication.html#MirrorMode%20repli…
ÉS FONTOS, HOGY SZINKRONBAN LEGYENEK AZ ÓRÁK !!!
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
ntp szerver altalaban nalam meg a demokornyezetekben is van...
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Sziasztok!
A fenti szálat szeretném folytatni!
A problémám jóval egyszerűbb, mint a téma indítóé:
Adott egy működő OpenLDAP szerver, aminek a teljes fáját szeretném replikálni egy másik szerverre:
A masteren be van lőve a fent leírt:
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
A slaven pedig a
rootdn=”cn=admin,dc=example,dc=com”
syncrepl rid=123
provider=ldap://192.168.10.250
binddn=”cn=replicator,dc=example,dc=com”
credentials=Password
type=refreshAndPersist
scope=sub
searchbase=”dc=example,dc=com”
schemachecking=off
bindmethod=simple
overlay syncprov
A masterrel nem hinném, hogy gond lenne, mert korábban már replikáltam róla, ment simán.
A slave hibaüzenet nélkül elindul, de az
id ldapuser
szerint nincs ilyen felhasználó. Tehát nem csinálja meg a replikációt.
Mit kellene még megnéznem, ellenőriznem?
A logokban nem találok semmit (de lehet, hogy csak nem tudom mire figyeljek:-( )
- A hozzászóláshoz be kell jelentkezni
h(UP)!
Valaki?
- A hozzászóláshoz be kell jelentkezni
van az a loglevel, aminél már árulkodik, hogy mi a baja.
Küldd el a konfokat, szívesen megnézem
- A hozzászóláshoz be kell jelentkezni
Március 4-én megkerestél privátban, és másnap elküldtem a konfokat. Lehet, hogy a spambe ment? Freemail-ről küldtem ui. :-)
Sebaj, jövő héten újra elküldöm!
Köszi addig is!
- A hozzászóláshoz be kell jelentkezni
bookmark
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni