Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Non esiste documentazione equivalente di
Apigee Edge per questo argomento.
Sintomi
- I prodotti API, gli sviluppatori e le app non vengono compilati nell'interfaccia utente di Apigee.
- I deployment dei proxy API non vengono completati.
- Le richieste all'API di gestione eseguite per la lettura e la scrittura di prodotti API, sviluppatori e app non vanno a buon fine./li>
Messaggi di errore
Questa sezione descrive i possibili messaggi di errore visualizzati quando non c'è connettività di rete.
ApigeeIssue
Se questo problema è stato segnalato come ApigeeIssue, quando viene eseguito il seguente comando:
kubectl -n APIGEE_NAMESPACE get apigeeissues
dove APIGEE_NAMESPACE è il nome di un raggruppamento di risorse Kubernetes.
viene visualizzato il seguente codice di errore:
NAME SEVERITY AGE URL control-plane-connectivity-failure Error 1hr https://cloud.google.com/apigee/docs/api-platform/troubleshoot/playbooks/no-network-connectivity
Pagine dell'interfaccia utente di Apigee per prodotti API, sviluppatori e app
Le pagine dell'interfaccia utente di Apigee per prodotti API, sviluppatori e app mostrano il seguente errore:
Error: no connections available from the Apigee connect agent(s): refer to documentation to triage further.
Log di apigee-synchronizer
Nei log di apigee-synchronizer
è possibile visualizzare il seguente messaggio di errore:
{"level":"SEVERE","thread":"Apigee-Timer-3","mdc":{"action":"SYNC","env":"dev", "org":"example-hybrid-dev"},"className":"com.apigee.httpclient.adaptor.RequestAdaptor", "method":"doSend","severity":"SEVERE","message":"request failed [CONTEXT ratelimit_period\u003d\"1 MINUTES [skipped: 1]\" ]", "formattedDate":"2023-02-01T06:27:48.700Z","logger":"SERVICES.HTTPCLIENTSERVICE", "exceptionStackTrace":"java.net.SocketTimeoutException: connect timed out ... com.apigee.httpclient.adaptor.RequestAdaptor.send(RequestAdaptor.java:251) at com.apigee.hybrid.runtime.contract.sync.context.HttpContractDownloader.download(HttpContractDownloader.java:84) at com.apigee.hybrid.runtime.contract.sync.context.ControlPlaneReplicationContext.getContract(ControlPlaneReplicationContext.java:66)
Log di apigee-watcher
Nei log di apigee-watcher
è possibile vedere il seguente messaggio di errore:
{"level":"error","ts":1675232549.5093117,"caller":"watcher/watcher.go:60", "msg":"error during watch","name":"mpstatus","error":"INTERNAL: error sending mp status to mgmt: INTERNAL: failed to send runtime status Post \"https://apigee.googleapis.com/v1/organizations/example-hybrid-dev/instances/apigee-hybrid-australia-southeast1:reportStatus\": dial tcp 172.217.24.42:443: i/o timeout","stacktrace": "edge-internal.git.corp.google.com/apigee-watcher.git/watcher. (*Watcher).Start.func1.1\n\t/go/src/edge-internal/apigee-watcher/watcher/watcher.go:60"}
Possibili cause
Piattaforma | Causa | Descrizione |
---|---|---|
Tutti | Nessun percorso di rete disponibile per internet | Se non è disponibile alcun percorso di rete per internet, i componenti del piano di runtime di Apigee non potranno comunicare con le API del piano di controllo di Apigee. |
Tutti | Gli endpoint API Apigee non sono inclusi nella lista consentita | Se è presente un firewall, gli endpoint dell'API Apigee potrebbero non essere stati inclusi nella lista consentita. |
GKE | L'accesso privato Google non è abilitato | Se il deployment è su GKE, l'accesso privato Google potrebbe non essere stato abilitato nella subnet. |
Tutti | Errore di rete sconosciuto | Questo problema potrebbe verificarsi se si verifica un errore sconosciuto nella rete del cluster durante la connessione a internet. |
Causa: nessun percorso di rete disponibile per internet
Diagnosi
- A seconda della piattaforma utilizzata, verifica se è disponibile una route di rete dalla rete del cluster a internet. Ad esempio, per ulteriori informazioni sul networking in GKE, consulta Panoramica della rete.
- Rivolgiti al team di infrastruttura e reti per verificare se la rete del cluster utilizza un server proxy in avanti per la connessione a internet.
Risoluzione
- Rivolgiti all'amministratore di rete e aggiungi un percorso di rete a internet, se possibile.
-
Se è presente un server proxy in avanti utilizzato per la comunicazione tra la rete del cluster e internet,
configura le impostazioni del server proxy in avanti in Apigee utilizzando il file
overrides.yaml
e applica la modifica al piano di runtime.apigeectl apply --settings virtualhosts -f overrides/overrides.yaml
Causa: gli endpoint API Apigee non sono inclusi nella lista consentita
Diagnosi
Rivolgiti all'amministratore di rete e verifica se l'elenco degli endpoint API Apigee è inserito nella lista consentita nel firewall sulla piattaforma in cui è installato Apigee. Per GKE, potrebbe essere Cloud Next Generation Firewall.
Risoluzione
Se l'elenco di endpoint API Apigee riportato sopra non è nella lista consentita, contatta l'amministratore di rete e soddisfa questo requisito.
Causa: l'accesso privato Google non è abilitato
Diagnosi
- Se Apigee viene disegnato su un cluster GKE privato che non ha accesso a internet, l'accesso privato Google deve essere abilitato per consentire ai componenti del piano di runtime di Apigee di accedere alle API di Google internamente.
-
Nella console Google Cloud, vai alla pagina Reti VPC.
- Fai clic sul nome di una rete.
- Nella scheda Subnet, nella colonna Accesso privato Google, verifica che la subnet pertinente sia abilitata. In caso contrario, questo è il motivo dell'errore.
Risoluzione
-
Nella console Google Cloud, vai alla pagina Reti VPC.
- Fai clic sul nome di una rete.
- Fai clic sul nome di una sottorete.
- Fai clic su Modifica.
- Seleziona Accesso privato Google attivo.
- Fai clic su Salva. Una volta attivata, il problema verrà risolto.
Causa: errore di rete sconosciuto
Diagnosi
Contatta l'amministratore di rete e verifica se sono presenti errori sconosciuti nella rete del cluster.
Risoluzione
Collabora con l'amministratore di rete e risolvi i problemi della rete del cluster. Una volta risolti i problemi di rete, il problema verrà risolto.
Deve raccogliere informazioni di diagnostica
Se il problema persiste anche dopo aver seguito le istruzioni riportate sopra, raccogli le seguenti informazioni di diagnostica e poi contatta l'assistenza clienti Google Cloud:
- L'ID progetto Google Cloud.
- Il nome dell'organizzazione Apigee hybrid.
- Gli output dei seguenti comandi eseguiti su tutti i nodi del cluster Kubernetes:
ping apigee.googleapis.com
traceroute apigee.googleapis.com
telnet apigee.googleapis.com 443
- Il file
overrides.yaml
, che maschera le informazioni sensibili. - Lo stato del pod Kubernetes in tutti gli spazi dei nomi:
kubectl get pods -A > kubectl-pod-status`date +%Y.%m.%d_%H.%M.%S`.txt
- Il dump di cluster-info di Kubernetes:
Genera il dump delle informazioni del cluster Kubernetes:
kubectl cluster-info dump -A --output-directory=/tmp/kubectl-cluster-info-dump
File ZIP del dump di informazioni sul cluster Kubernetes:
zip -r kubectl-cluster-info-dump`date +%Y.%m.%d_%H.%M.%S`.zip /tmp/kubectl-cluster-info-dump/*