Importante
Agent Control y New Relic Control están disponibles de forma general para Kubernetes. El soporte para hosts Linux y Windows está en el programa de vista previa pública, de conformidad con nuestras políticas de pre-lanzamiento.
Una definición de tipo de agente es un archivo YAML que describe cómo Agent Control debe identificar, descargar, configurar y ejecutar un agente específico. Sus variables declaradas también forman el esquema de configuración que el control de flota expone a los operadores al desplegar o actualizar un subagente de la flota. Cada definición consta de tres secciones principales, metadatos, variables y despliegue, además de un campo protocol_version de nivel superior que versiona el lenguaje de esquema en el que está escrito el archivo.
Metadatos
La sección de metadatos identifica el tipo de agente: su name, namespace, version, platform objetivo (host o kubernetes) y operating_system (necesario para los tipos basados en host). Agent Control utiliza estos campos para direccionar de forma exclusiva la definición y enviarla al motor de despliegue correcto.
Variables
La sección de variables declara las entradas configurables que los operadores pueden establecer al agregar un subagente a su configuración. Cada variable tiene un type (como string, bool o yaml), un default opcional y una lista variants opcional de valores aceptados. Las variables se referencian en toda la sección de despliegue mediante ${nr-var:variable_name}.
Despliegue
La sección de despliegue describe cómo Agent Control instala y ejecuta el agente en la plataforma objetivo. Se compone de varias subsecciones:
packages: artefactos de OCI para descargar antes de que se inicie el agente —por lo general, el binario del agente o el paquete de integración.executables: la lista de procesos que Agent Control iniciará, supervisará y reiniciará. Un tipo de agente sin esta sección se trata como una integración administrada (OHI): Agent Control maneja sus artefactos, pero delega la ejecución a otro agente.health: cómo Agent Control determina si el agente está en buen estado —mediante la presencia del proceso, una comprobación de extremo HTTP o ambos.filesystem: archivos o directorios individuales que Agent Control escribe en el host antes de iniciar el agente, como archivos de configuración o certificados.shared_filesystem: entradas escritas en una zona de depósito compartida accesible para otros agentes gestionados por la misma instancia de Agent Control. Utilizado por los tipos de agente OHI para entregar su configuración y binarios al agente de infraestructura.
Para obtener la referencia completa del esquema y todos los campos disponibles, consulte la Referencia del esquema de tipo de agente.
Tipos de agentes vinculados
Dos tipos de agente están vinculados cuando uno escribe artefactos (configuración, binarios u otros archivos) en el sistema de archivos compartido y el otro está configurado para leer desde esas mismas rutas. El escritor puede no tener una sección executables, Agent Control administra sus artefactos, pero nunca inicia un proceso para él. En su lugar, el agente lector tiene la lógica incorporada para descubrir y ejecutar binarios y configuración desde una ruta conocida en el sistema de archivos compartido, lo que ejecuta de manera efectiva el complemento en nombre del escritor.
La raíz del sistema de archivos compartido es:
| Sistema operativo | Camino |
|---|---|
| Linux | /var/lib/newrelic-agent-control/shared-filesystem |
| Windows | C:\ProgramData\New Relic\newrelic-agent-control\shared-filesystem |
Todos los agentes administrados por la misma instancia de Agent Control comparten esta raíz. Los nombres de los subdirectorios se eligen por convención entre los tipos de agentes vinculados.
Integraciones en el host (OHI)
La integración en el host (OHI) es el ejemplo principal de agentes vinculados en Agent Control; mientras que otros agentes tienen un proceso iniciado por Agent Control, los agentes de OHI no tienen un proceso propio y Agent Control nunca los inicia. Permite que Agent Control administre el ciclo de vida completo de la integración de New Relic Infrastructure, descargándola, configurándola, actualizándola y desinstalándola, mientras delega su ejecución al agente de infraestructura, que descubre y ejecuta los binarios de integración desde el sistema de archivos compartido.
La relación entre el agente de infraestructura y el agente de OHI
Cuando se instala un tipo de agente OHI, Agent Control descarga el binario de integración a través de OCI y escribe dos entradas en el sistema de archivos compartido:
- Un archivo de configuración en
infra-agent-ohi-configs/(por ejemplo,nri-redis.yaml) - El binario de integración en
infra-agent-ohi-binaries/(por ejemplo,nri-redis)
- Un archivo de configuración en
El subagente del agente de infraestructura se configura con variables de entorno que lo apuntan a estos directorios compartidos:
Variable Ruta del sistema de archivos compartido Objetivo NRIA_PLUGIN_DIR…/infra-agent-ohi-configsDescubrimiento de configuración de integración NRIA_CUSTOM_PLUGIN_INSTALLATION_DIR…/infra-agent-ohi-binariesDescubrimiento de binarios de integración NRIA_SAFE_BIN_DIR…/infra-agent-ohi-binariesRuta de ejecución de binarios permitida El agente de infraestructura recoge la configuración y el binario en su siguiente ciclo de escaneo y comienza a ejecutar la integración.
shared-filesystem/├── infra-agent-ohi-configs/ # Integration YAML configs (read by NRIA_PLUGIN_DIR)│ ├── nri-redis.yaml│ └── nri-mysql.yaml└── infra-agent-ohi-binaries/ # Integration binaries (read by NRIA_CUSTOM_PLUGIN_INSTALLATION_DIR)├── nri-redis└── nri-mysql
Importante
Los tipos de agentes de OHI no tienen un proceso propio y dependen por completo del agente de infraestructura para ejecutarse. Debe tener com.newrelic.infrastructure configurado como subagente en la misma instancia de Agent Control antes de desplegar cualquier tipo de agente de OHI.
Tipos de agentes admitidos
Soporte actual
| Tipo de agente | Compatibilidad con Kubernetes | Compatibilidad con host Linux | Soporte para host de Windows |
|---|---|---|---|
| Agente de infraestructura New Relic | ✅ Sí | Vista previa pública | Vista previa pública |
| Apache | ✅ Sí | Vista previa pública | Vista previa pública |
| Flex | ✅ Sí | Vista previa pública | Vista previa pública |
| Memcached | ✅ Sí | Vista previa pública | Vista previa pública |
| MySQL | ✅ Sí | Vista previa pública | Vista previa pública |
| NGINX | ✅ Sí | Vista previa pública | Vista previa pública |
| PostgreSQL | ✅ Sí | Vista previa pública | Vista previa pública |
| Redis | ✅ Sí | Vista previa pública | Vista previa pública |
| Collector OpenTelemetry New Relic (NRDOT) | ✅ Sí | ✅ Sí | ⚠️ Experimental |
| Fluent Bit | ✅ Sí | 🚫 No | 🚫 No |
| Agente New Relic Prometheus | ✅ Sí | 🚫 No | 🚫 No |
| Agente eBPF New Relic | ✅ Sí | ⚠️ Experimental | 🚫 No |
| agente APM (.NET, Java, Node, Python, Ruby) | 🚫 No | 🚫 No | 🚫 No |
Importante
Licencias específicas del agente: Agente Control está diseñado para brindarle una gestión de licencias flexible. Si bien el agente Control en sí requiere un cierto nivel de acceso para funcionar, las licencias que otorga a cada agente se adaptan a sus necesidades específicas. A continuación, puede encontrar un desglose de las licencias necesarias para cada tipo de agente.
Licencias requeridas por tipo de agente
| Tipo de agente | Licencias clave requeridas | Ambiente |
|---|---|---|
| Agente de infraestructura New Relic | Acceso a nivel de host para el sistema métrico y acceso API Kubernetes para datos del clúster. | Kubernetes / basado en host |
| Apache | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| Flex | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| Memcached | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| MySQL | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| NGINX | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| PostgreSQL | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| Redis | Ejecutado por infra-agent con los mismos permisos. | Kubernetes / basado en host |
| Collector OpenTelemetry New Relic (NRDOT) | Las licencias dependen de receptores y exportadores específicos. A menudo requiere acceso a la API de Kubernetes para el descubrimiento de servicios. | Kubernetes / basado en host |
| Fluent Bit | Acceso de lectura a logs de pod y de contenedores. | Kubernetes |
| Agente New Relic Prometheus | Licencias para descubrir y acceder al servicio extremo dentro del clúster para scraping métrico. | Kubernetes |
| Agente eBPF New Relic | Privilegios elevados (por ejemplo, CAP_SYS_ADMIN) para cargar programas eBPF en el kernel del host. | Kubernetes, hosts Linux (experimental) |
| agente APM (.NET, Java, Node, Python, Ruby) | Actualmente no es compatible con Agente Control. | N/A |
NRDOT en hosts Windows es experimental
El New Relic OpenTelemetry Collector (NRDOT) en Windows está disponible, pero no ha sido probado ni documentado oficialmente por el equipo de NRDOT. La configuración empaquetada predeterminada está diseñada para Linux y puede generar advertencias o errores en Windows (por ejemplo, de las rutas de filelogreceiver). No se incluye una configuración predeterminada para Windows; debe proporcionar su propia configuración del recopilador. Utilice NRDOT en Windows solo en entornos no críticos o de pruebas hasta que se lance el soporte completo para Windows.
eBPF en hosts de Linux es experimental
El agente eBPF de New Relic requiere dependencias a nivel de kernel (como linux-headers correspondiente a la versión del kernel en ejecución) que Agent Control no puede resolver automáticamente en hosts Linux. Si estas dependencias faltan o no coinciden, el despliegue puede fallar sin un error claro. El soporte de eBPF en hosts Linux está disponible para entornos de Kubernetes solo en producción. Utilice eBPF en hosts Linux solo en entornos no críticos o de prueba.
eBPF no es compatible con los hosts de Windows.