Resolución de problemas de apps en IBM Cloud Kubernetes Service

[Nube privada virtual] {: tag-vpc} Infraestructura clásica Satellite

Los pasos siguientes le ayudan a resolver los problemas de la aplicación en el clúster y a encontrar las causas raíz de los errores o problemas de la aplicación.

Revise el estado de IBM Cloud

  1. Para saber si IBM Cloud está disponible, consulte la página de estado IBM Cloud.
  2. Filtre el componente Servicio de Kubernetes.
  3. Revise la documentación sobre limitaciones y problemas conocidos.
  4. Para cuestiones relacionadas con proyectos de código abierto utilizados por IBM Cloud, consulte la política de código abierto y terceros de IBM. Por ejemplo, puede consultar las cuestiones pendientes en Kubernetes.

Obtener el estado y el estado del clúster y revisar los problemas comunes

  1. Obtenga una lista con su clúster y busque el State del clúster.

    ibmcloud ks cluster ls
    
  2. Revise el State de su clúster. Si el clúster está en estado Crítico, Error al suprimir o Aviso, o se queda en estado Pendiente durante mucho tiempo. Para obtener más información, consulte los estados de clúster.

  3. Revise el estado de cada nodo de trabajador. Para obtener más información, consulte Estados de los nodos trabajadores.

    ibmcloud ks worker ls -c CLUSTER
    
  4. Revise la siguiente información para depurar o solucionar problemas del nodo trabajador.

Recopilar detalles y documentar el problema

Al documentar detalles sobre el problema, sea lo más específico posible. Por ejemplo, Our app occasionally gets 502 Gateway errors when trying to retrieve transaction logs no es útil porque no es específico. Asegúrese de reducir al máximo el problema antes de documentarlo. Al documentar el problema, intente incluir lo siguiente.

Arquitectura de entorno
Asegúrese de haber documentado la arquitectura de su entorno para comprender los componentes implicados. Para obtener más información, consulte Documentación de la arquitectura de entorno.
Mensajes de error y detalles de componente.
Proporcione el mensaje de error completo e incluya detalles sobre qué componente está produciendo el error. Por ejemplo, "Los tres pods de aplicaciones en clusterID ABCDEF fallan ocasionalmente en las llamadas HTTPS a GET /transaction-logs desde el equilibrador de carga global con el error HTTP 502 Gateway Error: Web server received an invalid response while acting as a gateway or proxy server...".
IP de origen, IP de destino, puerto y protocolo de la conexión.
Por ejemplo, " Los tres pods de app en el clúster de Kubernetes con clusterID ABCDEF. Ocasionalmente, las llamadas a HTTPS fallan al intentar GET /transaction-logs al GLB con el error The source pod IP is 172.22.5.10 and the destination IP is 150.40.40.35 port 433. El protocolo es HTTPS. Otros pods también utilizan esta dirección IP al igual que las otras dos IP de GLB 150.40.40.55 y 150.40.40.75".
Fecha, hora y frecuencia de inicio del problema.
Revise los siguientes ejemplos de mensajes.
  • Este problema afecta aproximadamente al 2% de todos los intentos de conexión.
  • Este problema sólo se produce entre las 19:00 y las 21:00 UTC, y durante esas horas afecta aproximadamente al 5% de todos los intentos de conexión.
  • Este problema se produce al conectarse desde el ID de pod XYZ. El problema comenzó en 10/25/2023 aproximadamente a las 05:30 UTC.
Acciones de resolución de problemas que ya ha realizado.
Documentar lo que se ha intentado hasta ahora y los resultados de esos intentos de ayudar a reducir aún más el problema.

Ejecución de pruebas para aplicar reglas o descartar cada componente

  1. Intente volver a crear el problema fuera del flujo completo de la aplicación. Esto puede implicar lo siguiente.
    • Utilizando curl en un sistema independiente o en un pod de prueba en un clúster para conectarse al punto final de programa de fondo o servicio para descartar o descartar que el cliente pueda ser el origen del problema.
    • Intentando conectarse a un punto final conocido como www.ibm.com desde el cliente o desde un pod de prueba en el clúster. Si el punto final conocido funciona de forma coherente, pero el punto final de la app real no lo hace, esto ayuda a reducir el problema.
  2. Intente volver a crear el problema en un entorno de prueba utilizando un clúster de prueba.
    • Si no puede volver a crear el problema en un clúster de prueba, puede centrarse en las diferencias entre el clúster de prueba y el clúster real como posibles orígenes del problema.
    • Si puede volver a crearlo en un clúster de prueba, es probable que no sea un problema con el propio clúster. Además, tiene un entorno en el que puede realizar pruebas para reducir aún más el problema sin afectar al entorno de producción.

Recopilación de más datos

Una vez que conozca el flujo de la aplicación, el error específico que está viendo y de dónde proviene dicho error, puede recopilar datos más detallados de los componentes implicados. Esto puede incluir los registros siguientes.

  • Pod y registros de proceso en los componentes afectados.
  • Registros de nodo de clúster como, por ejemplo, syslog o /var/log/messages. Para IBM Cloud Kubernetes Service, puede obtener syslog y otros registros directamente desde los nodos.
  • Información de rastreo de paquetes. Ejecutar tcpdump es una forma habitual de obtener información de rastreo de paquetes.

Póngase en contacto con Slack o revise los foros de usuarios para problemas similares

  1. Publique en Kubernetes Service Slack.
    • Si es un usuario externo, publique en el canal #general.
  2. Consulte los foros, como por ejemplo la ayuda de Kubernetes Service o Stack Overflow, para ver si otros usuarios se han topado con el mismo problema. Cuando utilice los foros para hacer una pregunta, etiquete la pregunta para que puedan verla los equipos de desarrollo de IBM Cloud.
    • Si tiene preguntas técnicas sobre el desarrollo o la implantación de clústeres o aplicaciones con IBM Cloud Kubernetes Service, publique su pregunta en Stack Overflow y etiquétela con ibm-cloud y containers.
    • Consulte Obtención de ayuda para obtener más detalles sobre cómo utilizar los foros.

Próximos pasos

Si el problema persiste, póngase en contacto con soporte. Abra un caso de soporte. En los detalles del caso, asegúrese de incluir los archivos de registro relevantes, los mensajes de error o las salidas de mandato.