Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.zylon.ai/llms.txt

Use this file to discover all available pages before exploring further.

Usa destinos cuando quieras enviar las métricas de Zylon a tu propio backend de monitorización. Esto requiere:
  • observability.monitoring: true
  • un destino bajo k8s-monitoring.extraDestinations
Si necesitas reemplazar los destinos por defecto de Zylon en lugar de añadir nuevos, consulta Sobrescribir los destinos por defecto de Zylon.

Backends compatibles

Zylon soporta tres familias de backend:
BackendTipo YAMLURL típica
Prometheusprometheushttps://prometheus.example.com/api/v1/write
Backend compatible con Prometheus para Grafanaprometheushttps://<stack>.grafana.net/api/prom/push
Colector OTLPotlphttps://otel.example.com/v1/metrics o grpc://otel.example.com:4317
No existe un tipo de destino grafana separado. Los servicios de métricas compatibles con Grafana siguen usando type: prometheus.

Estructura del destino

k8s-monitoring:
  extraDestinations:
    <destination-name>:
      type: prometheus|otlp
      url: <endpoint-url>

      # Define la configuración de autenticación del destino,
      # si tu backend la requiere
      auth:
        type: basic|bearer

      # Define el proxy para conectarte al destino,
      # si tu red lo requiere
      proxyURL: http://proxy:port

      # Define la configuración TLS del destino,
      # si el endpoint usa una CA privada o autofirmada
      tls:
        ca: |
          -----BEGIN CERTIFICATE-----
          ...
          -----END CERTIFICATE-----

Sobrescribir los destinos por defecto de Zylon

Úsalo cuando quieras reemplazar los destinos gestionados por Zylon en lugar de añadir destinos extra. Esto usa destinations, no extraDestinations. Qué tienes que hacer:
  • Mantén la entrada otlp y pon url: "-" para desactivar el destino OTLP por defecto de Zylon.
  • Mantén la entrada loki y pon url: "-" para desactivar el destino Loki por defecto de Zylon.
  • Añade tu propio destino como un nuevo elemento dentro de la misma lista destinations.
  • Cambia el name, el type y la url del destino para que coincidan con tu backend.
  • Si tu endpoint usa una CA privada o autofirmada, sustituye el certificado de ejemplo bajo tls.ca por tu propia CA.
Ejemplo:
destinations:
  - name: otlp
    type: otlp
    protocol: grpc
    url: "-"
  - name: loki
    type: loki
    url: "-"
  - name: my-local-prometheus
    type: prometheus
    url: https://prometheus.example.com/api/v1/write
    tls:
      ca: |
        -----BEGIN CERTIFICATE-----
        MIID...
        -----END CERTIFICATE-----

Ejemplos de destinos

Usa type: prometheus para un servidor Prometheus autoalojado con remote write activado:
k8s-monitoring:
  extraDestinations:
    prometheus:
      type: prometheus
      url: https://prometheus.example.com/api/v1/write
      auth:
        type: basic
        username: "zylon-metrics"
        password: "${PROMETHEUS_API_KEY}"
Prometheus debe tener activado el receptor de remote write, por ejemplo arrancando Prometheus con:
--web.enable-remote-write-receiver
Para endpoints de Prometheus con certificado autofirmado, pasa el certificado CA para mantener la verificación TLS activa:
k8s-monitoring:
  extraDestinations:
    prometheus-selfsigned:
      type: prometheus
      url: https://prometheus.internal:9090/api/v1/write
      auth:
        type: basic
        username: "admin"
        password: "${PROMETHEUS_PASS}"
      tls:
        ca: |
          -----BEGIN CERTIFICATE-----
          MIID...
          -----END CERTIFICATE-----

Múltiples destinos

Puedes enviar métricas a más de un backend al mismo tiempo:
k8s-monitoring:
  extraDestinations:
    grafana-primary:
      type: prometheus
      url: https://prometheus-prod-XX.grafana.net/api/prom/push
      auth:
        type: basic
        username: "primary-access-id"
        password: "${GRAFANA_PRIMARY_KEY}"

    internal-prometheus:
      type: prometheus
      url: https://prometheus.internal:9090/api/v1/write
      auth:
        type: basic
        username: "backup"
        password: "${INTERNAL_PROMETHEUS_KEY}"
      tls:
        ca: |
          -----BEGIN CERTIFICATE-----
          MIID...
          -----END CERTIFICATE-----

    compliance-otel:
      type: otlp
      url: https://compliance-otel.company.com/v1/metrics
      auth:
        type: bearer
        token: "${COMPLIANCE_OTEL_TOKEN}"

Secretos

Usa variables de entorno para tokens y contraseñas:
password: "${ENV_VARIABLE_NAME}"