LDAP (डेटाबेस, स्कीमा, कॉन्फ़िगरेशन) को अन्य मशीन पर कैसे स्थानांतरित करें


16

मैं Openldap 2.4.40 का उपयोग कर रहा हूं, और मुझे अपने मौजूदा ldap डेटाबेस, कॉन्फ़िगरेशन, और स्कीमा (मूल रूप से सब कुछ ldap सर्वर संबंधित) को एक नई मशीन पर स्थानांतरित करने की आवश्यकता है।

समस्या यह है, मैं अब पुराने slapd.conf फ़ाइल नहीं cn = config कॉन्फ़िगरेशन का उपयोग करता हूं।

Openldap और अन्य 3 पार्टी वेबसाइटों द्वारा प्रदान किया गया प्रलेखन केवल slapd.conf LDAP सर्वर को स्थानांतरित करने में मदद करता है, न कि LDAP सर्वर नए cn = config कॉन्फ़िगरेशन फ़ाइल के साथ।

और मेरे पास नया स्कीमा (एंटेक्टाइप और ऑब्जेक्टक्लास) भी है, क्या इन्हें आसानी से संभव के रूप में एक नई मशीन में स्थानांतरित करने का कोई तरीका है?

मुझे अपने स्कीमा को नए मशीन में एक-एक करके मैन्युअल रूप से जोड़ने और जोड़ने के अलावा अन्य तरीके की आवश्यकता है।

यह सबसे अधिक संभावना पुरानी मशीन को बंद करने के इरादे से किया जाएगा।

TL; DR क्या पुरानी मशीन को बंद करने के इरादे से LDAP डेटाबेस, स्कीमा, कॉन्फ़िगरेशन को 1 LDAP सर्वर से नए LDAP सर्वर में आसानी से स्थानांतरित करने का कोई तरीका है।

धन्यवाद।

* जवाब नीचे पोस्ट किया

- जूलियो


2
आपको वास्तव में एक उत्तर के रूप में अपना समाधान पोस्ट करना चाहिए और अपने प्रश्न को संपादित नहीं करना चाहिए।
स्वेन

जवाबों:


17

समाधान :

तो यहां मैंने यह काम करने के लिए क्या किया।

  1. मुख्य सर्वर पर थप्पड़ बंद करो
  2. मुख्य सर्वर से Slapcat डेटाबेस (2 डेटाबेस हैं जिन्हें निर्यात करने की आवश्यकता है। मैं "-n" टैग का उपयोग करता हूं

    slapcat -n 0 -l (config file location)
    

यह सभी स्कीमा और cn = config और निर्यात करेगा

    slapcat -n 1 -l <database backup ldif path>

यह उन सभी उपयोगकर्ता डेटा को निर्यात करेगा जो आप LDAP में रखते हैं।

  1. नए सर्वर पर 2 ldif फ़ाइल SCP (सुनिश्चित करें कि आपने सर्वर पर LDAP स्थापित किया है और सुनिश्चित करें कि कॉन्फ़िगरेशन इस आसान को बनाने के लिए लगभग समान है)
  2. नए सर्वर पर थप्पड़ बंद करो।
  3. फ़ोल्डर की सामग्री को हटा दें

    /etc/ldap/slapd.d
    
  4. नए सर्वर पर कॉन्फ़िगरेशन आयात करने के लिए स्लैपड का उपयोग करें

    slapadd -n 0 -l (config ldif location)
    

    -n 0 LDAP में कॉन्फ़िगरेशन जोड़ने के लिए है

    slapadd -n 1 -l (database ldif location)
    

    -n 1 डेटाबेस को वापस LDAP में जोड़ने के लिए है

* संपादित करें: किसी तरह उन आदेश मेरे 2 पर काम नहीं करेगा 3 .... और कोशिश पर। इसलिए मैंने जो उचित आदेश दिया है कि यह काम करता है

  slapadd -n 0 -F /etc/ldap/slapd.d -l <config backup ldif path>

तथा

  slapadd -n 1 -l <data backup ldif path>
  1. /etc/ldap/slapd.d फ़ोल्डर (chown और chmod) में अनुमति बदलें। मैंने इसे ओपनडैप पर चेंब किया और इसे 755 पर चोद दिया

इसके अलावा / var / lib / ldap फ़ोल्डर (chown और chmod) को Openldap में अनुमति बदलें

यदि आपके पास टीएलएस कनेक्शन के लिए प्रमाण पत्र है। पुराने सर्वर से नए सर्वर के प्रमाणपत्रों और कुंजियों को उसी सटीक स्थान पर कॉपी करें। स्थानों पर अनुमति बदलें।

  1. थप्पड़ शुरू करो।

और जाना अच्छा होना चाहिए।

आशा है कि यह अन्य लोगों की मदद करता है


मेरे पास डेटाबेस फाइलों पर / var / lib / ldap में अनुमतियों के साथ समस्याएँ थीं जिन्हें स्वामी ldap पर स्विच करने की आवश्यकता थी। उसके अलावा, यह बहुत चिकनी थी।
Sheldonkreger

खुशी है कि यह आपके लिए अच्छा काम करता है
J_LDAP

यह और अधिक upvotes की जरूरत है। मैं काम करने के लिए अपने सेटअप के लिए 2 सप्ताह से शिकार कर रहा हूं। धन्यवाद
hanzo2001

खुशी है कि मेरी पोस्ट दूसरों की मदद कर सकती है
J_LDAP

मेरे मामले में केवल स्कीमा ने अपेक्षा के अनुरूप काम किया, डेटा की प्रतिलिपि नहीं बनाई गई है। वास्तव में गंतव्य पर डेटासेट / var / lib / ldap में उपयोगकर्ताओं के संबंध में कोई स्ट्रिंग नहीं है ... ऐसा लगता है कि कुछ भी नहीं हुआ है। मुझे डेटाबेस को स्रोत से गंतव्य मशीन तक मैन्युअल रूप से / var / lib / ldap में कॉपी करना था; मैंने serverfault.com/questions/227813/openldap-replication-problem/…
Fabiano Tarlao

6

दोनों पेड़ों ( cn=configऔर अपने नियमित डेटा) को एलडीआईएफ में निर्यात करें, उन्हें नए सर्वर ( cn=configपहले) पर वापस आयात करें । किया हुआ।

इसके अलावा, cn=configअनिवार्य रूप से केवल एलडीआईएफ फ़ाइलों का एक संग्रह है और यह संभव है कि इस संग्रह को नए सर्वर पर उसी रिश्तेदार स्थान पर कॉपी करना संभव है (जबकि slapdनहीं चल रहा है)।


मैं उन्हें कैसे निर्यात करूं? स्कीमा (नए ऑब्जेक्टक्लास, एंटाइटेप्स) के बारे में क्या? उत्तर के लिए धन्यवाद
J_LDAP

स्कीमा कोcn=schema,cn=config (या ऐसा कुछ) में परिभाषित किया जाना चाहिए और एलडीआईएफ फ़ाइल में समाहित किया जाएगा।
स्वेन

ठीक है धन्यवाद जवाब fot। मैं इसे बाद में कोशिश करूँगा। बहुत बहुत धन्यवाद।
J_LDAP
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.