avance
Todavía estamos trabajando en esta característica, ¡pero nos encantaría que la probaras!
Esta característica se proporciona actualmente como parte de un programa de vista previa de conformidad con nuestras políticas de prelanzamiento.
OpenTelemetry La observabilidad para Kubernetes proporciona una configuración completa de código abierto combinada con una de primer nivel Kubernetes UI que ya es compatible con nuestra Kubernetes instrumentación patentada. Nuestra interfaz de usuario de K8 está diseñada para ser independiente del proveedor, lo que le permite seleccionar OpenTelemetry o New Relic instrumentación según sus necesidades.
Este documento describe el proceso de monitoreo de un clúster de Kubernetes empleando OpenTelemetry. Se trata de la instalación de la carta nr-k8s-otel-collector
Helm dentro del clúster y el despliegue del recolector necesario para permitir una observabilidad de primer nivel.
Al integrar componentes Kubernetes en el recopilador OpenTelemetry , podemos transmitir métricas, eventos y logs directamente a New Relic. Estas señales de telemetría mejoran automáticamente nuestras experiencias listas para usar, como el navegadorKubernetes , dashboard de descripción general, el evento Kubernetes o la página de resumen de Kubernetes APM .
¿Cómo funciona?
El gráfico de timón nr-k8s-otel-collector
desplegará este recolector OpenTelemetry :
Recolector Deamonset: desplegar en cada nodo trabajador y responsable de recopilar métricas del host subyacente en el nodo, el
cAdvisor
, elKubelet
y recopilar el log del contenedor.Despliegue recolector: desplegar en el nodo maestro y responsable de recopilar métrica de estado de Kube métrica y clúster de Kubernetes evento.
Requisitos
Para enviar Kubernetes telemetry data a New Relic, necesitamos un OpenTelemetry recolector. Nuestra distribución New Relic de OpenTelemetry (NRDOT) ya está configurada para monitor automáticamente un clúster de Kubernetes. Para ello, despliegue todos los componentes necesarios a través de nuestro nr-k8s-otel-collector
gráfico Helm.
Si cambia a un recolector OpenTelemetry diferente, cerciorar de que tenga todos los componentes clave que necesita:
- Procesador de atributos
- Procesador de filtro
- Receptor de log de archivos
- Procesador GroupByAttrs
- Receptor de hostmetrics
- Procesador K8sAttributes
- Receptor de eventos K8
- Receptor Kubelet
- Procesador de transformación de métricas
- Receptor Prometheus
- Procesador de detección de recursos
- Procesador de recursos
- Transformar procesador
Sugerencia
¿Está interesado en emplear nuestra capacidad de observación Kubernetes OpenTelemetry , pero no desea instalar nuestro diagrama Helm?
- Cerciorar de que su recolector incluya los componentes resaltados anteriormente.
- Siga las instrucciones de configuración proporcionadas en este documento para configurar su recolector adecuadamente.
Instale su clúster de Kubernetes con OpenTelemetry
Para que OpenTelemetry esté en funcionamiento en su clúster, siga estos pasos:
Descargue el archivo de valores del gráfico Helm y adáptelo para cumplir con sus requisitos específicos.
El nombre del clúster y son obligatorios.
Consulta la lista completa de parámetros de configuración.
Instale el gráfico Helm junto con el archivo de valores.
bash$helm repo add newrelic https://helm-charts.newrelic.com$helm upgrade nr-k8s-otel-collector newrelic/nr-k8s-otel-collector -f your-custom-values.yaml -n newrelic --create-namespace --installCerciorar de que la cápsula se volteó correctamente.
bash$kubectl get pods -n newrelic --watchCerciorar de que New Relic obtenga los datos que necesita, incluidos métricas, eventos y logs, ejecutando la consulta adecuada. Consulte Introducción al generador de consultas para obtener más información.
FROM Metric SELECT * WHERE k8s.cluster.name='<CLUSTER_NAME>'FROM InfrastructureEvent SELECT * WHERE k8s.cluster.name='<CLUSTER_NAME>'FROM Log SELECT * WHERE k8s.cluster.name='<CLUSTER_NAME>'Si estás empleando un clúster de GKE AutoPilot, es necesario aplicar la siguiente configuración en tu archivo
values.yaml
para garantizar la compatibilidad y la funcionalidad adecuada del recolector OpenTelemetry.privileged: falsereceivers:filelog:enabled: falsedaemonset:containerSecurityContext:privileged: false
Desinstale su clúster de Kubernetes con OpenTelemetry
Para detener el monitoreo de un clúster de Kubernetes con OpenTelemetry, ejecute este comando:
$helm uninstall nr-k8s-otel-collector -n newrelic
Reducir la ingesta de datos
La opción LowDataMode
está habilitada de forma predeterminada para ingestar solo la métrica requerida por nuestra interfaz de usuario Kubernetes.
Si necesita reducir aún más la ingesta de datos, aumente el intervalo de extracción en los valores del gráficonr-k8s-otel-collector
para cada componente de despliegue.
Métrica
Buscar y utilizar datos
Consulte estos documentos para obtener más información sobre cómo buscar datos:
Explora tu clúster de Kubernetes para conocer el estado de tu clúster, desde el plano de control hasta los nodos y pod.
Página de resumenKubernetes APM que ofrece información valiosa sobre su integración Kubernetes junto con su aplicación de monitor.
Resolución de problemas
Consulte el log del pod recolector que tiene problemas. Ejecute este comando:
$kubectl logs <otel-pod-name> -n newrelic
También puede establecer el parámetro verboseLog
en true
en el gráfico de Helm nr-k8s-otel-collector
.
Errores comunes
Consulte la sección Errores comunes en nuestro repositorio de GitHub.
Apoyo
Si tiene problemas con la observabilidad de OpenTelemetry para Kubernetes:
Eche un vistazo a la sección de problemas en GitHub para ver si hay problemas similares o considere abrir un nuevo problema.
Comunicar con el soporte de New Relic para obtener ayuda.