Sie lesen gerade die Dokumentation zu Apigee und Apigee Hybrid.
Für dieses Thema gibt es keine entsprechende Apigee Edge-Dokumentation.
Symptom
Ein ApigeeIssue
mit Reason
AIS_INGRESS_CERT_EXPIREY
wird angezeigt, wenn Ressourcen im Namespace apigee
angezeigt werden.
Fehlermeldungen
Nachdem kubectl -n apigee get apigeeissues
ausgeführt wurde, wird ein Fehler wie der folgende angezeigt:
NAME SEVERITY REASON DOCUMENTATION AGE ingress-cert-expired-my-org-my-virtualhost ERROR AIS_INGRESS_CERT_EXPIREY https://cloud.google.com/apigee/docs/hybrid/troubleshooting/AIS_INGRESS_CERT_EXPIREY 5h18m
Mögliche Ursachen
Ursache | Beschreibung |
---|---|
Ingress-Zertifikat läuft bald ab | Das konfigurierte Ingress-Zertifikat läuft innerhalb von 14 Tagen ab. |
Ingress-Zertifikat ist abgelaufen | Das konfigurierte Ingress-Zertifikat ist abgelaufen. |
Ursache: Ingress-Zertifikat läuft bald ab
Das Ingress-Zertifikat, das im Kubernetes-Secret gespeichert ist, auf das ein ApigeeRouteConfig
verweist, läuft innerhalb der nächsten 14 Tage ab.
Diagnose
Führen Sie dazu diesen Befehl aus:
kubectl -n apigee describe apigeeissue ISSUE_NAME
Dabei ist ISSUE_NAME der Name des Problems. Beispiel: ingress-cert-expiring-soon-my-org-my-virtualhost
Die Ausgabe sollte in etwa so aussehen:
Name: ingress-cert-expiring-soon-my-org-my-virtualhost Namespace: apigee Labels: ais-reason=AIS_INGRESS_CERT_EXPIREY Annotations: <none> API Version: apigee.cloud.google.com/v1alpha1 Kind: ApigeeIssue Metadata: Creation Timestamp: 2023-06-12T17:03:43Z Generation: 1 Owner References: API Version: apigee.cloud.google.com/v1alpha2 Kind: ApigeeOrganization Name: my-org UID: 7e83a52c-ce00-4bed-98be-55835ada1817 Resource Version: 3281563 UID: adc775c2-376d-4bf9-9860-500b2b2b8273 Spec: Details: Ingress certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" is expiring in 5.409373245s at 2024-03-11 19:04:12 +0000 UTC Documentation: https://cloud.google.com/apigee/docs/hybrid/troubleshooting/AIS_INGRESS_CERT_EXPIREY Reason: AIS_INGRESS_CERT_EXPIREY Severity: WARNING Events: <none>
Spec: Details: Ingress certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" is expiring in 5.409373245s at 2024-03-11 19:04:12 +0000 UTC
Der Inhalt von Spec.Details
erläutert den Namen der ApigeeRouteConfig
, die sich auf das Kubernetes-Secret mit dem Ingress-Zertifikat bezieht, das bald abläuft.
Lösung
-
Verwenden Sie
kubectl describe
, um den Namen desApigeeRouteConfig
anzuzeigen, der das Ingress-Zertifikat enthält, das bald abläuft:kubectl -n apigee describe apigeeissue ISSUE_NAME
Dabei ist ISSUE_NAME der Name des Problems. Beispiel:
ingress-cert-expiring-soon-my-org-my-virtualhost
.In diesem Beispiel verweist
ApigeeRouteConfig
my-org-my-virtualhost
auf das Secretmy-org-my-virtualhost
. -
Ermitteln Sie den
virtualhost
-Namen aus demApigeeRouteConfig
.Der Name des
ApigeeRouteConfig
hat das Format<Apigee organization>-<virtualhost name>
.In diesem Beispiel ist
my-org
die Apigee-Organisation und der Name des virtuellen Hostsmy-virtualhost
. -
Suchen Sie den entsprechenden virtuellen Host in Ihrem
overrides.yaml
.virtualhosts: ... - name: my-virtualhost selector: app: apigee-ingressgateway sslCertPath: ./certs/vhost.pem sslKeyPath: ./certs/vhost.key ...
-
Aktualisieren Sie das Zertifikat und den Schlüssel, die in den Dateien
sslCertPath
undsslKeyPath
aufgeführt sind. -
Wenden Sie die Änderungen auf den Virtualhost an:
helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f overrides.yaml
Ursache: Ingress-Zertifikat ist abgelaufen
Das Ingress-Zertifikat, das im Kubernetes-Secret gespeichert ist, auf das ein ApigeeRouteConfig
verweist, ist abgelaufen.
Diagnose
Führen Sie dazu diesen Befehl aus:
kubectl -n apigee describe apigeeissue ISSUE_NAME
Dabei ist ISSUE_NAME der Name des Problems. Beispiel: ingress-cert-expired-my-org-my-virtualhost
Es wird in etwa Folgendes zurückgegeben:
Name: ingress-cert-expired-my-org-my-virtualhost Namespace: apigee Labels: ais-reason=AIS_INGRESS_CERT_EXPIREY Annotations: <none> API Version: apigee.cloud.google.com/v1alpha1 Kind: ApigeeIssue Metadata: Creation Timestamp: 2023-06-12T17:03:43Z Generation: 1 Owner References: API Version: apigee.cloud.google.com/v1alpha2 Kind: ApigeeOrganization Name: my-org UID: 7e83a52c-ce00-4bed-98be-55835ada1817 Resource Version: 3281563 UID: adc775c2-376d-4bf9-9860-500b2b2b8273 Spec: Details: Ingress certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" expired at: 2024-03-11 19:12:10 +0000 UTC Documentation: https://cloud.google.com/apigee/docs/hybrid/troubleshooting/AIS_INGRESS_CERT_EXPIREY Reason: AIS_INGRESS_CERT_EXPIREY Severity: ERROR Events: <none>
Spec: Details: Ingress certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" expired at: 2024-03-11 19:12:10 +0000 UTC
Der Inhalt von Spec.Details
erläutert den Namen des ApigeeRouteConfig
, der auf das Kubernetes-Secret mit dem abgelaufenen Ingress-Zertifikat verweist.
Lösung
-
Verwenden Sie
kubectl describe
, um den Namen desApigeeRouteConfig
anzuzeigen, der das abgelaufene Ingress-Zertifikat hat:kubectl -n apigee describe apigeeissue ISSUE_NAME
Dabei ist ISSUE_NAME der Name des Problems. Beispiel:
ingress-cert-expired-my-org-my-virtualhost
.In diesem Beispiel verweist
ApigeeRouteConfig
my-org-my-virtualhost
auf das Secretmy-org-my-virtualhost
. -
Ermitteln Sie den
virtualhost
-Namen aus demApigeeRouteConfig
.Der Name des
ApigeeRouteConfig
hat das Format<Apigee organization>-<virtualhost name>
.In diesem Beispiel ist
my-org
die Apigee-Organisation und der Name des virtuellen Hostsmy-virtualhost
. -
Suchen Sie den entsprechenden virtuellen Host in Ihrem
overrides.yaml
.virtualhosts: ... - name: my-virtualhost selector: app: apigee-ingressgateway sslCertPath: ./certs/vhost.pem sslKeyPath: ./certs/vhost.key ...
-
Aktualisieren Sie das Zertifikat und den Schlüssel, die in den Dateien
sslCertPath
undsslKeyPath
aufgeführt sind. -
Wenden Sie die Änderungen auf den Virtualhost an:
helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f overrides.yaml
Erfassen von Diagnoseinformationen erforderlich
Wenn das Problem auch nach Befolgen der obigen Anweisungen weiterhin besteht, sammeln Sie die folgenden Diagnoseinformationen und wenden Sie sich dann an Google Cloud Customer Care:
- Die Google Cloud-Projekt-ID.
- Der Name der Apigee Hybrid-Organisation.
- Das Feld
Spec.Details
vonApigeeIssue
. -
(Optional) Dateien, auf die von
sslCertPath
undsslKeyPath
für den betroffenen virtuellen Host verwiesen wird.