Skip to content

Este es un proyecto que busca la integración de diversos MCP, para obtener metricas de un cluster remoto de kubernetes, potenciando las metricas con interpretaciones de un LLM.

License

Notifications You must be signed in to change notification settings

diegitfk/kubernetes_researcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Ask DeepWiki

kubernetes_researcher

Este es un proyecto que busca la integración de diversos MCP, para obtener metricas de un cluster remoto de kubernetes, potenciando las metricas con interpretaciones de un LLM.

Infraestructura del proyecto

image

Langgraph Workflows

En el servidor langgraph-server de la infraestructura, se despliega el servidor de langgraph y se sirven los siguientes workflow en la API REST.

Kube-Researcher

Es un flujo de trabajo codificado en langgraph que posee la capacidad de generar secciones de un reporte sobre un cluster de kubernetes a partir de la disponibilidad de herramientas de métricas. este posee los siguientes flujos:

  • Planificador de secciones: Es un subgrafo que implementa llamadas a un llm teniendo este la disponibilidad de una herramienta llamada __human_feedback_or_confirm, es que básicamente la herramienta que pausa el estado del grafo para recibir de parte del usuario un feedback sobre el plan generado para actualizarlo, confirmar el comienzo de la investigación del cluster de kubernetes o cancelar la investigación, este posee los siguientes nodos internos:
    • planner: Nodo que genera un plan estructurado de las secciones del informe que se generara.
    • tools: Un ToolNode con solamente una función __human_feedback_or_confirm que es la tool que utiliza el nodo planner para recibir el feedback del usuario hasta que aprueba o rechaza la generación del informe.
    • response_format: Un analisis de la respuesta final del usuario, para completar con una salida estructurada si el plan es aprobado o cancelado, entregando un mensaje de referencia a la decisión del usuario.
      {
       "status": "APPROVED|CANCELLED",
       "message": "Explicación breve de la decisión tomada"
      }

Así los nodos mencionados se relacionan de la siguiente manera:

Captura desde 2025-08-02 21-17-13

En que se diferencia este planificador de otros?: Planificador conoce todas las herramientas de métricas para el cluster que se encuentran a disposición, o sea a medida que conectamos más MCP's de observabilidad, más herramientas tiene a disposición para investigar el estado del cluster, con estas herramientas el planificador propone un plan a seguir con secciones del reporte estructuradas de la siguiente manera (numero , titulo , objetivo , descripción).

Ejemplo de funcionamiento: En este caso al planificador se le entregaron las siguiente herramientas ficticias

  • get_pods_metrics(), para obtener metricas de los pods del cluster.
  • prometheus_cluster_metrics(), para obtener metricas del cluster via prometheus. y su comportamiento es el siguiente:
Planner.Working.mp4

About

Este es un proyecto que busca la integración de diversos MCP, para obtener metricas de un cluster remoto de kubernetes, potenciando las metricas con interpretaciones de un LLM.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages