Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Bagian ini memberikan informasi dan panduan untuk memecahkan masalah OpenLDAP.
SMTP dinonaktifkan dan pengguna perlu mereset sandi
Gejala
Jika SMTP tidak disiapkan di UI Edge, pengguna baru yang ditambahkan ke Edge memerlukan cara untuk menetapkan sandi.
Pesan Error
Unknown username and password combination.
Kemungkinan Penyebab
Pengguna baru tidak bisa mendapatkan email dari link “Lupa sandi?” untuk menetapkan sandi karena SMTP tidak disiapkan.
Resolusi
Anda dapat mengatasi masalah ini dengan salah satu cara berikut:
Solusi #1: Konfigurasikan Server SMTP
Konfigurasikan Server SMTP untuk menetapkan sandi baru bagi pengguna menggunakan petunjuk yang diberikan dalam dokumentasi.
Solusi #2: Menggunakan LDAP
Jika Anda tidak dapat mengonfigurasi server SMTP, gunakan perintah LDAP di bawah ini untuk menetapkan sandi baru bagi pengguna:
- Admin org yang ada perlu menambahkan pengguna tertentu melalui UI Edge seperti yang ditunjukkan di bawah ini:
- Gunakan perintah ldapsearch untuk menemukan nama yang dibedakan
(dn) pengguna dan mengalihkan output ke file:
ldapsearch -w Secret123 -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h localhost -p 10389 > ldap.txt
Berikut adalah contoh entri dn untuk pengguna, bersama dengan atribut untuk pengguna:
dn:uid=f7a4a4a5-7c43-4168-a47e-6e9a1417cc29,ou=users,ou=global,dc=apigee,dc=com mail: apigee_validator@apigee.com userPassword:: e1NTSEF9b0FrMFFXVmFjbWRxM1BVaFZzMnllWGZMdkNvNjMwNTJlUDZYN3c9PQ= = uid: f7a4a4a5-7c43-4168-a47e-6e9a1417cc29 objectClass: inetOrgPerson sn: Validator cn: apigee
- Buka file ldap.txt dan temukan dn pengguna baru yang telah ditambahkan berdasarkan atribut email pengguna baru.
- Jalankan perintah ldappassword untuk menambahkan sandi bagi pengguna baru menggunakan dn-nya. Dalam contoh ini, Anda menyetel sandi pengguna ke Apigee123:
ldappasswd -h localhost -p 10389 -D "cn=manager,dc=apigee,dc=com" -W -s Apigee123 "uid=f7a4a4a5-7c43-4168-a47e-6e9a1417cc29,ou=users,ou=global,dc=apigee,dc=com"
- Login ke UI Edge sebagai pengguna baru dengan sandi yang telah ditentukan di langkah sebelumnya. Pengguna dapat menetapkan sandi baru setelah login ke UI.
LDAP tidak Mereplikasi
Gejala
Banyak penginstalan Edge memiliki beberapa pusat data, misalnya DC-1 dan DC-2. Saat login ke UI Edge di DC-1 sebagai admin org, Anda dapat melihat daftar pengguna, tetapi daftar pengguna yang sama tidak muncul di UI Edge di DC-2.
Pesan Error
Tidak ada error yang muncul, UI Edge hanya tidak menampilkan daftar pengguna yang seharusnya direplikasi di semua server OpenLDAP.
Kemungkinan Penyebab
Biasanya penyebab masalah ini adalah konfigurasi replikasi OpenLDAP yang salah dikonfigurasi, bukan penginstalan itu sendiri. Selain itu, replikasi dapat rusak jika jaringan antara server OpenLDAP tidak mengizinkan traffic di port 10389.
Diagnosis
Gunakan langkah-langkah berikut untuk mendiagnosis masalah:
- Periksa apakah ldapsearch menampilkan data dari setiap server OpenLDAP:
ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h <host-ip> -p 10389
- Periksa apakah Anda dapat tersambung ke setiap node OpenLDAP dari node OpenLDAP lainnya di port 10389.
Jika telnet terinstal, gunakan perintah berikut:
telnet <OpenLDAP_Peer_IP> 10389
-
Jika telnet tidak tersedia, gunakan netcat untuk memeriksa konektivitas sebagai berikut:
nc -vz <OpenLDAP_Peer_IP> 10389
- Periksa konfigurasi replikasi dalam file berikut:
/opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
File tersebut harus berisi konfigurasi seperti ini:
olcSyncRepl: rid=001 provider=ldap://__OTHER_LDAP_SERVER__/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials=__LDAP_PASSWORD__ searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- Periksa juga file yang sama untuk nilai atribut olcMirrorMode. Ini harus ditetapkan ke nilai TRUE:
grep olcMirrorMode /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
- Periksa aturan wrapper iptables dan tcp. Hapus aturan apa pun yang tidak memungkinkan server OpenLDAP peer untuk berkomunikasi satu sama lain. Bekerja samalah dengan administrator jaringan Anda untuk menetapkan aturan dengan tepat.
- Pastikan sandi sistem OpenLDAP sama di setiap node OpenLDAP.
- Periksa karakter tersembunyi dalam file konfigurasi ldif yang digunakan untuk mengonfigurasi replikasi OpenLDAP N-Way dengan menjalankan dos2unix pada file ldif yang telah dibuat untuk memperbarui konfigurasi. Biasanya, file ldif yang memiliki karakter buruk akan menyebabkan perintah ldapmodify gagal dijalankan, sehingga replikasi mungkin tidak disiapkan. Hapus semua karakter yang buruk dan simpan file konfigurasi.
Jika masalah berlanjut, hubungi Dukungan Apigee untuk mendapatkan bantuan terkait penyiapan replikasi OpenLDAP N-Way.
Tidak dapat memulai OpenLDAP
Gejala
OpenLDAP tidak dimulai.
Pesan Error
SLAPD Dead But Pid File Exists
Kemungkinan Penyebab
Masalah ini biasanya disebabkan oleh file kunci yang tertinggal di sistem file dan harus dihapus.
Diagnosis
Gunakan langkah-langkah berikut untuk mendiagnosis masalah ini:
- Periksa apakah ada file pid atau kunci proses slapd OpenLDAP di lokasi berikut:
/opt/apigee/var/run/apigee-openldap/apigee-openldap.lock /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid
- Hapus file kunci dan pid, jika ditemukan, lalu coba mulai ulang openldap.
rm /opt/apigee/var/run/apigee-openldap/apigee-openldap.lock Rm /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid
- Jika proses slapd OpenLDAP dimulai, lewati langkah di bawah.
- Jika proses slapd OpenLDAP tidak dimulai, coba jalankan slapd dalam mode debug dan cari error:
slapd -h ldap://:10389/ -u apigee -F /opt/apigee/data/apigee-openldap/slapd.d -d 255
- Error mungkin mengarah ke masalah resource. Memeriksa pemakaian memori dan CPU pada sistem.
- Periksa versi OpenLDAP dan tingkatkan versi jika sudah lama. Periksa versi OpenLDAP yang didukung di dokumen Software yang Didukung.
slapd -V
- Gunakan strace untuk memecahkan masalah proses slapd, dan untuk memberikan output strace ke
Dukungan Apigee:
strace -tt -T -f -F -i -v -e read=all -s 8192 -e write=all -o /tmp/strace.out -p <pid>
Kerusakan Data OpenLDAP
Gejala
Pengguna tidak lagi dapat menjalankan panggilan pengelolaan atau login ke UI Edge. Menggunakan utilitas ldapsearch untuk mengkueri pengguna dapat menunjukkan bahwa pengguna ada di datastore LDAP, atau dapat mengidentifikasi kemungkinan pengguna atau peran yang tidak ada.
Pesan Error
Unknown username and password combination.
Kemungkinan Penyebab
Biasanya, masalah ini muncul karena kerusakan data OpenLDAP. Biasanya, data OpenLDAP tidak rusak. Namun, dalam kasus yang jarang terjadi, kerusakan dapat disebabkan oleh kegagalan disk sistem atau masalah ruang disk.
Diagnosis
- Periksa kapasitas disk pada sistem tempat OpenLDAP terinstal menggunakan perintah di bawah:
du -m /opt
- Jika Anda melihat kapasitas disk yang digunakan hampir 100%, berarti bahwa penyebab masalah ini adalah sistem Anda kehabisan kapasitas disk.
Resolusi
Jika sistem Anda kehabisan ruang disk atau hampir kehabisan ruang disk, tambahkan kapasitas disk yang lebih besar untuk memastikan Anda memiliki ruang disk yang cukup.
Setelah Anda memiliki kapasitas disk yang cukup, gunakan salah satu solusi di bawah ini untuk mengatasi masalah kerusakan data LDAP:
- Pulihkan data OpenLDAP dari cadangan.
- Bersihkan {i>database<i} OpenLDAP.
Solusi #1 Memulihkan data LDAP dari cadangan
Pada {i>node<i} OpenLDAP yang berfungsi, buatlah cadangan. Pencadangan harus dilakukan secara teratur. Lihat Panduan Operasi Private Cloud Apigee untuk mengetahui praktik terbaik terkait pencadangan:
slapcat -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
Langkah-langkah berikut dapat digunakan untuk memulihkan data OpenLDAP dari cadangan yang baik.
- Hentikan node OpenLDAP yang datanya perlu dipulihkan:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Ubah direktori ke direktori data OpenLDAP:
cd /opt/apigee/data/apigee-openldap
- Cadangkan data OpenLDAP yang ada menggunakan perintah pemindahan:
mv ldap ldap_orig
- Beralih ke pengguna apigee:
su apigee
- Dari direktori
/opt/apigee/data/apigee-openldap
, buat direktori data OpenLDAP baru dengan nama aslinya:mkdir ldap
- Ambil cadangan subdirektori ldap_orig/DB_CONFIG dari langkah 3, lalu salin ke direktori openldap.
cp ldap_orig/DB_CONFIG ldap
- Untuk memulihkan data dari cadangan yang diambil dengan slapcat, gunakan slapadd untuk mengimpor ldif yang
berisi data baik:
slapadd -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
- Mulai proses OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
Solusi #2 Membersihkan database LDAP
Langkah-langkah berikut ini akan menghapus total {i>database<i} OpenLDAP untuk memberikan awal yang baru. Solusi ini dapat digunakan jika tidak ada cadangan data di status terakhir tempat data OpenLDAP berfungsi.
- Hentikan layanan OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Ubah direktori ke direktori data OpenLDAP:
cd /opt/apigee/data/apigee-openldap
- Cadangkan data OpenLDAP yang ada menggunakan perintah pemindahan:
mv ldap ldap_orig
- Beralih ke pengguna apigee:
su apigee
- Buat direktori data OpenLDAP baru dengan nama aslinya:
mkdir ldap
- Ambil subdirektori ldap_orig/DB_CONFIG cadangan dari langkah 3, lalu salin ke direktori openldap:
cp ldap_orig/DB_CONFIG ldap
- Mulai ulang proses OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
- Mulai ulang Server Pengelolaan untuk memaksa pemuatan ulang koneksi ke OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Solusi #3 Atur ulang OpenLDAP ke instalasi dasar
Jika Solusi #2 tidak menyelesaikan masalah, Anda dapat mereset OpenLDAP ke penginstalan dasar, seperti yang dijelaskan di bagian ini.
Prasyarat
Untuk mereset OpenLDAP, Anda memerlukan prasyarat berikut:
- Kemampuan untuk menjalankan penyiapan dengan admin sistem dan kredensial LDAP root.
- Akses ke utilitas
ldapadd
. - File konfigurasi senyap asli yang disimpan untuk node manajemen/LDAP.
Untuk mereset OpenLDAP, lakukan langkah-langkah berikut:
- Instal ulang OpenLDAP dan Server Pengelolaan.
- Hentikan server
openldap
:apigee-service apigee-openldap stop
- Hapus folder data
openldap
yang rusak:rm -rf /opt/apigee/data/apigee-openldap
- Uninstal komponen
openldap
:apigee-service apigee-openldap uninstall
- Instal ulang komponen
openldap
menggunakan file konfigurasi yang sama dengan yang digunakan untuk penginstalan awal:/opt/apigee/apigee-setup/bin/setup.sh -p ld -f configfile
denganconfigfile
adalah nama file konfigurasi. - Instal ulang Management Server menggunakan file konfigurasi asli:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f configfile
After doing these steps, Management API calls should work again using the
sysadmin
account only. However, it will not be possible to log into the Edge UI, and Management API calls with any other users will not work. - Hentikan server
- Add missing
openldap
entries for orgs that existed prior to the corruption.After the above step is completed,
openldap
will be missing entries for orgs that existed when the corruption occurred. The majority of the actual org data such as proxy bundles is stored in Cassandra or Zookeeper is not lost. However, running the setup-org script will not automatically add the openldap data for the orgs that already exist in Cassandra, and Zookeeper. This data has to be added manually for every org that existed prior to the corruption using the following steps:- Create an ldif file called
missingLDAP.ldif
with the following content:# orgname, organizations, apigee.com dn: o=orgname,ou=organizations,dc=apigee,dc=com objectClass: organization O: orgname # userroles, orgname, organizations, apigee.com dn: ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com ou: userroles objectClass: organizationalUnit # orgadmin, userroles, orgname, organizations, apigee.com dn: cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com objectClass: organizationalRole cn: orgadmin roleOccupant: uid=admin,ou=users,ou=global,dc=apigee,dc=com # resources, orgadmin, userroles, orgname, organizations, apigee.com dn: ou=resources,cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com ou: resources objectClass: organizationalUnit # @@@, resources, orgadmin, userroles, orgname, organizations, apigee.com dn: cn=@@@,ou=resources,cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com roleOccupant: ou=delete,ou=permissions,dc=apigee,dc=com roleOccupant: ou=get,ou=permissions,dc=apigee,dc=com roleOccupant: ou=put,ou=permissions,dc=apigee,dc=com labeledURI: / objectClass: organizationalRole objectClass: labeledURIObject cn: @@@
dengan orgname adalah organisasi yang Anda coba buat ulang.
- Tambahkan entitas LDAP yang hilang menggunakan perintah berikut:
ldapadd -x -w
-D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f missingLDAP.ldif
Langkah-langkah di atas akan membuat entri yang tidak ada untuk organisasi yang sudah ada, dan izin
orgadmin
untuk organisasi tersebut. Ulangi langkah-langkah tersebut untuk setiap organisasi yang perlu dibuat ulang. Pada tahap ini, Anda dapat menambahkanorgadmin
pengguna ke organisasi, tetapi peran default lainnya belum ada, jadi Anda perlu menambahkannya di langkah berikutnya. - Create an ldif file called
Tambahkan peran dan izin default yang tidak ada ke organisasi yang sudah ada.
Dengan menggunakan file konfigurasi yang sama yang awalnya digunakan untuk menyiapkan salah satu organisasi yang ada, jalankan perintah berikut:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-roles -f configfile
- Tambahkan peran khusus yang ada sebelum kerusakan menggunakan UI atau Management API,
- Tambahkan pengguna ke peran pengguna yang relevan.
(Opsional) Membuat Kembali Konfigurasi Autentikasi Eksternal di Pengelolaan.
Pulihkan
/opt/apigee/customer/application/management-server.properties
jika konfigurasi belum berubah. Karena UI belum diinstal ulang,/opt/apigee/customer/application/ui.properties
akan tetap sama mengingat kredensial untuk sysadmin telah dipulihkan dengan penginstalan pengelolaan yang baru.(Opsional) Instal ulang Apigee mTLS pada node Pengelolaan.
Jika Apigee mTLS telah diinstal sebelumnya, ikuti Panduan Penginstalan Apigee mTLS untuk menginstal ulang pada node server pengelolaan.
Setelah mengikuti prosedur ini, Anda harus secara manual:
Jika masalah berlanjut, hubungi Dukungan Apigee untuk mendapatkan bantuan lebih lanjut.