Problemas conocidos de Apigee

Esta página se aplica a Apigee y Apigee Hybrid.

Consulta la documentación de Apigee Edge.

Selecciona una o más de las siguientes opciones para filtrar esta página:

En esta sección, se enumeran los problemas conocidos de los componentes de Apigee. Para obtener una lista de errores, funciones nuevas y más información sobre actualizaciones, consulta las notas de la versión.

ID del problema Qué se afectó Estado Descripción
N/A hybrid 1.16.0 ABIERTA No se completa la implementación del proxy debido a la falta de permisos de RBAC en Hybrid v1.16.0.

Existe un problema conocido en la versión 1.16.0 en el que es posible que los clústeres híbridos no informen el estado de implementación de los proxies. Esto se debe a que falta un permiso en el rol apigee-manager-role.

Solución alternativa: Agrega el permiso a la plantilla del gráfico de Helm apigee-operator:

  1. Edita el archivo de plantilla del gráfico de Helm apigee-operator apigee-operator/templates/apigee-operators.yaml.
  2. Agrega el verbo - watch al recurso deployments, después del verbo - update en la línea 584.
  3. Actualiza la versión de Helm de apigee-operator.
418274570 hybrid 1.16.0 corregidas No se actualizó la página de notas de la versión de Hybrid con la información de la versión 1.16.0-hotfix.1.

La página de notas de la versión de hybrid no muestra la información de actualización de 1.16.0-hotfix.1. Consulta las notas de la versión de Apigee hybrid v1.16.0-hotfix.1 para obtener detalles sobre la actualización.

484366184 hybrid 1.14.x, hybrid 1.15.x CORREGIDO en la versión hybrid 1.16.0 Las versiones 1.14 y 1.15 de Apigee Hybrid experimentan un bucle de fallas en apigee-ingressgateway-manager cuando se utiliza la versión 1.4.0 o posterior de la API de Gateway de Kubernetes.

Apigee Hybrid 1.16 no se ve afectado por este problema.

Solución alternativa: Si necesitas usar la API de Kubernetes Gateway con las versiones 1.14 o 1.15 de Apigee hybrid, instala la versión v1.3.x de la API de Gateway. Por ejemplo:

kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml

Consulta lo siguiente:

480997525 Apigee 1-17-0-apigee-1 CORREGIDO en Apigee 1-17-0-apigee-2 Las llamadas al proxy fallan con el error The URI contain illegal characters después de la actualización de Netty.

En la versión 1-17-0-apigee-1 de Apigee, una actualización de Netty a la versión 4.1.129.Final introdujo una regresión. Esto puede provocar que las llamadas al proxy de API fallen con un código de estado 400 y el mensaje de error The URI contain illegal characters. Este problema se rastrea externamente en netty/netty#16020.

465834046 hybrid 1.14.3, hybrid 1.15.1 y hybrid 1.16.0 y versiones posteriores para actualizaciones CORREGIDO en las versiones hybrid 1.14.3, hybrid 1.15.1 y hybrid 1.16.0 para instalaciones nuevas Las versiones 1.18 y posteriores de cert-manager cambiaron el valor predeterminado de la política de rotación de claves privadas de Never a Always. Si se rota la clave privada de apigee-ca, se verá afectado el tráfico.

Las versiones más recientes de cert-manager (v1.18 y posteriores) ahora rotan automáticamente las claves privadas. Cuando se rote esta clave para el certificado apigee-ca, se producirá una interrupción.

Solución alternativa: Para evitar este problema, puedes elegir una de las siguientes opciones:

  • No actualices el administrador de certificados a una versión superior a 1.17.x.
  • Edita el certificado apigee-ca en el espacio de nombres cert-manager y establece spec.privateKey.rotationPolicy en Never. Sigue el siguiente procedimiento para editar tu certificado apigee-ca y actualizar cert-manager:
    1. Verifica el contenido de tu certificado apigee-ca para ver si rotationPolicy está configurado:
      kubectl get certificate apigee-ca -n cert-manager -o yaml
      

      Busca los valores en spec.privateKey en el resultado:

      ...
      spec:
        commonName: apigee-hybrid
        duration: 87600h
        isCA: true
        issuerRef:
          group: cert-manager.io
          kind: ClusterIssuer
          name: apigee-root-certificate-issuer
        privateKey:
          algorithm: ECDSA
          # Note: rotationPolicy would appear here if it is set.
          size: 256
        secretName: apigee-ca
      ...
    2. Si rotationPolicy no está configurado o si se configura como Always, edita el certificado apigee-ca para establecer el valor de rotationPolicy en Never:
      1. Realiza primero una ejecución de prueba:
        kubectl patch Certificate \
          --dry-run=server \
          -n cert-manager \
          --type=json \
          -p='[{"op": "replace", "path": "/spec/privateKey/rotationPolicy", "value": "Never"}]' \
          -o=yaml \
          apigee-ca
        
      2. Aplica el parche al certificado:
        kubectl patch Certificate \
          -n cert-manager \
          --type=json \
          -p='[{"op": "replace", "path": "/spec/privateKey/rotationPolicy", "value": "Never"}]' \
          -o=yaml \
          apigee-ca
        
    3. Verifica que el valor de rotationPolicy ahora esté establecido en Never:
      kubectl get certificate apigee-ca -n cert-manager -o yaml
      

      El resultado debería ser similar al siguiente:

      ...
      spec:
        commonName: apigee-hybrid
        duration: 87600h
        isCA: true
        issuerRef:
          group: cert-manager.io
          kind: ClusterIssuer
          name: apigee-root-certificate-issuer
        privateKey:
          algorithm: ECDSA
          rotationPolicy: Never
          size: 256
        secretName: apigee-ca
      ...
    4. Actualiza cert-manager. Con el siguiente comando, se descargará e instalará cert-manager v0.14.2:
      kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v0.14.2/cert-manager.yaml

Consulta los siguientes vínculos:

458417250 Apigee 1-16-0-apigee-4 CORREGIDO en Apigee 1-16-0-apigee-6 El procesador de mensajes devuelve un error 500 con "Duplicate Header "authorization"".

Cuando hay varios encabezados de autorización en una solicitud, la puerta de enlace de entrada de Apigee no los concatena en un solo encabezado. Esto hace que el Message Processor muestre un error 500 con un mensaje "Duplicate Header "authorization"".

Solución alternativa: Si hay varios encabezados de autorización en la solicitud, concaténalos en un solo encabezado. Por ejemplo:

curl -s https://my-hostname.net/mocktarget/echo \
          -H 'authorization: a, b'

462685598 IU ABIERTA

Actualmente, la IU de Apigee no ofrece la opción de aprovisionar organizaciones de Apigee con un Google-owned and Google-managed encryption key.

La IU de Apigee no ofrece la opción de seleccionar un Google-owned and Google-managed encryption key cuando se aprovisionan organizaciones de suscripción.

Solución alternativa: Usa las APIs de Apigee para crear organizaciones basadas en suscripciones con un Google-owned and Google-managed encryption key.

Como se menciona en la documentación de la API de Apigee, cuando creas la organización de Apigee, puedes crearla con un Google-owned and Google-managed encryption key sin proporcionar valores para los campos runtimeDatabaseEncryptionKeyName, apiConsumerDataEncryptionKeyName y controlPlaneEncryptionKeyName.

460431753 Apigee, Apigee hybrid ABIERTA Las políticas de Apigee Model Armor no son compatibles con WebSockets.

Actualmente, las políticas de Apigee Model Armor, incluidas SanitizeUserPrompt y SanitizeModelResponse, no funcionan según lo previsto cuando se usan en proxies de API que controlan conexiones WebSocket. Consulta WebSockets con Apigee para obtener más información sobre la configuración de WebSocket.

433759657 Apigee CORREGIDO en 1-16-0-apigee-3 o versiones posteriores

Después de la actualización a 1-16-0-apigee-3, es posible que algunas organizaciones de Apigee experimenten errores de HTTP 500 debido a un java.lang.NoClassDefFoundError dentro de una política de Java Callout. El error se parece al siguiente:

{"fault":{"faultstring":"Failed to execute JavaCallout. org/apache/commons/lang/StringUtils","detail":{"errorcode":"steps.javacallout.ExecutionError"}}}

Este error se produce cuando una política de Java Callout depende de forma incorrecta de bibliotecas destinadas al uso interno de Apigee en lugar de proporcionar sus propias dependencias.

Acción obligatoria: Para evitar este problema, los desarrolladores deben asegurarse de que todos los Callouts de Java sean autónomos y utilicen sus propias bibliotecas dedicadas, sin depender de la ruta de acceso a la clase interna de Apigee.

En el proxy de API que utiliza la biblioteca JAR de Apache Commons, importa el archivo JAR de Apache Commons para incluirlo como recurso del proxy. Para obtener más información, consulta los lineamientos de recursos de Java.

451841788 hybrid 1.14.3 y hybrid 1.15.1 corregidas Apigee hybrid requiere la propiedad mintTaskScheduler.serviceAccountPath incluso cuando la Monetización no está habilitada.

La actualización del gráfico apigee-org puede fallar si no se establece la propiedad mintTaskScheduler.serviceAccountPath, incluso si la monetización no está habilitada:

Error: UPGRADE FAILED: execution error at (apigee-org/templates/mint-task-scheduler-gsa-secret.yaml:12:63): mintTaskScheduler.serviceAccountPath is required!

Solución alternativa: Quita los archivos apigee-org/templates/mint-task-scheduler-gsa-secret.yaml y apitee-org/templates/mint-task-scheduler-sa.yaml.

De manera opcional, puedes mover los archivos a una ubicación separada fuera del directorio del gráfico de Helm. También puedes volver a descargarlos si quieres habilitar la monetización en el futuro. Para ello, sigue las instrucciones que se indican en el Paso 2: Descarga los gráficos de Helm para Apigee.

Por ejemplo, desde el directorio helm-charts/:

  1. ls apigee-org/templates/

    Resultado:

    apigee-org-guardrails.yaml              mart-sa.yaml
    apigee-proxy-chaining-certificate.yaml  mint-task-scheduler-gsa-secret.yaml
    apigee-proxy-chaining-route.yaml        mint-task-scheduler-sa.yaml
    ax-hash-salt-secret.yaml                NOTES.txt
    connect-agent-gsa-secret.yaml           organization.yaml
    connect-agent-sa.yaml                   udca-gsa-secret.yaml
    data-encryption-secret.yaml             udca-sa.yaml
    encryption-keys-secret.yaml             watcher-gsa-secret.yaml
    _helpers.tpl                            watcher-sa.yaml
    mart-gsa-secret.yaml
    
  2. (Opcional:)
    cp apigee-org/templates/mint-task-scheduler-gsa-secret.yaml /tmp/
    cp apigee-org/templates/mint-task-scheduler-sa.yaml /tmp/
  3. rm apigee-org/templates/mint-task-scheduler-gsa-secret.yaml
  4. rm apigee-org/templates/mint-task-scheduler-sa.yaml
  5. ls apigee-org/templates/

    Resultado:

    apigee-org-guardrails.yaml              mart-gsa-secret.yaml
    apigee-proxy-chaining-certificate.yaml  mart-sa.yaml
    apigee-proxy-chaining-route.yaml        NOTES.txt
    ax-hash-salt-secret.yaml                organization.yaml
    connect-agent-gsa-secret.yaml           udca-gsa-secret.yaml
    connect-agent-sa.yaml                   udca-sa.yaml
    data-encryption-secret.yaml             watcher-gsa-secret.yaml
    encryption-keys-secret.yaml             watcher-sa.yaml
    _helpers.tpl
    
451375397 hybrid 1.14.3 CORREGIDO en la versión hybrid 1.15.1

La secuencia de comandos apigee-pull-push.sh puede devolver un mensaje de error No such image, por ejemplo:

Error response from daemon: No such image: gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:latest

Solución: Edita la secuencia de comandos HELM_CHARTS_DIR/apigee-operator/etc/tools/apigee-pull-push.sh para cambiar la línea 114 en la función docker_tag() de la siguiente manera:

  docker tag "${source}/$i" "${dest}/$i:${TAG}"

Para:

  docker tag "${source}/$i:${TAG}" "${dest}/$i:${TAG}"
405936071 hybrid 1.15.0 CORREGIDO en la versión hybrid 1.15.1

Cuando se especifica metrics.serviceAccountRef o metrics.serviceAccountSecretProviderClass en el archivo overrides.yaml, el rol de telemetría se dirigirá a la cuenta de servicio incorrecta.

Solución alternativa: Aplica el parche _helper.tpl en el gráfico apigee-operator/ y vuelve a aplicarlo.

  1. Edita apigee-operator/templates/_helpers.tpl y quita las siguientes líneas en negrita:

    {{- define "metricsSA" -}}
      {{- $metricsName := "apigee-metrics" }}
      {{- $telemetryName := "apigee-telemetry" -}}
      {{- $generatedName := include "orgScopeEncodedName" (dict "name" .Values.org) -}}
      {{- if .Values.gcp.workloadIdentity.enabled -}}
      {{- printf "%s-sa" $metricsName -}}
      {{- else if .Values.serviceAccountSecretProviderClass -}}  <-- DELETE
      {{- .Values.serviceAccountSecretProviderClass -}}          <-- DELETE
      {{- else if .Values.metrics.serviceAccountRef -}}          <-- DELETE
      {{- .Values.metrics.serviceAccountRef -}}                  <-- DELETE
      {{- else if .Values.multiOrgCluster -}}
      {{- printf "%s-%s" $metricsName $generatedName -}}
      {{- else -}}
      {{- printf "%s-%s" $metricsName $telemetryName -}}
      {{- end -}}
    {{- end -}}

    La sección resultante debería verse de la siguiente manera:

    {{- define "metricsSA" -}}
      {{- $metricsName := "apigee-metrics" }}
      {{- $telemetryName := "apigee-telemetry" -}}
      {{- $generatedName := include "orgScopeEncodedName" (dict "name" .Values.org) -}}
      {{- if .Values.gcp.workloadIdentity.enabled -}}
      {{- printf "%s-sa" $metricsName -}}
      {{- else if .Values.multiOrgCluster -}}
      {{- printf "%s-%s" $metricsName $generatedName -}}
      {{- else -}}
      {{- printf "%s-%s" $metricsName $telemetryName -}}
      {{- end -}}
    {{- end -}}
  2. Vuelve a aplicar el gráfico apigee-operator.

    helm upgrade operator apigee-operator/ \
        --namespace APIGEE_NAMESPACE \
        --atomic \
        -f overrides.yaml
419856132 hybrid 1.14.2 y versiones posteriores CORREGIDO en las versiones hybrid 1.14.3 y 1.15.0 Si gateway.networking.k8s.io/v1 está instalado en tu clúster,es posible que no se pueda actualizar apigee-ingressgateway-manager.

Para obtener una solución alternativa, sigue los pasos que se indican en el problema conocido 416634326.

378686709 Apigee
Apigee Hybrid
CORREGIDO en Apigee (se requiere una llamada de asistencia)
CORREGIDO en hybrid 1.14.3 y hybrid 1.15.1 (se requiere un procedimiento)

El uso de comodines (*) en las rutas base del proxy de Apigee puede entrar en conflicto con otras rutas base explícitas, lo que genera un error 404. Por ejemplo, el uso de las siguientes rutas base para dos proxies implementados en el mismo entorno puede generar un error 404 cuando se llama a Proxy-2:

Proxy-1: /a/v1/b
Proxy-2: /a/*/c

En este caso, las llamadas a la ruta base explícita se resolverán correctamente, pero las llamadas a Proxy-2 pueden devolver un 404 si la ruta comodín se evalúa como /a/v1/c.

Se corrigió: Este problema se solucionó en Apigee y en Hybrid 1.14.3 y versiones posteriores. Sin embargo, la corrección no está habilitada de forma predeterminada. Si deseas habilitar el uso de comodines en las rutas de acceso base, haz lo siguiente:

  • Los clientes con organizaciones de Apigee deben comunicarse con el equipo de asistencia de Apigee para habilitar la corrección si es necesario.
  • Los clientes con organizaciones de Apigee hybrid deben seguir el siguiente procedimiento para habilitar la corrección si es necesario.

Procedimiento: Para habilitar el uso de comodines (*) en las rutas base de los proxies de Apigee en Apigee Hybrid, haz lo siguiente:

  1. Agrega la siguiente estrofa a tu archivo overrides.yaml antes de actualizar a la versión híbrida 1.14.3 o posterior:
    runtime:
      cwcAppend:
        conf_message-processor-communication_classificationV2.enabled: "true"
    
  2. Aplica los cambios al gráfico apigee-env. Repite el cambio para cada entorno de tu instalación.
    helm upgrade ENV_RELEASE_NAME apigee-env/ \
      --install \
      --namespace APIGEE_NAMESPACE \
      --set env=ENV_NAME \
      -f OVERRIDES_FILE
    
    • ENV_RELEASE_NAME es un nombre que se usa para hacer un seguimiento de la instalación y las actualizaciones del gráfico apigee-env. Este nombre debe ser único entre los demás nombres de versiones de Helm en tu instalación. Por lo general, es igual a ENV_NAME. Sin embargo, si tu entorno tiene el mismo nombre que tu grupo de entornos, debes usar nombres de versión diferentes para el entorno y el grupo de entornos, por ejemplo, dev-env-release y dev-envgroup-release. Para obtener más información sobre las versiones en Helm, consulta Tres conceptos importantes en la documentación de Helm.
    • ENV_NAME es el nombre del entorno que estás actualizando.
    • OVERRIDES_FILE es tu archivo de anulaciones.
  3. Actualiza a hybrid 1.14.3 o una versión posterior.
382565315 hybrid 1.13.0,
hybrid 1.13.1,
hybrid 1.13.2,
hybrid 1.14.0
CORREGIDO en las versiones hybrid 1.13.3 y 1.14.1

El uso de LogTimer en SecurityPolicy puede provocar una pérdida de memoria.

En algunas circunstancias, los subprocesos de registro de Apigee hybrid podrían consumir toda la memoria disponible. Por ejemplo, las entradas de registro frecuentes que documentan errores de permisos asociados con Javacallout podrían causar errores de OOM.

421190799 Apigee CORREGIDO en Apigee 1-15-0-apigee-7

El procesador de extensiones de Apigee no admite más de 100 KB de procesamiento de datos como parte de los eventos del cuerpo de la solicitud y la respuesta.

432315283 Apigee ABIERTA

Cuando actualizas un almacén de claves o de confianza sin crear uno nuevo, es posible que las actualizaciones del tiempo de ejecución fallen y provoquen el siguiente error intermitente:

  {"fault":{"faultstring":"SSL Handshake failed sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target","detail":{"errorcode":"messaging.adaptors.http.flow.SslHandshakeFailed"}}}

El error es intermitente porque la actualización del almacén de claves o del almacén de confianza puede fallar en un Pod de tiempo de ejecución, pero tener éxito en otros Pods. Para evitar este problema, actualiza el almacén de claves o de confianza creando uno nuevo. Vuelve a dirigir tu referencia al nuevo almacén de claves o de confianza, como se describe en Cuando vence un certificado.

412740465 hybrid 1.14.0 y versiones posteriores CORREGIDO en las versiones hybrid 1.14.3 y 1.15.1

A partir de la versión 1.14.0 de Apigee Hybrid, se quitó la adición automática de encabezados de seguimiento de Zipkin (x-b3-*).

N/A

Apigee Hybrid ABIERTA Configurar el reenvío de proxy que no es de API con httpProxy sin establecer también envs.httpProxy no aplicará la configuración del proxy a las llamadas externas del entorno de ejecución de Apigee a servicios como Pub/Sub o a otras APIs de Google Cloud.

Si solo especificas httpProxy, también debes asegurarte de que *.googleapis.com esté en la lista de entidades permitidas para tus pods de Apigee Runtime y, así, habilitar la conectividad a estos servicios.

Consulta Configura el proxy de reenvío para los proxies de API.

416634326 hybrid 1.14.2 y versiones posteriores CORREGIDO en las versiones hybrid 1.14.3 y 1.15.1

La presencia de definiciones de recursos personalizados (CRD) de istio.io en un clúster híbrido de Apigee puede provocar errores en los Pods de apigee-ingressgateway-manager.

Durante la actualización de Apigee Hybrid desde versiones anteriores a la 1.14.2 o posterior, la presencia de CRD istio.io existentes puede provocar errores en las sondas de preparación de los contenedores discovery de los Pods apigee-ingressgateway-manager.

Solución alternativa: Apigee Hybrid v1.14.2 o versiones posteriores no requieren las CRD de istio.io. Existen dos opciones para solucionar este problema:

  • Borra las CRD de istio.io si no usas Istio para ningún otro propósito que no sea Apigee en tu clúster.
  • Actualiza apigee-ingressgateway-manager clusterrole para agregar permisos para istio.io.

Después de cada una de las opciones anteriores, deberás reiniciar tus pods de apigee-ingressgateway-manager.

Borra los CRD

  1. Enumera los CRD de istio.io en tu clúster en un archivo CSV:
    kubectl get crd -o custom-columns=NAME:metadata.name | grep istio.io > istio-crd.csv
  2. Opcional: Guarda los CRD de forma local en caso de que necesites volver a crearlos:
    kubectl get crd $(cat istio-crd.csv) -o yaml > istio-crd.yaml
  3. Borra los CRD de istio.io:

    Prueba de validación:

    kubectl delete crd $(cat istio-crd.csv) --dry-run=client

    Ejecución:

    kubectl delete crd $(cat istio-crd.csv)

Actualiza ClusterRole

  1. Obtén el clusterrole apigee-ingressgateway-manager actual:
    kubectl get clusterrole apigee-ingressgateway-manager-apigee -o yaml > apigee-ingressgateway-manager-apigee-clusterrole.yaml
  2. Copia el ClusterRole en una ubicación nueva:
    cp apigee-ingressgateway-manager-apigee-clusterrole.yaml apigee-ingressgateway-manager-apigee-clusterrole-added-istio-permissions.yaml
  3. Agrega los siguientes permisos adicionales al final del archivo:
    - apiGroups:
      - gateway.networking.k8s.io
      resources:
      - gatewayclasses
      - gateways
      - grpcroutes
      - httproutes
      - referencegrants
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - networking.istio.io
      resources:
      - sidecars
      - destinationrules
      - gateways
      - virtualservices
      - envoyfilters
      - workloadentries
      - serviceentries
      - workloadgroups
      - proxyconfigs
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - security.istio.io
      resources:
      - peerauthentications
      - authorizationpolicies
      - requestauthentications
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - telemetry.istio.io
      resources:
      - telemetries
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - extensions.istio.io
      resources:
      - wasmplugins
      verbs:
      - get
      - list
      - watch
    
  4. Aplica el rol:
    kubectl -n APIGEE_NAMESPACE apply -f apigee-ingressgateway-manager-apigee-clusterrole-added-istio-permissions.yaml

Después de completar las opciones anteriores, deberás reiniciar tus Pods de apigee-ingressgateway-manager.

  1. Enumera los Pods de ingress-manager que se reinstalarán o volverán a crear:
    kubectl get deployments -n APIGEE_NAMESPACE

    Resultado de ejemplo:

    NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
    apigee-controller-manager       1/1     1            1           32d
    apigee-ingressgateway-manager   2/2     2            2           32d
    
  2. Reinicia los Pods de ingress-manager:
    kubectl rollout restart deployment -n APIGEE_NAMESPACE apigee-ingressgateway-manager
  3. Después de unos minutos, supervisa los Pods de apigee-ingressgateway-manager:
    watch -n 10 kubectl -n APIGEE_NAMESPACE get pods -l app=apigee-ingressgateway-manager

    Resultado de ejemplo:

    NAME                                             READY   STATUS    RESTARTS   AGE
    apigee-ingressgateway-manager-12345abcde-678wx   3/3     Running   0          10m
    apigee-ingressgateway-manager-12345abcde-901yz   3/3     Running   0          10m
    
414499328 hybrid 1.14.1 CORREGIDO en las versiones hybrid 1.14.3 y 1.15.0

ApigeeTelemetry puede atascarse en el estado creating.

Este problema se observó en instalaciones de OpenShift.

Solución alternativa: Modifica la plantilla del gráfico apigee-operator para crear el acceso correcto de clusterrole.

  1. Edita el archivo de plantilla helm-charts/apigee-operator/templates/apigee-operators.yaml y busca la definición del rol de clúster -apigee-manager-role-. Comienza con:
    kind: ClusterRole
    metadata:
      name: apigee-manager-role-{{ include 'namespace' }}
    rules:
      ...
                  
  2. Busca el bloque - apiGroups: apiregistration.k8s.io y agrega el recurso apiservices/finalizers a la lista de recursos:
    - apiGroups:
      - apiregistration.k8s.io
      resources:
      - apiservices
      - apiservices/finalizers
      verbs:
      - create
      - delete
      - get
      - patch
      - update
      
  3. Busca el bloque - apiGroups: authorization.k8s.io y agrega el bloque - apiGroups: apigee.cloud.google.com después del final del bloque con el siguiente texto:
    - apiGroups:
      - apigee.cloud.google.com
      resources:
      - apigeetelemetries/finalizers
      verbs:
      - get
      - patch
      - update
    

    Por ejemplo:

    - apiGroups:
      - authorization.k8s.io
      resources:
      - subjectaccessreviews
      verbs:
      - create
      - get
      - list
    - apiGroups:
      - apigee.cloud.google.com
      resources:
      - apigeetelemetries/finalizers
      verbs:
      - get
      - patch
      - update
    
  4. Aplica los cambios al gráfico apigee-operator:

    Prueba de validación:

    helm upgrade operator apigee-operator/ \
      --install \
      --namespace APIGEE_NAMESPACE \
      --atomic \
      -f OVERRIDES_FILE \
      --dry-run=server
    

    Actualiza el gráfico:

    helm upgrade operator apigee-operator/ \
      --install \
      --namespace APIGEE_NAMESPACE \
      --atomic \
      -f OVERRIDES_FILE \
    
402739748 Apigee ABIERTA

Los APIproducts se limitan a 50 rutas. Si agregas rutas adicionales, aparecerá un mensaje de error: Operation group limit of 51 exceeded in Operation Config

Solución alternativa: Usa patrones de comodines para combinar rutas de recursos y operaciones, como se describe en Configura rutas de recursos.

Solución alternativa: Crea varios productos de API. Esta solución alternativa se verificó y es viable para quienes agregan muchos proxies de API a un producto de API. La app asociada con tus productos de API debería actualizarse para incluir la nueva, pero se demostró que no es necesario cambiar las credenciales ni los detalles de la solicitud del cliente.

291294211 Apigee ABIERTA

Se produce un error al usar las APIs de Informes personalizados y Estadísticas cuando se selecciona por tipo de comisión para las instalaciones que usan la Monetización.

Solución alternativa: Recupera todos los tipos de comisiones en el cliente antes de filtrar.

391140293 Apigee
Apigee Hybrid
corregidas

El ajuste de escala de los Pods de entrada de Istio puede causar un error 503.

En ocasiones, el ajuste de escala de los Pods de entrada de Istio puede provocar un error 503. Si se produce un error de 503, los registros del balanceador de cargas muestran el siguiente mensaje: statusDetails: backend_connection_closed_before_data_sent_to_client.

Solución: Ajusta la escala de los Pods de entrada de Istio de forma manual.

368155212 hybrid 1.14.0
hybrid 1.14.1
CORREGIDO en la versión hybrid 1.14.2

ESS y non-ESS La rotación de credenciales de Cassandra no funciona en organizaciones con límites de proxy mejorados.

El tráfico del entorno de ejecución no se ve afectado.

401624396 hybrid 1.13.x
hybrid 1.14.x
ABIERTA La tarea de restablecimiento de Apigee falla durante el restablecimiento de GCP o HYBRID copias de seguridad de proveedores de servicios en la nube tomadas de una configuración multirregional. Este problema no afecta la restauración de CSI.

Las copias de seguridad tomadas de la configuración multirregional con los proveedores de nube GCP y HYBRID contienen información sobre todas las regiones híbridas que existían cuando se tomó la instantánea. Además, como esas regiones ya no existen, el trabajo de restablecimiento entrará en conflicto con el estado actual de Cassandra y fallará con el siguiente error: Unrecognized strategy option passed to NetworkTopologyStrategy.

401746333 Apigee
hybrid 1.12.4
hybrid 1.13.3
hybrid 1.14.1
corregidas

La biblioteca Nimbus JOSE + JWT puede provocar un java.lang.ClassCircularityError cuando se usa una política de JavaCallout .

Si tienes una organización habilitada para Apigee Hybrid con una política JavaCallout que usa la biblioteca Nimbus JOSE + JWT, no actualices a Hybrid 1.12.4, Hybrid 1.13.3 ni Hybrid 1.14.1.

397693324 hybrid 1.14.0
hybrid 1.14.1
CORREGIDO en la versión hybrid 1.14.2

ESS y non-ESS La rotación de credenciales de Cassandra multirregión fallará en todas las regiones, excepto en la primera.

El tráfico del entorno de ejecución no se ve afectado.

Sigue la solución alternativa proporcionada para resolver este problema.

391861216 hybrid 1.13.x
hybrid 1.14.x
CORREGIDO en las versiones hybrid 1.13.3 y 1.14.1 El reinicio de los Pods de Cassandra en un clúster híbrido que se restableció con los proveedores de Cloud GCP o HYBRID hará que los Pods entren en el estado CrashLoopBackoff. Este problema no afecta la restauración de CSI.

Los Pods de Cassandra se reiniciarán después de aplicar los cambios de anulación de Cassandra, como cuando se vuelve a habilitar la copia de seguridad, lo que activará este problema. Los registros de un pod de Cassandra en el estado CrashLoopBackoff mostrarán el siguiente error: Cannot change the number of tokens from 512 to 256.

Sigue la solución alternativa proporcionada para resolver este problema.

388608440 hybrid 1.11.x
hybrid 1.12.x
CORREGIDO en la versión hybrid 1.12.4 y versiones posteriores El trabajo de copia de seguridad de Apigee no limpia las instantáneas intermedias de Cassandra.

En algunos casos excepcionales, el trabajo de copia de seguridad de Apigee no limpia las instantáneas intermedias de Cassandra que crea mientras realiza copias de seguridad con HYBRID o GCP proveedores de Cloud. Esto solo sucede si un problema subyacente impide que el proceso de copia de seguridad se conecte correctamente al servidor remoto o a Cloud Storage. Si el problema de conexión persiste, esas instantáneas de Cassandra restantes se pueden acumular con el tiempo y utilizar el almacenamiento en los discos de Cassandra. Si te afecta este problema, corrige el problema de conexión subyacente y, luego, sigue los pasos que se proporcionan en la guía de solución de problemas de Cassandra para borrar manualmente las instantáneas de Cassandra.

392135466 hybrid 1.14.0 ABIERTA El encadenamiento de proxies con mTLS no se admite cuando se usan los límites de proxy mejorados por entorno
383334511 Apigee ABIERTA Se creó una entrada de KVM con un nombre inesperado

Cuando se usa una política KeyValueMapOperations con el alcance apiproxy y se llama a la operación <Put> de la política en un flujo compartido a través de un gancho de flujo, la entrada de KVM se crea con el nombre del flujo compartido. Se espera que se cree con el nombre del proxy de API.

384937220

hybrid 1.14.0 corregidas Es posible que falle la creación de versiones de Helm cuando hay varios hosts virtuales.

Cuando hay varios hosts virtuales, es posible que falle la creación de la versión de Helm debido a nombres ApigeeRoute en conflicto. La solución alternativa es ejecutar los siguientes comandos para cada host virtual durante la creación:

kubectl annotate ar apigee-ingressgateway-internal-chaining-PROJECT_ID_SUFFIX -n APIGEE_NAMESPACE meta.helm.sh/release-name=NEW_ENV_GROUP_NAME --overwrite
kubectl annotate cert apigee-ingressgateway-internal-chaining-PROJECT_ID_SUFFIX -n APIGEE_NAMESPACE meta.helm.sh/release-name=NEW_ENV_GROUP_NAME --overwrite

Donde:

  • PROJECT_ID_SUFFIX es un sufijo único para la encadenamiento interno de tu proyecto en Kubernetes. Puedes encontrar este sufijo con el siguiente comando:
    kubectl get svc -n apigee -l app=apigee-ingressgateway | grep internal-chaining

    El resultado se verá similar a lo siguiente:

    kubectl get svc -n apigee -l app=apigee-ingressgateway | grep internal-chaining
    apigee-ingressgateway-internal-chaining-my-project--1234567    ClusterIP  34.118.226.140  <none>    15021/TCP,443/TCP    5d6h

    En el resultado de ejemplo, my-project--1234567 es el PROJECT_ID_SUFFIX.

  • APIGEE_NAMESPACE es el espacio de nombres de Apigee.
  • NEW_ENV_GROUP_NAME es el nombre del grupo de entornos adicional. Actualiza este valor para cada host virtual.

N/A

Apigee Hybrid ABIERTA Una cuenta de servicio no válida puede enviar la API de UpdateControlPlaneAccess a un bucle de reintento.

Si un usuario proporciona una cuenta de servicio no válida a la API de UpdateControlPlaneAccess, la operación entra en un bucle de reintento que bloquea de manera efectiva a la organización para que no invoque la API hasta que se agote el tiempo de espera de la operación.

373722434 hybrid 1.13.x CORREGIDO a partir de la versión hybrid 1.13.2 y posteriores El trabajo de copia de seguridad de Apigee no puede subir datos a buckets de Cloud Storage con políticas de retención.

Cuando se usa el proveedor de nube GCP, el trabajo de copia de seguridad de Apigee no puede subir datos a buckets de Cloud Storage con políticas de retención. Es posible que los archivos de copia de seguridad se queden en el bucket de Cloud Storage con un tamaño de archivo de 0 bytes.

Solución alternativa: Inhabilita las políticas de retención en el bucket de Cloud Storage.

341099433

Apigee Hybrid ABIERTA El componente apigee-logger no admite la federación de identidades para cargas de trabajo.

apigee-logger utiliza cuentas de servicio de IAM de Google para enviar registros a Cloud Logging. Esto se debe a que FluentBit no es compatible con la federación de identidades de cargas de trabajo, lo que impide que apigee-logger use esta función.

N/A

Apigee Hybrid ABIERTA El seguimiento distribuido en Apigee Hybrid no es compatible con las organizaciones que usan la residencia de datos.

N/A

Apigee ABIERTA Apigee no admite la nueva encriptación de claves, lo que significa que, incluso después de la rotación, se seguirá usando la versión de clave anterior y no podrás cambiar la clave de CMEK después de crear la organización.

270574696

Apigee corregidas Apigee no admite Cloud External Key Manager.

268104619

Apigee
Apigee Hybrid
ABIERTA En la política OASValidation, cuando especificas un tipo de array en el encabezado, el MP arrojará un error, incluso si la entrada es válida.

364872027

Apigee
Apigee Hybrid
corregidas Error de análisis de PEM en las políticas de JWT/JWS debido a un formato no estándar

En el caso de Apigee y Apigee Hybrid 1.13 y versiones posteriores, cualquier desviación en el formato PEM requerido de las claves que se usan en las políticas de JWS o JWT de Apigee puede generar un error de análisis. Por ejemplo, no se permite colocar ningún carácter que no sea una línea nueva (/n) inmediatamente antes de la línea "-----END" (límite posterior al encapsulamiento), lo que generará un error.

Para evitar este error, asegúrate de que no haya caracteres distintos de una línea nueva, como espacios finales o barras, que precedan inmediatamente al límite posterior al encapsulamiento.

Para obtener más información sobre la codificación que se usa para las claves públicas o privadas, consulta RFC 7468 de IETF.

310191899

Apigee
Apigee Hybrid
ABIERTA Tiempo de espera cuando se implementan proxies de API y flujos compartidos

Es posible que los siguientes extremos experimenten tiempos de espera cuando se usen con un volumen alto de consultas por segundo (QPS):

Para reducir la probabilidad de que se produzcan tiempos de espera, te recomendamos que establezcas un objetivo de 1 QPS cuando uses estos extremos o que verifiques el estado de una implementación antes de intentar otra.

329304975

Apigee corregidas Límite en la cantidad de rutas de acceso base por entorno

Apigee aplica un límite temporal de 1,000 rutas de acceso base por entorno para evitar posibles fallas cuando se implementan revisiones del proxy de API.

Mientras este límite esté vigente, puedes implementar hasta 1,000 revisiones del proxy de API (cada una con una sola ruta de acceso base) por entorno. Si tus proxies de API o revisiones contienen más de una ruta de acceso base, la cantidad total de rutas de acceso base por entorno no debe superar las 1,000.

333791378

Hybrid 1.12.0 ABIERTA La herramienta de migración de Helm no admite las funciones de copia de seguridad y restablecimiento de Cassandra

Si deseas conocer los pasos necesarios para instalar un parche para la solución alternativa, consulta Soluciona problemas.

310384001

hybrid 1.11.0 ABIERTA Las fallas de validación de certificados pueden mostrar un error 502 en lugar de una respuesta de error 503 cuando los usuarios agregan la etiqueta <Enforce>true</Enforce> en el bloque <SSLInfo> de destino para la validación predeterminada de certificados TLS de extremo de destino.

289583112

Apigee ABIERTA La política OASValidation no funciona con los requisitos de seguridad globales en las especificaciones de OpenAPI.

Si la política OASValidation especifica un <OASResource> con requisitos de seguridad establecidos a nivel global, no se aplicarán los requisitos de seguridad.

Solución alternativa: Para garantizar la aplicación, todos los requisitos de seguridad deben establecerse en el nivel de operación en la especificación de OpenAPI que se pasa en el elemento <OASResource> de la política OASValidation.

205666368

Apigee
Hybrid 1.10.2
Hybrid 1.10.3
CORREGIDO en Apigee 1-10-0-apigee-6 y, además,
Hybrid 1.10.3-hotfix.1
Apigee Hybrid no valida el certificado de destino de forma predeterminada.

Consulta Información para configurar opciones de TLS en un extremo o un servidor de destino.

295929616

Hybrid 1.10.0 y versiones posteriores RESUELTO en la versión Hybrid 1.10.3 La instalación de Apigee Hybrid 1.10 en OpenShift (OSE) puede fallar con errores de memoria insuficiente.

La instalación o actualización de Apigee Hybrid 1.10.0 a 1.10.2 puede fallar en OSE debido a errores de memoria insuficiente. Se corrigió en la versión 1.10.3 de Apigee Hybrid.

292118812

híbrido 1.10.1 corregidas Es posible que apigee-udca no respete la configuración del Proxy HTTP.

Si el firewall fuerza todo el tráfico a través de un proxy de reenvío, apigee-udca puede pasar a un estado de retirada del bucle de fallas.

292558790

Apigee
hybrid 1.8.0 y versiones posteriores
ABIERTA La política OASValidation falla con el error Unable to parse JSON.
  • La política OASValidation falla cuando el contenido JSON no coincide con el patrón previsto. Por ejemplo, si un encabezado espera un valor en el formato <text>@<text> y se propaga con texto al que le falta el símbolo @, la política fallará y mostrará el error Unable to parse JSON.
  • Si la política OASValidation especifica un <OASResource> que contiene un parámetro path que usa un esquema $ref, la política generará un error Unable to parse JSON - Unrecognized token.

    Solución alternativa: No uses $ref en los parámetros path de la especificación de OpenAPI especificada en el elemento <OASResource>.

297012500

Apigee
hybrid 1.8.0 y versiones posteriores
ABIERTA Problemas de implementación con la validación de OAS cuando se usa una referencia circular
  • La implementación de Apigee fallará en la política de validación de OAS cuando se usen referencias circulares para la especificación de OpenAPI 3.0.0, ya que entra en un bucle infinito.
  • Solución alternativa: Usa un archivo yaml de especificación de OpenAPI sin referencias circulares.

289254725

Apigee
Apigee 1-10-0-apigee-3
híbrido 1.8.8
híbrido 1.9.3
CORREGIDO en Apigee 1-10-0-apigee-5
CORREGIDO en el híbrido
Es posible que fallen las implementaciones de proxy que incluyan la política OASValidation.

Las implementaciones de proxy que incluyen la política OASValidation pueden fallar si se cumple lo siguiente:

  • La especificación de OpenAPI que se usa para la validación en la política OASValidation está en formato YAML.
  • La especificación de OpenAPI con formato YAML contiene un número de punto flotante. Por ejemplo:
    schema:
    type: number
    example: 2.345

284500460

Apigee
Apigee 1-10-0-apigee-1
corregidas Aumento de la latencia para la política de Message Logging cuando se usa con Cloud Logging.

Para evitar el aumento de la latencia en las respuestas al cliente, la política de Message Logging debe estar adjunta a PostClientFlow. Para obtener más información sobre el uso de políticas en PostClientFlows, consulta Controla proxies de API con flujos.

282997216

Hybrid 1.8.0 y versiones posteriores
Hybrid 1.9.0 y versiones posteriores
ABIERTA Caracteres especiales no permitidos en la contraseña de Cassandra Jolokia

Usa solo caracteres alfanuméricos para la contraseña de Cassandra Jolokia. El uso de caracteres especiales (incluidos, sin limitaciones, “!”, “@”, “#”, “$”, “%”, “^”, “&”, y “*”) puede causar que el inicio de Cassandra falle.

270371160

hybrid 1.9.0 y versiones posteriores corregidas La puerta de enlace de entrada de Apigee solo admite algoritmos de cifrado o protocolo TLS1.2+

La puerta de enlace de entrada de Apigee solo es compatible con TLS1.2+, y no con versiones anteriores de TLS.

269139342

hybrid 1.7.0 y versiones posteriores corregidas apigeectl getOrg no sigue la configuración de HTTP_PROXY en overrides.yaml

La validación de la organización de Apigee no sigue las reglas del proxy de reenvío HTTP establecidas en overrides.yaml. Configura validateOrg: false para omitir esta validación.

266452840

Apigee
Hybrid 1.7.0 y versiones posteriores
Hybrid 1.8.0 y versiones posteriores
Hybrid 1.9.0 y versiones posteriores
corregidas Los sockets web no funcionan con Anthos Service Mesh 1.15.3 en Apigee X y Apigee Hybrid

En ciertas circunstancias, los sockets web no funcionan para Apigee X y Apigee Hybrid cuando se usa Anthos Service Mesh 1.15.3-asm.6.

287922301

Apigee ABIERTA Inexactitudes en las tasas de monetización en torno a los límites de las bandas de volumen

Debido al diseño actual, es posible que se evalúen tasas de monetización inexactas para las transacciones que se producen cerca de un umbral de banda de volumen. Esto se manifiesta en una cantidad excesiva de transacciones que se evalúan con la tarifa previa al umbral y es más probable que ocurra cuando se realizan muchas transacciones para una combinación determinada de desarrollador y plan de tarifas en un período de 30 segundos. Esto significa que los informes de monetización registrarán cargos en exceso con tasas agrupadas decrecientes y registrarán cargos insuficientes con tasas agrupadas crecientes. Este problema se produce en Apigee X y Apigee Hybrid, y no se conoce ninguna solución alternativa. Se comenzó a resolver el problema y estará disponible en una versión futura.

242213234

Apigee corregidas El producto de API no se carga con el error “no hay conexiones disponibles”

Este error puede mostrarse cuando se intentan cargar productos de API: “Los productos no se cargaron correctamente. Error: No hay conexiones disponibles en los agentes de conexión de Apigee”.

El problema se produce después de habilitar el control del servicio de VPC en el proyecto de Google Cloud y agregar iamcredentials.googleapis.com como uno de los servicios restringidos en el perímetro de servicio.

Solución: Crea una regla de salida de forma manual, como la siguiente:

-egressTo:
    operations:
    -serviceName: "iamcredentials.googleapis.com"
        methodSelectors:
        -method:
    resources:
    -projects/608305225983
  egressFrom:
    identityType: ANY_IDENTITY

247540503

Hybrid 1.7.0 y versiones posteriores
Hybrid 1.8.0 y versiones posteriores
corregidas Una condición de carrera con búsqueda de claves de encriptación puede causar fallas en la búsqueda de KVM.

En determinadas circunstancias, con una capacidad de procesamiento muy alta, una condición de carrera con la búsqueda de claves de encriptación puede causar fallas en la búsqueda de KVM.

258699204

hybrid 1.8.0 y versiones posteriores corregidas Las solicitudes de memoria y los límites predeterminados de los Pods de métricas cambiaron involuntariamente en 1.8.x.

Si observas problemas con los Pods de apigee-telemetry-app o apigee-telemetry-proxy que no se ejecutan, cambia las propiedades y los límites de solicitudes de metrics para que coincidan con los siguientes valores predeterminados en Referencia de la propiedad de configuración: métricas.

Propiedad de configuración Valor predeterminado
metrics.aggregator.resources.requests.memory: 512Mi
metrics.aggregator.resources.limits.memory: 3Gi
metrics.app.resources.requests.memory: 512Mi
metrics.app.resources.limits.memory: 1Gi
metrics.appStackdriverExporter.resources.requests.memory: 512Mi
metrics.appStackdriverExporter.resources.limits.memory: 1Gi
metrics.proxy.resources.requests.memory: 512Mi
metrics.proxy.resources.limits.memory: 1Gi
metrics.proxyStackdriverExporter.resources.requests.memory: 512Mi
metrics.proxyStackdriverExporter.resources.limits.memory: 1Gi

Aplica los cambios con apigeectl apply con la marca ‑‑telemetry:

apigeectl apply --telemetry -f overrides.yaml

260324159

Apigee 1-9-0-apigee-16 corregidas Implementaciones de flujo compartido y proxy de API de hasta 30 minutos.

Los proxies de API y los flujos compartidos pueden tardar entre 20 y 30 minutos en implementarse en el plano del entorno de ejecución en ciertas circunstancias debido a un error de “socket cerrado” en el sincronizador.

214447386

Todos ABIERTA El mensaje "config not modified" se muestra en los registros de auditoría de acceso a los datos de la API de Apigee como un Error.

Se espera que esto suceda cada minuto y no afecta tu costo de facturación.

260772383

hybrid 1.8.0 y versiones posteriores ABIERTA Error de vinculación de socket en la plataforma AKS

Si instalas hybrid en AKS, es posible que veas este error:

envoy config listener '0.0.0.0_443' failed to bind or apply socket options: cannot bind '0.0.0.0:443': Permission denied

Solución: Agrega la siguiente estrofa svcAnnotations al archivo de anulaciones:

ingressGateways:
- name: INGRESS_NAME
...
svcAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"

Consulta Configura el entorno de ejecución de hybrid. Consulta también Usa un balanceador de cargas interno con AKS.

241786534

hybrid 1.8.0 y versiones posteriores corregidas A veces, MART no puede conectarse con FluentD.

Cuando se usa UDCA con permiso de organización, a veces, MART no puede conectarse a FluentD. El UDCA con permiso de la organización es el predeterminado en la versión hybrid 1.8 de Apigee. Consulta orgScopedUDCA en la referencia de la propiedad de configuración.

N/A hybrid 1.6.0 y versiones posteriores ABIERTA apigee-logger no funciona en Anthos BareMetal con CentOS o RHEL.

Después de la migración de apigee-logger de fluend a fluent-bit en la versión 1.6.6 de Apigee Hybrid, el registrador dejó de funcionar en Anthos BareMetal con CentOS o RHEL.

207762842 hybrid 1.5.0 y versiones posteriores corregidas Apigee-logger no envió los registros a Cloud Logging.

Los parámetros de configuración actuales de apigee-logger, incluidos los sondeos en funcionamiento, no son compatibles con el entorno de ejecución de Kubernetes, por lo que los registros no se envían a Cloud Logging como se espera. Este problema también hace que los Pods de apigee-logger fallen con regularidad. Este problema afecta las instalaciones hybrids de Apigee en AKS, Anthos Bare Metal y otras plataformas. Ten en cuenta que, en algunos casos, este problema genera un volumen de registro excesivo.

191291501, 191000617 Apigee corregidas No se podrá cambiar la dirección de correo electrónico de una entidad de desarrollador en la IU.
191002224 hybrid 1.5.0 y versiones posteriores corregidas No se puede cambiar una dirección de correo electrónico cuando se usa la API de PUT /organizations/{org_name}/developers/{developer_email}.
184555974 hybrid 1.5.0 y versiones posteriores corregidas Fluentd apigee-logger no puede analizar registros en el clúster de OpenShift.
N/A Archivar implementaciones ABIERTA No se admite la administración y depuración de implementaciones de archivos de Apigee en la IU

En la IU de Apigee, puedes hacer lo siguiente:no se puede ver, confirmar el estado de implementación o administrar tus implementaciones de archivo, como se describeImplementa un proxy de API o usa la IU de depuración como se describe enUsa la depuración. Como solución alternativa, puedes usar gcloud o la API para enumerar todas las implementaciones de archivo en un entorno y usar la API de depuración.

N/A Archivar implementaciones ABIERTA No se admite la reversión de una implementación de archivo

Por el momento, no se admite la reversión de una implementación de archivos. Para quitar una versión de una implementación de archivo, debes volver a implementar una versión anterior de un archivo o borrar el entorno.

421402073

Apigee en VS Code ABIERTA La autenticación de Google en las políticas no es compatible con Apigee en Visual Studio Code (VS Code)

La autenticación de Google en las políticas ServiceCallout y ExternalCallout, como se describe en Usa la autenticación de Google, no es compatible con Apigee en VS Code.

422757662 Apigee 1-15-0-apigee-5
hybrid 1.15.0
CORREGIDO en Apigee 1-15-0-apigee-7 y Apigee 1-15-0-apigee-8

Los encabezados x-b3 no están disponibles cuando DistributedTrace está inhabilitado

En las versiones 1-15-0-apigee-5 y 1.15.0 de Apigee y Apigee Hybrid, Apigee dejó de enviar encabezados x-b3 a los extremos de destino cuando se inhabilita el seguimiento distribuido. Sin embargo, algunas instalaciones de Apigee dependían de que se enviaran encabezados x-b3 independientemente de si el registro de Distributed Trace estaba habilitado o inhabilitado. Por lo tanto, este cambio se revirtió a partir de Apigee 1-15-0-apigee-7.

146222881 hybrid 1.3.0 y versiones posteriores corregidas Error de encabezado HTTP no válido

Error de encabezado HTTP no válido: la entrada de Istio cambia todas las respuestas de destino entrantes al protocolo HTTP2. Debido a que el procesador de mensajes híbrido solo admite HTTP1, es posible que veas el siguiente error cuando se llama a un proxy de API:

http2 error: Invalid HTTP header field was received: frame type: 1, stream: 1,

name: [:authority], value: [domain_name]

Si ves este error, puedes realizar alguna de las siguientes acciones para corregir el problema:

  • Modifica el servicio de destino para omitir el encabezado de host en la respuesta.
  • Si es necesario, quita el encabezado de host con la política AssignMessage en el proxy de API.

420985360

Portal integrado ABIERTA SmartDocs
  • Apigee admite la especificación de OpenAPI 3.0 cuando publicas tus APIs mediante SmartDocs en tu portal, aunque aún no se admite un subconjunto de funciones. Por ejemplo, las propiedades allOf para combinar y extender esquemas.

    En caso de que se haga referencia a una función no admitida en la especificación de OpenAPI, en algunos casos las herramientas la ignorarán la función, pero renderizarán la documentación de referencia de la API. En otros casos, una función no admitida generará errores que impiden la correcta renderización de la documentación de referencia de la API. En cualquier caso, deberás modificar la especificación de OpenAPI para evitar el uso de la función no compatible hasta que se admita en una versión futura.

  • La opción Probar esta API tiene las siguientes limitaciones:
    • El encabezado Accept se configura como application/json, sin importar el valor establecido para consumes en la especificación de OpenAPI.
    • No se admiten encabezados de solicitud de un tipo que no sea de cadena.
N/A Portal integrado ABIERTA Administrador del portal

  • En este momento, no se admiten las actualizaciones simultáneas del portal (como ediciones a las páginas, el tema, CSS o las secuencias de comandos) por parte de múltiples usuarios.
  • Si borras una página de documentación de referencia de la API del portal, no hay manera de volver a crearla. Deberás eliminar y volver a agregar el producto API y volver a generar la documentación de referencia de la API.
  • Cuando personalizas el tema de tu portal, los cambios pueden tardar hasta 5 minutos en aplicarse por completo.
N/A Portal integrado ABIERTA Funciones del portal

La Búsqueda se integrará al portal integrado en una versión futura.

N/A Portal integrado ABIERTA Proveedor de identidad SAML

El cierre de sesión único (SLO) con el proveedor de identidad SAML no es compatible con los dominios personalizados. Para habilitar un dominio personalizado con un proveedor de identidad SAML, deja el campo URL de cierre de sesión en blanco cuando establezcas la configuración de SAML.

191815997 hybrid 1.6.0 y versiones posteriores corregidas Si un cliente híbrido configura un proxy de reenvío para el proxy de API, el token de Google no funcionará, a menos que tenga acceso directo a *.googleapis.com.
N/A Apigee CORREGIDO en Apigee 1-12-0-apigee-2 y, además, Hybrid 1.12.0 La supervisión de API y Cloud Monitoring muestran aumentos anormales

  • Los recuentos de solicitudes y respuestas de proxy de API (para proxy y destinos) muestran aumentos repentinos anormales

    Este es un ejemplo que muestra un aumento repentino:

    (aumentar el tamaño de la imagen)

  • Debido a un error, el sistema registra el recuento de forma incorrecta durante un período breve y se corrige el recuento. Esto sucede cuando hay una reducción en el tráfico de la API (lo que da como resultado una reducción de la escala verticalmente de las puertas de enlace de API).
  • Para distinguir los aumentos repentinos reales en las solicitudes y este problema, consulta la página Estadísticas de proxies y Rendimiento objetivo de la página de estadísticas de la API

Métricas afectadas:

  • apigee.googleapis.com/proxyv2/request_count
  • apigee.googleapis.com/proxyv2/response_count
  • apigee.googleapis.com/targetv2/request_count
  • apigee.googleapis.com/targetv2/response_count

Métricas nuevas

Puedes usar las métricas nuevas para evitar este problema.

Métrica Descripción
apigee.googleapis.com/proxy/request_count Cantidad de solicitudes al proxy de Apigee desde que se registró la última muestra.
apigee.googleapis.com/proxy/response_count Cantidad de respuestas que envía el proxy de API de Apigee.
apigee.googleapis.com/proxy/latencies Distribución de latencias, que se calculan desde el momento en que el proxy de Apigee recibió la solicitud hasta el momento en que se envió la respuesta del proxy de Apigee al cliente.
apigee.googleapis.com/target/request_count Cantidad de solicitudes enviadas al destino de Apigee desde que se registró el último muestreo.
apigee.googleapis.com/target/response_count Cantidad de respuestas recibidas del destino de Apigee desde que se registró la última muestra.
apigee.googleapis.com/target/latencies Distribución de latencias, que se calculan desde el momento en que se envió la solicitud al objetivo de Apigee hasta el momento en que el proxy de Apigee recibió la respuesta. Este tiempo no incluye la sobrecarga del proxy de la API de Apigee.

Para Apigee Hybrid, consulta Descripción general de la recopilación de métricas y Visualiza las métricas.

203778087 Hybrid 1.5.3 y versiones posteriores ABIERTA apigee-stackdriver-logging-agent se ejecuta como raíz.

Solución alternativa: Inhabilita el agente de Logging en hybrid.

205629443 Apigee corregidas Si ServiceCallout se envía y se olvida (sin etiqueta <Response>), puede ocurrir una condición de carrera si se produce otra política después de ella.

Solución: Para mantener el comportamiento enviar y olvidar, haz lo siguiente:

  1. Agrega <Response>calloutResponse</Response> a ServiceCallout.
  2. Establece continueOnError en true.
207719377 Apigee CORREGIDO en Apigee 1-11-0-apigee-1 Si hay más de una política de SpikeArrest en un paquete, se producirán errores 502.

Solución: Evita usar más de una política de SpikeArrest en el proxy para evitar el problema.

209097822 Hybrid 1.5.0 y versiones posteriores
Apigee
corregidas Es posible que las actualizaciones dinámicas que se realicen a una tasa de protección contra aumentos de tráfico no se reflejen de inmediato

Para una clave en particular, si hay tráfico continuo, es posible que la clave no esté limitada por la frecuencia actualizada. Si hay cinco minutos sin tráfico para una clave en particular, la tarifa se reflejará.

Solución: Vuelve a implementar el proxy con una variable de referencia nueva si la velocidad tiene efecto de inmediato. También puedes usar dos protecciones de aumento condicionales con diferentes variables de flujo para ajustar la velocidad.

221305498 Apigee ABIERTA La supervisión de API puede mostrar el código de error de “(no se configuró)”.

La supervisión de API de proxies de API configurables puede mostrar un código de error de “(no se configuró)” para las respuestas del objetivo con un estado que no sea 2xx.

246774745 Apigee corregidas No se respeta el valor de io.timeout.millis cuando se usa con varios destinos dinámicos.

Si un proxy establece dos o más valores io.timeout.millis en dos o más flujos con el mismo host de destino, solo se respeta un valor io.timeout.millis.

245664917 hybrid 1.8.x corregidas Se puede ignorar el error de actualización de Apigee Hybrid

Durante la actualización a Apigee Hybrid 1.8.x, después de ejecutar apigeectl init y confirmar que check-ready se realizó de forma correcta, es posible que notes que el trabajo de validación del esquema de Cassandra está en un estado de error si ves los Pods. Esta es una condición inofensiva y puedes avanzar con seguridad al siguiente paso en el procedimiento de actualización.

300660653 Apigee corregidas Debería aparecer un error, pero no se muestra, cuando se implementan proxies con la misma ruta de acceso en varios entornos que están adjuntos a la misma instancia y al mismo grupo de entornos.

No se permite implementar proxies con la misma ruta de acceso en varios entornos que estén conectados a la misma instancia y al mismo grupo de entornos, y se debe mostrar un mensaje de advertencia sobre un conflicto de ruta de acceso base. En cambio, no se muestra ningún error y las implementaciones parecen ser exitosas.

Solución alternativa: Cuando realices la implementación y después de ella, verifica que no haya conflictos de rutas de acceso base con los proxies implementados y corrígelos según sea necesario.

301458133 Apigee corregidas Algunos intentos de implementación de proxy muestran un error que indica que la revisión es inmutable.

Cuando se intenta guardar un proxy implementado anteriormente, es posible que la implementación falle con un error que indique que la revisión es inmutable.

Solución alternativa: Haz clic en la flecha desplegable junto al botón Guardar y selecciona Guardar como revisión nueva. Luego, vuelve a intentar la implementación.

301845257 Apigee corregidas Si intentas implementar más de 800 proxies en un grupo de entornos, se producirá un error. El límite en el que se muestra un error es inferior a 800 cuando las rutas de acceso base son más largas que 15 caracteres.

315820718 Apigee corregidas Con las solicitudes de proxy de gRPC, los finalizadores de gRPC se quitan de la respuesta

Cuando se realiza una llamada a un servidor de destino de gRPC, el único finalizador que se muestra es "grpc-status". Todos los demás finalizadores se quitan de la respuesta.

341157011 Apigee corregidas Las especificaciones generadas con Gemini Code Assist en Cloud Code que también incluyen caracteres UTF-8 que no son ASCII no se analizan correctamente cuando se suben al concentrador de APIs.

Como resultado, el concentrador de APIs no extraerá las operaciones, las definiciones y otros metadatos correctamente.
338285095 Apigee corregidas Las apps asociadas con un AppGroup no aparecen en la lista de apps de la IU de Apigee. Como resultado, los usuarios no pueden acceder a la página Detalles de la app de la aplicación en la consola. No se admite el uso de la búsqueda en la consola con un nombre de app parcial o una búsqueda de clave de API para la app hasta que se resuelva este problema.

Las organizaciones híbridas de Apigee no se ven afectadas por este problema, ya que usan la IU clásica para ver los detalles de la app.

Solución alternativa parcial: Hay una lista de todas las apps disponible con las APIs. Consulta organizations.apps.list.
355714868 Monetización
Apigee Hybrid
CORREGIDO en las versiones hybrid 1.14.3, 1.15.1 y 1.16.0 Los datos de las tarifas recurrentes, de configuración y de recarga no se registran ni facturan para las organizaciones híbridas

En el caso de las organizaciones híbridas con monetización, los datos de las tarifas recurrentes (RECURRING_FEE), de configuración (SETUP_FEE) y de recarga (TOPUP_FEE) no se registran ni facturan para la facturación pospago. En el caso de la facturación prepaga, la deducción de la billetera se realiza para estas tarifas, pero no se informa.
438850078 Apigee ABIERTA

Se produce una recursión infinita dentro de la política de OASValidation cuando una respuesta de backend contiene un tipo de discriminador que es el mismo que el esquema principal. Este problema puede provocar un StackOverflowError.

449012244 Apigee ABIERTA

Usa definiciones de extremos de destino independientes para los destinos de SSE (eventos enviados por el servidor). Si se mezclan extremos de destino con SSE y sin SSE, es posible que se produzcan comportamientos incoherentes, como variables de flujo response.content vacías.

445936920 Apigee 1-16-0-apigee-2 y versiones posteriores ABIERTA

Es posible que los problemas de configuración de DNS que no se detectaron anteriormente ahora causen errores de DNS. Apigee quitó la funcionalidad de resguardo automático de DNS que se encontraba en 1-16-0-apigee-2. Esta eliminación reduce la capacidad de recuperación de la plataforma ante errores de configuración de DNS y ahora podría generar errores de DNS.

Para encontrar errores relacionados, verifica los registros del entorno de ejecución en busca de errores de resolución de DNS.

383372330 Versiones del emulador de Apigee de la 1.13.0 a la 1.15.1 (sin incluir esta última) CORREGIDO en las versiones 1.15.1 y posteriores del emulador de Apigee

Todas las implementaciones de proxy fallan de forma local con mensajes de error que incluyen Error parsing deployment report as JSON:

06/13/2025 6:45 PM EMULATOR INFO Deploying environment testenv, to Container apigee-1.14.2 (1.14.2)
06/13/2025 6:45 PM EMULATOR ERROR Error parsing deployment report as JSON
06/13/2025 6:45 PM EMULATOR ERROR null
06/13/2025 6:45 PM EMULATOR ERROR Environment testenv deployment, to Container apigee-1.14.2 (1.14.2) failed with Error: 500
06/13/2025 6:45 PM EMULATOR ERROR Deploy to Container apigee-1.14.2 (1.14.2), failed with Error: Environment testenv deployment, to Container apigee-1.14.2 (1.14.2) failed with Error: 500
Corrección: Actualiza a la versión 1.15.1 o posterior del emulador de Apigee.