Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Questa sezione fornisce informazioni e indicazioni per la risoluzione dei problemi di OpenLDAP.
SMTP è disattivato e gli utenti devono reimpostare la password
Sintomo
Quando SMTP non è configurato nell'interfaccia utente Edge, i nuovi utenti aggiunti a Edge hanno bisogno di un modo per impostare una password.
Messaggi di errore
Unknown username and password combination.

Possibili cause
I nuovi utenti non riescono a ricevere un'email dal link "Hai dimenticato la password?" per impostare una password perché SMTP non è configurato.
Risoluzione
Puoi risolvere questo problema in uno dei seguenti modi:
Soluzione 1: configura il server SMTP
Configura il server SMTP per impostare una nuova password per l'utente utilizzando le istruzioni fornite nella documentazione.
Soluzione 2: utilizza LDAP
Se non riesci a configurare il server SMTP, utilizza i seguenti comandi LDAP per impostare la nuova password per un utente:
- Un amministratore dell'organizzazione esistente deve aggiungere l'utente specifico tramite l'interfaccia utente Edge, come mostrato di seguito:

- Utilizza il comando ldapsearch per trovare il nome distinto
(dn) dell'utente e reindirizzare l'output a un file:
ldapsearch -w Secret123 -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h localhost -p 10389 > ldap.txt
Ecco un esempio di voce dn per un utente, insieme agli attributi dell'utente:
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
- Apri il file ldap.txt e trova il dn del nuovo utente aggiunto in base all'attributo email del nuovo utente.
- Esegui il comando ldappassword per aggiungere una password per il nuovo utente
utilizzando il suo dn. In questo esempio, imposti la password dell'utente su 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"
- Accedi all'interfaccia utente Edge come nuovo utente con la password definita nel passaggio precedente. L'utente può impostare una nuova password dopo aver eseguito l'accesso all'interfaccia utente.
LDAP non esegue la replica
Sintomo
Molte installazioni di Edge hanno più data center, ad esempio DC-1 e DC-2. Quando accedi all'interfaccia utente Edge in DC-1 come amministratore dell'organizzazione, puoi visualizzare l'elenco degli utenti, ma lo stesso elenco di utenti non viene visualizzato nell'interfaccia utente Edge in DC-2.
Messaggi di errore
Non vengono visualizzati errori, l'interfaccia utente Edge non mostra l'elenco degli utenti che avrebbero dovuto essere replicati su tutti i server OpenLDAP.
Possibili cause
In genere, la causa di questo problema è una configurazione di replica OpenLDAP errata, non l'installazione stessa. Inoltre, la replica potrebbe interrompersi se la rete tra i server OpenLDAP non consente il traffico sulla porta 10389.
Diagnosi
Segui questi passaggi per diagnosticare il problema:
- Controlla se ldapsearch restituisce i dati da ogni server OpenLDAP:
ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h <host-ip> -p 10389
- Controlla se riesci a connetterti a ogni nodo OpenLDAP dagli altri nodi OpenLDAP sulla porta 10389.
Se telnet è installato, utilizza il seguente comando:
telnet <OpenLDAP_Peer_IP> 10389
-
Se telnet non è disponibile, utilizza netcat per verificare la connettività come segue:
nc -vz <OpenLDAP_Peer_IP> 10389
- Controlla la configurazione della replica nel seguente file:
/opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldifIl file deve contenere una configurazione simile alla seguente:
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
- Controlla anche lo stesso file per il valore dell'attributo olcMirrorMode. Deve essere
impostato sul valore TRUE:
grep olcMirrorMode /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif - Controlla le regole di iptables e tcp wrapper. Rimuovi tutte le regole che non consentono i server OpenLDAP peer di comunicare tra loro. Collabora con l'amministratore di rete per impostare le regole in modo appropriato.
- Assicurati che la password di sistema OpenLDAP sia la stessa su ogni nodo OpenLDAP.
- Controlla la presenza di caratteri nascosti nei file di configurazione ldif utilizzati per configurare la replica OpenLDAP N-Way eseguendo dos2unix sui file ldif creati per aggiornare la configurazione. In genere, un file ldif con caratteri errati impedisce l'esecuzione del comando ldapmodify e quindi la replica potrebbe non essere configurata. Rimuovi tutti i caratteri errati e salva i file di configurazione.
Se il problema persiste, contatta l'assistenza Apigee per ricevere assistenza nella configurazione della replica OpenLDAP N-Way.
Impossibile avviare OpenLDAP
Sintomo
OpenLDAP non si avvia.
Messaggi di errore
SLAPD Dead But Pid File Exists
Possibili cause
In genere, questo problema è causato da un file di blocco lasciato nel file system e che deve essere rimosso.
Diagnosi
Segui questi passaggi per diagnosticare il problema:
- Controlla la presenza di un file di blocco o pid del processo slapd di OpenLDAP nella seguente posizione:
/opt/apigee/var/run/apigee-openldap/apigee-openldap.lock /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid
- Elimina il file di blocco e pid, se lo trovi, e prova a riavviare openldap.
rm /opt/apigee/var/run/apigee-openldap/apigee-openldap.lockrm /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid - Se il processo slapd di OpenLDAP si avvia, salta i passaggi riportati di seguito.
- Se il processo slapd di OpenLDAP non si avvia, prova a eseguire slapd in modalità di debug e cerca
eventuali errori:
slapd -h ldap://:10389/ -u apigee -F /opt/apigee/data/apigee-openldap/slapd.d -d 255
- Gli errori potrebbero indicare problemi di risorse. Controlla l'utilizzo di memoria e CPU sul sistema.
- Controlla la versione di OpenLDAP ed esegui l'upgrade se è obsoleta. Controlla le versioni supportate di
OpenLDAP nel nostro Software supportato documento.
slapd -V
- Utilizza strace per risolvere i problemi del processo slapd e per fornire l'output di strace a
Assistenza Apigee:
strace -tt -T -f -F -i -v -e read=all -s 8192 -e write=all -o /tmp/strace.out -p <pid>
Corruzione dei dati OpenLDAP
Sintomo
Gli utenti non riescono più a eseguire chiamate di gestione o ad accedere all'interfaccia utente Edge. L'utilizzo dell'utilità ldapsearch per eseguire query sugli utenti potrebbe indicare che l'utente esiste nell'archivio dati LDAP oppure potrebbe identificare utenti o ruoli mancanti.
Messaggi di errore
Unknown username and password combination.
Possibili cause
In genere, questo problema può essere osservato a causa della corruzione dei dati OpenLDAP. In genere, i dati OpenLDAP non vengono danneggiati. Tuttavia, nel raro caso in cui ciò accada, la corruzione potrebbe essere dovuta a un errore del disco di sistema o a problemi di spazio su disco.
Diagnosi
- Controlla lo spazio su disco del sistema su cui è installato OpenLDAP utilizzando il seguente comando:
du -m /opt
- Se lo spazio su disco utilizzato è molto vicino al 100%, significa che la causa di questo problema è che il sistema sta esaurendo lo spazio su disco.
- Controlla la coerenza dei dati tra i nodi LDAP:
- Su ogni nodo LDAP, confronta il numero di utenti e ruoli. Esegui i seguenti comandi e confronta i risultati.
Una discrepanza nel conteggio tra i nodi suggerisce una possibile corruzione dei dati.ldapsearch -o ldif-wrap=no -b "ou=users,ou=global,dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w PASSWORD|wc -lldapsearch -o ldif-wrap=no -b "ou=resources,ou=global,dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w PASSWORD|wc -l - Verifica lo stato della replica LDAP. Esegui il seguente comando su ogni nodo LDAP.
Se il valoreldapsearch -x -LLL -H ldap://ldap_ip:10389 -s base -b 'dc=apigee,dc=com' contextCSN dn: dc=apigee,dc=com -D "cn=manager,dc=apigee,dc=com" -w PASSWORD dn: dc=apigee,dc=com
contextCSNè identico su tutti i nodi, la replica LDAP funziona correttamente.
- Su ogni nodo LDAP, confronta il numero di utenti e ruoli. Esegui i seguenti comandi e confronta i risultati.
Risoluzione
Se il sistema ha esaurito lo spazio su disco o è molto vicino all'esaurimento, aggiungi altro spazio su disco per garantire una disponibilità sufficiente.
Una volta che hai spazio su disco sufficiente, utilizza una delle seguenti soluzioni per risolvere il problema di corruzione dei dati LDAP:
- Ripristina i dati OpenLDAP dal backup.
-
Libera spazio nel database OpenLDAP seguendo questi passaggi:
- Arresta Management Server 2 e LDAP2.
- Ripristina LDAP1 da un backup della VM (o da un backup Apigee).
- Controlla Management Server 1 per l'avvio e il ripristino.
- Una volta che Management Server 1 e LDAP1 funzionano correttamente, reinstalla LDAP2 da zero (creando una lavagna completamente vuota).
- Configura LDAP2 in modalità di sola lettura, consentendo a LDAP1 di eseguire la replica in LDAP2.
- Utilizza
ldapsearchper verificare che il numero di righe in LDAP1 e LDAP2 corrisponda. - Riavvia Management Server 2 e UI2 e verifica che si avvino correttamente.
Per istruzioni dettagliate, consulta l'Issue Tracker pubblico.
Soluzione 1: ripristina i dati LDAP dal backup
Crea un backup su un nodo OpenLDAP funzionante. Il backup deve essere eseguito regolarmente. Consulta la Guida operativa di Apigee Private Cloud per le best practice sui backup:
slapcat -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
I seguenti passaggi possono essere utilizzati per ripristinare i dati OpenLDAP da un backup valido.
- Arresta il nodo OpenLDAP per il quale è necessario ripristinare i dati:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Cambia la directory impostandola sulla directory dei dati OpenLDAP:
cd /opt/apigee/data/apigee-openldap
- Esegui il backup dei dati OpenLDAP esistenti utilizzando il comando move:
mv ldap ldap_orig
- Passa all'utente apigee:
su apigee
- Dalla directory
/opt/apigee/data/apigee-openldap, crea una nuova directory dei dati OpenLDAP con il nome originale:mkdir ldap
- Esegui il backup della sottodirectory ldap_orig/DB_CONFIG dal passaggio 3 e copiala nella
directory openldap.
cp ldap_orig/DB_CONFIG ldap
- Per ripristinare i dati dal backup eseguito con slapcat, utilizza slapadd per importare il file ldif che
contiene i dati validi:
slapadd -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
- Avvia il processo OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
Soluzione 2: libera spazio nel database LDAP
I seguenti passaggi eliminano il database OpenLDAP per fornire un nuovo inizio. Questa soluzione può essere utilizzata se non è presente un backup dei dati dell'ultimo stato in cui i dati OpenLDAP funzionavano.
- Arresta il servizio OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Cambia la directory impostandola sulla directory dei dati OpenLDAP:
cd /opt/apigee/data/apigee-openldap
- Esegui il backup dei dati OpenLDAP esistenti utilizzando il comando move:
mv ldap ldap_orig
- Passa all'utente apigee:
su apigee
- Crea una nuova directory dei dati OpenLDAP con il nome originale:
mkdir ldap
- Esegui il backup della sottodirectory ldap_orig/DB_CONFIG dal passaggio 3 e copiala nella directory openldap:
cp ldap_orig/DB_CONFIG ldap
- Riavvia il processo OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
- Riavvia il Management Server per forzare un aggiornamento delle connessioni a OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Soluzione 3: reimposta OpenLDAP su un'installazione di base
Se la soluzione 2 non risolve il problema, puoi reimpostare OpenLDAP su un'installazione di base, come descritto in questa sezione.
Prerequisiti
Per reimpostare OpenLDAP, devi soddisfare i seguenti prerequisiti:
- La possibilità di eseguire la configurazione con le credenziali di amministratore di sistema e root LDAP.
- Accesso all'utilità
ldapadd. - Il file di configurazione silenziosa originale salvato per il nodo di gestione/LDAP.
Per reimpostare OpenLDAP:
- Reinstalla OpenLDAP e il Management Server.
- Arresta il server
openldap:apigee-service apigee-openldap stop
- Elimina la cartella dei dati
openldapdanneggiata:rm -rf /opt/apigee/data/apigee-openldap
- Disinstalla il componente
openldap:apigee-service apigee-openldap uninstall
- Reinstalla il componente
openldaputilizzando lo stesso file di configurazione utilizzato per l'installazione iniziale: dove/opt/apigee/apigee-setup/bin/setup.sh -p ld -f configfile
configfileè il nome del file di configurazione. - Reinstalla il Management Server utilizzando il file di configurazione originale:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f configfile
After doing these steps, Management API calls should work again using the
sysadminaccount only. However, it will not be possible to log into the Edge UI, and Management API calls with any other users will not work. - Arresta il server
- Add missing
openldapentries for orgs that existed prior to the corruption.After the above step is completed,
openldapwill 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.ldifwith 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: @@@
dove orgname è l'organizzazione che stai tentando di ricreare.
- Aggiungi le entità LDAP mancanti utilizzando il seguente comando:
ldapadd -x -w
-D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f missingLDAP.ldif
I passaggi precedenti creeranno le voci mancanti per un'organizzazione esistente e le
orgadminautorizzazioni per quell'organizzazione. Ripeti i passaggi per ogni organizzazione da ricreare. A questo punto, puoi aggiungere utentiorgadmina un'organizzazione, ma gli altri ruoli predefiniti non esistono ancora, quindi devi aggiungerli utilizzando il passaggio successivo. - Create an ldif file called
Aggiungi i ruoli e le autorizzazioni predefiniti mancanti a un'organizzazione esistente.
Utilizzando lo stesso file di configurazione utilizzato inizialmente per configurare una delle organizzazioni esistenti, esegui il seguente comando:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-roles -f configfile
- Aggiungere tutti i ruoli personalizzati esistenti prima della corruzione utilizzando l'interfaccia utente o l'API di gestione,
- Aggiungere tutti gli utenti ai ruoli utente pertinenti.
(Facoltativo) Ristabilisci la configurazione di autenticazione esternalizzata su Management.
Ripristina
/opt/apigee/customer/application/management-server.propertiesse la configurazione non è cambiata. Poiché l'interfaccia utente non è stata reinstallata, il/opt/apigee/customer/application/ui.propertiesdovrebbe rimanere invariato, dato che le credenziali per l'amministratore di sistema sono state ripristinate con la nuova installazione di Management.(Facoltativo) Reinstalla Apigee mTLS sul nodo di gestione.
Se Apigee mTLS è stato installato in precedenza, segui la Guida all'installazione di Apigee mTLS per reinstall lo sul nodo del Management Server.
Dopo aver seguito questa procedura, devi:
Se il problema persiste, contatta l'assistenza Apigee per ulteriore supporto.