XaaS Cloud Computing Loading ...
X
درخواست شما ثبت شد

درخواست شما با موفقیت ثبت شد. گروه پشتیبانی ما درخواست شما را بررسی و در اسرع وقت با شما تماس خواهند گرفت

راه‌اندازی OpenLDAP Multi-Master

راه‌اندازی OpenLDAP Multi-Master Replication

راه‌اندازی OpenLDAP Multi-Master Replication

در این راهنما در مورد چگونگی تنظیمات اپن ال‌دپ (OpenLDAP) جهت تعریف دو یا چندین سرور اصلی (Master) و ایجاد رونوشت این سرورها از همدیگر توضیح داده شده است. روش دیگر برای ایجاد رونوشت رونوشت Master-Slave می‌باشد ولی در آن روش فقط سرور اصلی می‌تواند روی فهرست LDAP عملیات نوشتن را انجام دهد و سرور(های) پشتیبان فقط قابلیت خواندن از سرور اصلی را دارند که در روش زیر چنین محدودیتی وجود ندارد.

برای این کار ابتدا باید دو سرور LDAP ایجاد کنید (در صورت تمایل می‌توانید به تعداد مورد نظر سرور اصلی LDAP بسازید).

تنظیمات سرورها:

* دستوراتی که در ادامه می‌آیند را می‌بایست روی همه سرورها اجرا کنید:

ابتدا باید بخش syncprov را روی سرورها فعال کنید:

vim syncprov_mod.ldif

متن زیر را در فایل syncprov_mod.ldif کپی کنید:

dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib/ldap
olcModuleLoad: syncprov.la

اکنون تنظیمات را به LDAP بفرستید:

ldapadd -Y EXTERNAL -H ldapi:/// -f syncprov_mod.ldif

خروجی دستور:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=module,cn=config"

syncprov را برای همه فهرست‌ها فعال کنید:

vim syncprov.ldif

متن زیر را در فایل بالا کپی کنید:

dn: olcOverlay=syncprov,olcDatabase={1}hdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
olcSpSessionLog: 100

تنظیمات را به LDAP بفرستید:

ldapadd -Y EXTERNAL -H ldapi:/// -f syncprov.ldif

خروجی دستور:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "olcOverlay=syncprov,olcDatabase={1}hdb,cn=config"

حال با جایگذاری بخش‌هایی نظیر آدرس سرور(های) دیگر، نام کاربری ادمین (admin) و کلمه عبور آن در فایل تنظیمات، سرورها را پیکربندی کنید:

vim rp.ldif

متن زیر را در فایل بالا کپی کنید. لازم به ذکر است عدد جلوی olcServerID و rid برای هر سرور منحصر به فرد است و در قسمت binddn ،provider و credentials باید به‌ترتیب آی‌پی، نام کاربری ادمین و کلمه عبور ادمین سرور دیگر را وارد نمایید:

dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1

dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl: rid=001
  provider=ldap://192.168.1.2:389/
  bindmethod=simple
  binddn="cn=admin,dc=test,dc=local"
  credentials=test123
  searchbase="dc=test,dc=local"
  scope=sub
  schemachecking=on
  type=refreshAndPersist
  retry="30 5 300 3"
  interval=00:00:05:00
-
add: olcMirrorMode
olcMirrorMode: TRUE

dn: olcOverlay=syncprov,olcDatabase={1}hdb,cn=config
changetype: add
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
همین کار را روی سرور(های) دیگر نیز انجام دهید:
dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 2

dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl: rid=002
  provider=ldap://192.168.1.1:389/
  bindmethod=simple
  binddn="cn=admin,dc=test,dc=local"
  credentials=test123
  searchbase="dc=test,dc=local"
  scope=sub
  schemachecking=on
  type=refreshAndPersist
  retry="30 5 300 3"
  interval=00:00:05:00
-
add: olcMirrorMode
olcMirrorMode: TRUE

dn: olcOverlay=syncprov,olcDatabase={1}hdb,cn=config
changetype: add
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
فایل تنظیم مخصوص هر سرور را به LDAP همان سرور بفرستید:
ldapmodify -Y EXTERNAL  -H ldapi:/// -f rp.ldif

خروجی دستور:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={1}hdb,cn=config"

تست رونوشت (Replication):

برای تست رونوشت می‌توانید از طریق واسط کاربری phpLDAPadmin نام کاربری را روی هر یک از سرورها بسازید، پاک کنید یا تغییر دهید و نتیجه را روی سرور(های) دیگر مشاهده کنید.

منبع:

http://www.itzgeek.com/how-tos/linux/centos-how-tos/configure-openldap-multi-master-replication-linux.html