Michele Codutti wrote: >> E' vero, non si puo', ne' esistono piani per renderlo possibile. Il >> motivo sostanziale e' che per fare qualcosa del genere, occorrerebbe >> comunque aspettare che tutte le connessioni attive su quelle interfacce >> siano chiuse, o forzarne la chiusura, il che equivale ad aspettare che >> il server sia scarico (e quindi un riavvio non comporta problemi) oppure >> a forzarlo. > Ok, questi problemi però si hanno solo nel caso di rimozione di un > socket ma per aggiungerne uno non ci dovrebbero essere problemi. > Sbaglio?
Vero. A questo punto, l'unica obiezione e' che se usi -u, a server attivo non puoi fare bind(2) su porte privilegiate (tipo 389 o 636). Per il resto, aprire un nuovo listener "dovrebbe" essere possibile, anche se, per come la struttura del listener e' fatta, non si tratta di una modifica banale. >>> mentre non sono sicuro che si possa fare il cambio di ruolo >>> per syncrepl. >>> Qualcuno può darmi qualche informazione in più? >> Questo in teoria si puo' fare (e' uno dei motivi per i quali back-config >> e' nato). In pratica, credo che dipenda da quanto incasinata e' la tua >> configurazione, per cui non garantisco al 100% che funzioni in ogni >> circostanza. E comunque se ci sono problemi e' piu' probabile che >> compaiano con la 2.3.30 che con versioni piu' recenti (al momento: >> 2.3.40/2.4.7). > C'è un vademecum con il passi consigliati da fare? Il caso che mi > preoccupa e sul quale non riesco a trovare una soluzione soddisfacente è > quello in cui ho il producer in fail e voglio trasformare il/un consumer > in producer. Considerando il fatto che se il producer è in fail voglio > solo terminare il servizio. Il vero problema sono i passi (ovvero ldif > da utilizzare con ldapmodify) per trasformare il producer in consumer. E' conveniente avere l'overlay syncprov (che caratterizza il producer) su tutti i server, anche i consumer. A questo punto, per promuovere il consumer a producer occorre rimuovere la linea "syncrepl"; per degradare un producer a consumer occorre aggiungere la linear "syncrepl". La cosa piu' importante e' che tutti i consumer devono comunque essere modificati se la loro linea "syncrepl" contiene il producer originale; occorre infatti farvi comparire il nuovo producer. In alternativa, si puo' avere una configurazione in cui tutti i server (tranne se stessi), indipendentemente dall'essere producer o consumer, sono listati nelle linee "syncrepl" nel campo "producer", in modo che se il producer corrente cessa di funzionare, provino a contattare il successivo finche' uno risponde. Per un consumer, il fatto di alimentarsi dal producer o da un altro consumer in cascata non fa grande differenza, se non che le replicazioni in genere subiscono un ritardo aggiuntivo che in genere e' trascurabile, e solo in caso di modifiche massive puo' risultare apprezzabile. Ad esempio, se hai "server0", "server1", "server2", e normalmente il producer e' "server0", configurerai: # server0, producer: # syncrepl provider="ldap://server1 ldap://server2" overlay syncprov # server1, consumer: syncrepl provider="ldap://server0 ldap://server2" overlay syncprov # server2, consumer: syncrepl provider="ldap://server0 ldap://server1" overlay syncprov Se succede un problema a "server0", e vuoi promuovere "server2" a producer, avrai: # server0, producer declassato a consumer per quando riparte: syncrepl provider="ldap://server1 ldap://server2" overlay syncprov # server1, consumer: syncrepl provider="ldap://server0 ldap://server2" overlay syncprov # server2, consumer promosso a producer: # syncrepl provider="ldap://server0 ldap://server1" overlay syncprov Spero che sia chiaro. Ciao, p. Ing. Pierangelo Masarati OpenLDAP Core Team SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it --------------------------------------- Office: +39 02 23998309 Mobile: +39 333 4963172 Email: [EMAIL PROTECTED] ---------------------------------------
_______________________________________________ OpenLDAP mailing list OpenLDAP@sys-net.it https://www.sys-net.it/mailman/listinfo/openldap