Desde hace varios a?os, el kernel de Linux ha incluido la extended Berkeley Packet Filter (), una m¨¢quina virtual que proporciona la capacidad de incorporar filtros en sockets espec¨ªficos. Pero eBPF va mucho m¨¢s all¨¢ del filtro de paquetes y permite disparar la ejecuci¨®n de scripts personalizados en distintos puntos dentro del kernel con muy poca sobrecarga. Al permitirte ejecutar programas en un sandbox dentro del kernel del sistema operativo, los desarrolladores de aplicaciones pueden ejecutar programas eBPF para incorporar nuevas capacidades al sistema operativo en tiempo de ejecuci¨®n. Algunos de nuestros proyectos requieren hacer diagn¨®stico y an¨¢lisis de problemas a nivel de llamadas de sistema. Un nivel al que nuestros equipos han encontrado que herramientas como y facilitan su trabajo. La observabilidad e infraestructura de redes tambi¨¦n se benefician de eBPF ¡ª por ejemplo, el proyecto Cilium implementa balanceo de carga de tr¨¢fico y observabilidad sin sobrecarga por sidecar en Kubernetes, y proporciona un extra de seguridad y observabilidad de tr¨¢fico adicional. El proyecto usa eBPF para monitorizaci¨®n de seguridad y el proyecto usa eBPF para crear un balanceo de carga L4 m¨¢s eficiente. La comunidad de eBPF est¨¢ creciendo r¨¢pidamente y vemos m¨¢s y m¨¢s sinergia en el campo de la observabilidad.
Desde hace varios a?os, el kernel de Linux incluye el filtro de paquetes Berkeley extendido (), una m¨¢quina virtual que ofrece la posibilidad de adjuntar filtros a determinados sockets. Pero eBPF va mucho m¨¢s all¨¢ del filtrado de paquetes y permite activar scripts personalizados en varios puntos del kernel con muy poca sobrecarga. Aunque esta tecnolog¨ªa no es nueva, est¨¢ cobrando importancia con el creciente uso de microservicios desplegados como contenedores orquestados. Los Kubernetes y la tecnolog¨ªa de malla de servicios (Services Mesh) como Istio se utilizan habitualmente, y emplean sidecars para implementar la funcionalidad de control. Con las nuevas herramientas, - en particular, hace que la construcci¨®n, ejecuci¨®n y distribuci¨®n de programas eBPF sea mucho m¨¢s f¨¢cil - eBPF puede ser visto como una alternativa al sidecar tradicional. Un mantenedor de Cilium, una herramienta en este espacio, ha llegado a proclamar . Un enfoque basado en eBPF reduce parte de la sobrecarga de rendimiento y operaci¨®n que conllevan los sidecars, pero no da soporte a funciones comunes como la terminaci¨®n SSL.
Durante varios a?os, el n¨²cleo de Linux ha incluido la m¨¢quina virtual extendida para el Filtro de Paquetes de Berkeley ( eBPF ) y ha proporcionado la posibilidad de adjuntar filtros eBPF a sockets concretos. Pero la ±ð³æ³Ù±ð²Ô²õ¾±¨®²Ô BPF va m¨¢s all¨¢ del filtrado de paquetes y permite ejecutar scripts personalizados en varios puntos del kernel con muy poca sobrecarga. Aunque esta tecnolog¨ªa no es nueva, es ahora cuando se le puede sacar todo el partido con el incremento en el uso de microservicios desplegados como contenedores orquestados. Las comunicaciones servicio-servicio pueden ser complejas en estos sistemas, haciendo dif¨ªcil relacionar problemas de latencia o rendimiento con una llamada a una API. Ahora estamos encontrando publicaciones de herramientas con scripts eBPF ya escritos para recolectar y visualizar tr¨¢fico de paquetes o informar sobre el uso de la CPU. Con el ascenso de Kubernetes, nos encontramos con una nueva generacion de aplicaciones de seguridad e instrumentaci¨®n basadas en scripts eBPF para dominar la complejidad de grandes despliegues de microservicios.

