Problemas conocidos con Apigee Edge

Estás viendo la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Más información

En las siguientes secciones, se describen los problemas conocidos de Apigee Edge. En la mayoría de los casos, los problemas mencionados se solucionarán en una versión futura.

Otros problemas conocidos de Edge

En las siguientes secciones, se describen varios problemas conocidos con Edge.

Área Errores conocidos
El vencimiento de la caché genera un valor de cachehit incorrecto

Cuando la variable de flujo cachehit se usa después de la política LookupCache, debido a la forma en que se despachan los puntos de depuración para comportamiento asíncrono, LookupPolicy propaga el objeto DebugInfo antes de que se ejecute la devolución de llamada, lo que genera un error.

Solución alternativa: Repite el proceso (realiza una segunda llamada) inmediatamente después de la primera llamada.

La configuración de la política de InvalidateCache PurgeChildEntries como verdadera no funciona correctamente

Si configuras PurgeChildEntries en la política InvalidateCache, solo se deben borrar definitivamente los valores de los elementos KeyFragment, pero se borra toda la caché.

Solución alternativa: Usa la política de KeyValueMapOperations para iterar el control de versiones de la caché y evitar la necesidad de invalidar la caché.

Problemas conocidos con la IU de Edge

En las siguientes secciones, se describen los problemas conocidos con la IU de Edge.

Área Errores conocidos
No puede acceder a la página Administración de zonas de SSO de Edge desde la barra de navegación después de que la organización se asigna a una zona de identidad Cuando conectas una organización a una zona de identidad, ya no puedes acceder a la página Administración de zonas de SSO de Edge desde la barra de navegación izquierda cuando seleccionas Administrador > SSO. Como solución alternativa, navega a la página directamente con la siguiente URL: https://apigee.com/sso.

Problemas conocidos con el portal integrado

En las siguientes secciones, se describen los problemas conocidos del portal integrado.

Área Errores conocidos
SmartDocs
  • Apigee Edge es compatible con OpenAPI Specification 3.0 cuando creas especificaciones con el editor de especificaciones y publicas API mediante SmartDocs en tu portal, aunque todavía no se admite un subconjunto de funciones.

    Por ejemplo, las siguientes funciones de OpenAPI Specification 3.0 aún no son compatibles:

    • Propiedades allOf para combinar y extender esquemas
    • Referencias remotas

    Si se hace referencia a una función no compatible en la especificación de OpenAPI, en algunos casos, las herramientas ignorarán la función, pero seguirán renderizando la documentación de referencia de la API. En otros casos, una función no admitida causará errores que impidan que se renderice correctamente la documentación de referencia de la API. En cualquier caso, deberás modificar tu especificación de OpenAPI para evitar el uso de la función no compatible hasta que sea compatible en una versión futura.

    Nota: Debido a que el editor de especificaciones es menos restrictivo que SmartDocs cuando procesa la documentación de referencia de la API, es posible que veas resultados diferentes entre las herramientas.

  • Cuando se usa Probar esta API en el portal, el encabezado Accept se configura como application/json, sin importar el valor establecido para consumes en la OpenAPI Specification.
Proveedor de identidad de SAML El cierre de sesión único (SLO) con el proveedor de identidad de SAML no es compatible con los dominios personalizados. Para habilitar un dominio personalizado con un proveedor de identidad de SAML, deja el campo URL de cierre de sesión en blanco cuando configures SAML.
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).
  • Si borras una página de la documentación de referencia de la API del portal, no hay forma de volver a crearla. Deberás borrar y volver a agregar el producto de API y, luego, volver a generar la documentación de referencia de la API.
  • Cuando configuras la política de seguridad de contenido, los cambios pueden tardar hasta 15 minutos en aplicarse por completo.
  • Cuando personalizas el tema de tu portal, los cambios pueden tardar hasta 5 minutos en aplicarse por completo.
Funciones del portal
  • La Búsqueda se integrará en el portal integrado en una versión futura.

Problemas conocidos con Edge para la nube privada

En las siguientes secciones, se describen los problemas conocidos de Edge para la nube privada.

Área Errores conocidos
Vulnerabilidad HTTP/2 de Apigee

Hace poco, se descubrió una vulnerabilidad de denegación del servicio (DoS) en varias implementaciones del protocolo HTTP/2 (CVE-2023-44487), incluida Apigee Edge para nube privada. La vulnerabilidad podría generar un DoS en la funcionalidad de administración de la API de Apigee. Para obtener más detalles, consulta el Boletín de seguridad de Apigee GCP‐2023‐032.

Los componentes del router y del servidor de administración de Edge de la nube privada se exponen a Internet y pueden ser vulnerables. Aunque HTTP/2 está habilitado en el puerto de administración de otros componentes específicos de Edge de Edge para la nube privada, ninguno de esos componentes está expuesto a Internet. En los componentes que no son de Edge, como Cassandra, Zookeeper y otros, HTTP/2 no está habilitado. Te recomendamos que sigas estos pasos para abordar la vulnerabilidad de Edge de la nube privada:

Sigue estos pasos si usas la versión 4.51.00.11 o una posterior de Edge Private Cloud:

  1. Actualiza el servidor de administración:

    1. En cada nodo del servidor de administración, abre /opt/apigee/customer/application/management-server.properties.
    2. Agrega esta línea al archivo de propiedades:
      conf_webserver_http2.enabled=false
      .
    3. Reinicia el componente del servidor de administración:
      apigee-service edge-management-server restart
  2. Actualiza el procesador de mensajes:

    1. En cada nodo del procesador de mensajes, abre /opt/apigee/customer/application/message-processor.properties.
    2. Agrega esta línea al archivo de propiedades:
      conf_webserver_http2.enabled=false
      .
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-message-processor restart
  3. Actualiza el router:

    1. En cada nodo del router, abre /opt/apigee/customer/application/router.properties.
    2. Agrega esta línea al archivo de propiedades:
      conf_webserver_http2.enabled=false
      .
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-router restart
  4. Actualiza QPID:

    1. En cada nodo de QPID, abre /opt/apigee/customer/application/qpid-server.properties.
    2. Agrega esta línea al archivo de propiedades:
      conf_webserver_http2.enabled=false
      .
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-qpid-server restart
  5. Actualiza Postgres:

    1. En cada nodo de Postgres, abre /opt/apigee/customer/application/postgres-server.properties.
    2. Agrega esta línea al archivo de propiedades:
      conf_webserver_http2.enabled=false
      .
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-postgres-server restart

Sigue estos pasos si usas Edge para versiones de nube privada anteriores a la 4.51.00.11:

  1. Actualiza el servidor de administración:

    1. En cada nodo del servidor de administración, abre /opt/apigee/customer/application/management-server.properties.
    2. Agrega las siguientes dos líneas al archivo de propiedades:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Reinicia el componente del servidor de administración:
      apigee-service edge-management-server restart
  2. Actualiza el procesador de mensajes:

    1. En cada nodo del procesador de mensajes, abre /opt/apigee/customer/application/message-processor.properties.
    2. Agrega las siguientes dos líneas al archivo de propiedades:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-message-processor restart
  3. Actualiza el router:

    1. En cada nodo del router, abre /opt/apigee/customer/application/router.properties.
    2. Agrega las siguientes dos líneas al archivo de propiedades:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-router restart
  4. Actualiza QPID:

    1. En cada nodo de QPID, abre /opt/apigee/customer/application/qpid-server.properties.
    2. Agrega las siguientes dos líneas al archivo de propiedades:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-qpid-server restart
  5. Actualiza Postgres:

    1. En cada nodo de Postgres, abre /opt/apigee/customer/application/postgres-server.properties.
    2. Agrega las siguientes dos líneas al archivo de propiedades:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Reinicia el componente del procesador de mensajes:
      apigee-service edge-postgres-server restart
Actualización de Postgresql cuando se actualiza a la versión 4.52

Apigee-postgresql tiene problemas con la actualización de Edge para la nube privada 4.50 o 4.51 a la versión 4.52. Los problemas ocurren principalmente cuando la cantidad de tablas es superior a 500.

Puedes verificar la cantidad total de tablas en Postgres ejecutando la siguiente consulta en SQL:

select count(*) from information_schema.tables

Solución alternativa: Cuando actualices Apigee Edge 4.50.00 o 4.51.00 a 4.52.00, asegúrate de realizar el paso preliminar antes de actualizar Apigee-postgresql.

apigee-mirror en RHEL 8.0

apigee-mirror no funciona en Red Hat Enterprise Linux (RHEL) 8.0.

Solución alternativa: Como solución alternativa, instala apigee-mirror en un servidor que ejecute una versión anterior de RHEL o algún otro sistema operativo compatible con Apigee. Luego, puedes usar la duplicación para agregar paquetes incluso si instalaste Apigee en servidores RHEL 8.0.

Política de LDAP

149245401: No se refleja la configuración del grupo de conexiones LDAP para JNDI establecida a través del recurso LDAP, y los valores predeterminados de JNDI generan conexiones de un solo uso cada vez. Como resultado, las conexiones se abren y se cierran cada vez para un solo uso, lo que crea una gran cantidad de conexiones por hora al servidor LDAP.

Solución alternativa:

A fin de cambiar las propiedades del grupo de conexiones LDAP, sigue estos pasos para establecer un cambio global en todas las políticas LDAP.

  1. Crea un archivo de propiedades de configuración si aún no existe:
    /opt/apigee/customer/application/message-processor.properties
  2. Agrega lo siguiente al archivo (reemplaza los valores de las propiedades de la Interfaz de Directorio y de Nombre de Java (JNDI) según el requisito de configuración de recursos de LDAP):
    bin_setenv_ext_jvm_opts="-Dcom.sun.jndi.ldap.connect.pool.maxsize=20
    -Dcom.sun.jndi.ldap.connect.pool.prefsize=2
    -Dcom.sun.jndi.ldap.connect.pool.initsize=2
    -Dcom.sun.jndi.ldap.connect.pool.timeout=120000
    -Dcom.sun.jndi.ldap.connect.pool.protocol=ssl"
  3. Asegúrate de que el archivo /opt/apigee/customer/application/message-processor.properties sea propiedad de apigee:apigee.
  4. Reinicia cada procesador de mensajes.

Para verificar que las propiedades JNDI de tu grupo de conexiones estén en vigencia, puedes realizar un tcpdump para observar el comportamiento del grupo de conexiones LDAP a lo largo del tiempo.

Latencia de procesamiento de solicitudes alta

139051927: Las latencias altas de procesamiento de proxy que se encuentran en Message Processor afectan a todos los proxies de API. Los síntomas incluyen retrasos de 200 a 300 ms en los tiempos de procesamiento durante los tiempos de respuesta normales de la API y pueden ocurrir de forma aleatoria incluso con un TPS bajo. Esto puede ocurrir cuando hay más de 50 servidores de destino en los que un procesador de mensajes realiza conexiones.

Causa principal: Los procesadores de mensajes mantienen una caché que asigna la URL del servidor de destino al objeto HTTPClient para las conexiones salientes a los servidores de destino. Según la configuración predeterminada, este parámetro se establece en 50, que puede ser demasiado bajo para la mayoría de las implementaciones. Cuando una implementación tiene varias combinaciones de org/env en una configuración y tiene una gran cantidad de servidores de destino que superan los 50 en total, las URLs del servidor de destino siguen siendo expulsadas de la caché, lo que causa latencias.

Validación: Para determinar si la expulsión de la URL del servidor de destino está causando el problema de latencia, busca la palabra clave "onEvict" o "Expulsión" en el procesador de mensajes system.logs. Su presencia en los registros indica que las URLs del servidor de destino se expulsan de la caché del cliente HTTP porque el tamaño de la caché es demasiado pequeño.

Solución alternativa: En las versiones 19.01 y 19.06 de Edge para la nube privada, puedes editar y configurar la caché de HTTPClient, /opt/apigee/customer/application/message-processor.properties:

conf/http.properties+HTTPClient.dynamic.cache.elements.size=500

Luego, reinicia el procesador de mensajes. Realiza los mismos cambios para todos los procesadores de mensajes.

El valor 500 es un ejemplo. El valor óptimo para tu configuración debe ser mayor que la cantidad de servidores de destino a los que se conectaría el procesador de mensajes. Establecer esta propiedad en un valor superior no tiene efectos secundarios, y el único impacto sería la mejora de los tiempos de procesamiento de las solicitudes del proxy del procesador de mensajes.

Nota: La versión 50.00 de Edge para la nube privada tiene la configuración predeterminada de 500.

Varias entradas para mapas de pares clave-valor

157933959: Las inserciones y actualizaciones simultáneas en el mismo mapa de pares clave-valor (KVM) con alcance a nivel de la organización o del entorno provocan datos incoherentes y actualizaciones perdidas.

Nota: Esta limitación solo se aplica a Edge para la nube privada. Edge para nubes híbridas y públicas no tienen esta limitación.

A fin de obtener una solución alternativa en Edge para la nube privada, crea el KVM en el permiso apiproxy.