Estás viendo la documentación de Apigee y Apigee hybrid.
No hay documentación de Apigee Edge equivalente para este tema.
Síntoma
Se muestra un ApigeeIssue
con Reason
AIS_INGRESS_CERT_EXPIREY
cuando se visualizan los recursos en el espacio de nombres apigee
.
Mensajes de error
Después de ejecutar kubectl -n apigee get apigeeissues
, se muestra un error como el siguiente:
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
Causas posibles
Causa | Descripción |
---|---|
El certificado de entrada vencerá pronto | El certificado de entrada configurado vencerá dentro de 14 días. |
El certificado de entrada venció | El certificado de entrada configurado venció. |
Causa: El certificado de entrada vencerá pronto
El certificado de entrada almacenado en el Secret de Kubernetes al que hace referencia un ApigeeRouteConfig
vencerá en los próximos 14 días.
Diagnóstico
Ejecuta el siguiente comando:
kubectl -n apigee describe apigeeissue ISSUE_NAME
En el que ISSUE_NAME es el nombre del problema. Por ejemplo:ingress-cert-expiring-soon-my-org-my-virtualhost
El resultado debería ser similar al siguiente:
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
El contenido de Spec.Details
explica el nombre de ApigeeRouteConfig
que hace referencia al Secret de Kubernetes que contiene el certificado de entrada que vencerá pronto.
Solución
-
Usa
kubectl describe
para mostrar el nombre delApigeeRouteConfig
que tiene el certificado de entrada que vencerá pronto:kubectl -n apigee describe apigeeissue ISSUE_NAME
En el que ISSUE_NAME es el nombre del problema. Por ejemplo,
ingress-cert-expiring-soon-my-org-my-virtualhost
.En este ejemplo,
ApigeeRouteConfig
my-org-my-virtualhost
hace referencia al Secretmy-org-my-virtualhost
. -
Determina el nombre
virtualhost
deApigeeRouteConfig
.El nombre de
ApigeeRouteConfig
tiene el siguiente formato:<Apigee organization>-<virtualhost name>
.En este ejemplo,
my-org
es la organización de Apigee y el nombre del host virtual esmy-virtualhost
. -
Busca el host virtual correspondiente en tu
overrides.yaml
.virtualhosts: ... - name: my-virtualhost selector: app: apigee-ingressgateway sslCertPath: ./certs/vhost.pem sslKeyPath: ./certs/vhost.key ...
-
Actualiza el certificado y la clave que aparecen en los archivos
sslCertPath
ysslKeyPath
. -
Aplica los cambios al host virtual:
helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f overrides.yaml
Causa: El certificado de entrada venció
Venció el certificado de entrada almacenado en el Secret de Kubernetes al que hace referencia un ApigeeRouteConfig
.
Diagnóstico
Ejecuta el siguiente comando:
kubectl -n apigee describe apigeeissue ISSUE_NAME
En el que ISSUE_NAME es el nombre del problema. Por ejemplo:ingress-cert-expired-my-org-my-virtualhost
Se mostrará un resultado similar al siguiente:
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
El contenido de Spec.Details
explica el nombre de ApigeeRouteConfig
que hace referencia al Secret de Kubernetes que contiene el certificado de entrada que venció.
Solución
-
Usa
kubectl describe
para mostrar el nombre de laApigeeRouteConfig
que tiene el certificado de entrada vencido:kubectl -n apigee describe apigeeissue ISSUE_NAME
En el que ISSUE_NAME es el nombre del problema. Por ejemplo,
ingress-cert-expired-my-org-my-virtualhost
.En este ejemplo,
ApigeeRouteConfig
my-org-my-virtualhost
hace referencia al Secretmy-org-my-virtualhost
. -
Determina el nombre
virtualhost
deApigeeRouteConfig
.El nombre de
ApigeeRouteConfig
tiene el siguiente formato:<Apigee organization>-<virtualhost name>
.En este ejemplo,
my-org
es la organización de Apigee y el nombre del host virtual esmy-virtualhost
. -
Busca el host virtual correspondiente en tu
overrides.yaml
.virtualhosts: ... - name: my-virtualhost selector: app: apigee-ingressgateway sslCertPath: ./certs/vhost.pem sslKeyPath: ./certs/vhost.key ...
-
Actualiza el certificado y la clave que aparecen en los archivos
sslCertPath
ysslKeyPath
. -
Aplica los cambios al host virtual:
helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f overrides.yaml
Se debe recopilar información de diagnóstico
Si el problema persiste incluso después de seguir las instrucciones anteriores, recopila la siguiente información de diagnóstico y, luego, comunícate con Atención al cliente de Google Cloud:
- El ID del proyecto de Google Cloud.
- El nombre de la organización de Apigee Hybrid
- El campo
Spec.Details
deApigeeIssue
. -
Archivos a los que hacen referencia
sslCertPath
ysslKeyPath
para el host virtual afectado (opcional).