Replikasi Open Directory mungkin tidak berfungsi; “Batas Ukuran terlampaui” muncul di slapd.log

Replikasi Open Directory mungkin tidak berfungsi; ketika ini terjadi, entri seperti berikut ini muncul di /var/log/slapd.log

slapd[209]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (4) Batas ukuran terlampaui slapd[209]: do_syncrep2: rid=001 (4) Batas ukuran terlampaui

Hal ini dapat terjadi jika server Open Directory tidak aktif dalam jangka waktu lama atau jika replika dibuat ketika terdapat lebih dari 11.000 objek di penyimpanan data LDAP. 11.000 adalah jumlah maksimum default untuk objek yang dapat ditampilkan dalam satu pencarian.

Izinkan pengguna _ldap_replicator mengganti batas pencarian. Hal ini dilakukan dengan mengubah konfigurasi server LDAP di setiap server Open Directory. Tindakan ini memerlukan autentikasi sebagai administrator direktori dan menjalankan beberapa perintah modifikasi LDAP di Terminal. Basis pencarian, disebut juga konteks penamaan, untuk server LDAP juga harus diketahui.

Langkah berikut dapat digunakan untuk melakukan hal ini.

Pertama, temukan basis pencarian untuk server LDAP

Temukan basis pencarian server LDAP. Ini biasanya merupakan nama domain server yang sepenuhnya memenuhi syarat dengan dc= ditambahkan ke setiap label dan titik diubah menjadi koma.

Contohnya, server dengan nama host server.example.com akan memiliki basis pencarian default “dc=server,dc=example,dc=com”. Basis pencarian dapat diverifikasi dengan mengirim kueri ke server LDAP itu sendiri dengan perintah Terminal berikut:

ldapsearch -x -LLL -b “” -s base namingContexts

Cari baris yang berisi namingContexts. Basis pencariannya berada setelah titik dua seperti pada contoh output di bawah ini.

dn: namingContexts: dc=server,dc=example,dc=com

Kedua, dapatkan kredensial kerberos untuk administrator direktori

Nama default untuk pengguna ini adalah diradmin, tetapi bisa saja telah diubah ketika master Open Directory dibuat. Hal ini dilakukan menggunakan perintah kinit di Terminal. Jalankan perintah berikut, ganti nama yang benar untuk administrator direktori dengan diradmin jika perlu, dan masukkan kata sandi saat diminta. Tidak ada output.

kinit diradmin

Berikutnya, gunakan ldapmodify dalam mode interaktif di Terminal untuk melakukan perubahan. Cukup jalankan perintah berikut di Terminal=:

ldapmodify

Catatan: Tindakan ini akan menampilkan beberapa pesan SASL dan menunggu input. Jika berhasil, output SASL akan terlihat seperti ini:

SASL/GSSAPI authentication started SASL username: diradmin@REALM SASL SSF: 56 SASL data security layer installed.

Mengubah konfigurasi

Terakhir, lakukan modifikasi pada konfigurasi. Tindakan ini mengharuskan semua teks di bawah ini dimasukkan ke jendela Terminal sebagai input untuk perintah ldapmodify. Basis pencarian harus diganti dengan [search base] di bawah. Tanda kurung juga harus dihapus.

dn: olcDatabase={1}bdb,cn=config changetype: modify add: olcLimits olcLimits: dn.exact="uid=_ldap_replicator,cn=users,[search base]" time.soft=unlimited time.hard=unlimited size.soft=unlimited size.hard=unlimited dn: olcDatabase={2}bdb,cn=config changetype: modify add: olcLimits olcLimits: dn.exact="uid=_ldap_replicator,cn=users,[search base]" time.soft=unlimited time.hard=unlimited size.soft=unlimited size.hard=unlimited

Sekarang, tekan Control-D.

Jika semuanya berhasil, pesan seperti berikut akan ditampilkan.

modifying entry "olcDatabase={1}bdb,cn=config" modifying entry "olcDatabase={2}bdb,cn=config"

Pelajari lebih lanjut

Alternatif skrip shell

Berikut ini adalah teks skrip shell yang dapat digunakan untuk mengotomatiskan proses ini. Cukup terapkan kinit pada administrator direktori seperti di atas, lalu jalankan skrip ini. Baca artikel ini untuk saran editor teks.

#!/bin/sh nc=`ldapsearch -x -LLL -b "" -s base namingContexts | awk '/namingContexts/ {print $2}'` ldapmodify <

Dokumen ini akan diperbarui apabila informasi lainnya telah tersedia.

Tanggal Dipublikasikan: