Kubernetes gana velocidad con Fastly
Cuando alguien necesita escalabilidad, acude a Kubernetes. Y cuando los equipos responsables de Kubernetes necesitan mejorar su escalabilidad y su eficiencia, ahí está Fastly. Estos equipos buscaban una nueva solución para distribuir cada mes más de 5 petabytes de datos en descargas desde su servicio oficial de archivos binarios entre personas de todo el mundo. Empezamos mejorando la velocidad y la escalabilidad de las descargas y, ya que estábamos, les ayudamos a entender el verdadero alcance de un problema que había pasado inadvertido.
La velocidad y los registros en tiempo real, dos por uno
Los equipos de Kubernetes optaron por Fastly porque querían acelerar las descargas, reducir los costes de tráfico de salida y tener más opciones para hacer cambios en el backend sin interrumpir el servicio. Al final, la observabilidad en tiempo real de Fastly, con funcionalidades de registro, acceso a métricas y mucho más, fue la clave para detectar un problema oculto cuando pasaron su tráfico de descargas a Fastly. Aquí puedes leer el anuncio de Kubernetes en el que se explica por qué nos eligió.
Para saber cómo fue todo, echa un vistazo a este vídeo sobre la migración del tráfico en tiempo real. La sorpresa fue mayúscula cuando vimos que el tráfico entrante estaba muy por debajo del volumen esperado. Hasta ese momento, el personal de Kubernetes no había tenido acceso a funcionalidades de supervisión y visibilidad del tráfico, y mucho menos en tiempo real. La ingeniería de red y el DNS pueden ser extremadamente complicados y opacos, pero ahora los equipos de Kubernetes ya pueden ver los patrones de tráfico gracias a Fastly. Desde el primer momento en el que empezaron a trabajar con nosotros, se dieron cuenta de que algo no cuadraba. El diagnóstico conjunto de los equipos de Kubernetes y Mission Control de Fastly no se hizo de rogar: básicamente, un gran volumen de peticiones se dirigía directamente al depósito de Google Cloud Storage para la descarga de archivos binarios, en lugar de la nueva URL sintetizada (cdn.dl.k8s.io) que supuestamente era su destino. Resulta que, durante los primeros compases del proyecto, el nombre del host de origen se había anunciado públicamente y, a pesar de los intentos de eliminarlo dentro y fuera del propio proyecto, aún quedan muchas instancias codificadas del nombre del host del depósito de GCS. Cuando los equipos de Kubernetes dieron el salto a Fastly y empezaron a disfrutar de una visibilidad sencilla y directa, se percataron de este problema por primera vez en la historia del proyecto.
Con esta información en la mano, los equipos pondrán en marcha una iniciativa para que personas de todo el mundo descarguen sus archivos binarios desde el nuevo dominio y, cuando empiece a dar sus frutos, podrán ver cómo aumenta el tráfico que pasa por la CDN de Fastly en tiempo real. Ahora que Fastly distribuye sus archivos binarios, tienen la libertad de hacer cambios e incluso migrar a un nuevo depósito de GCS de su propiedad en el futuro, todo ello sin que se interrumpa el servicio y sin necesidad de realizar cambios por parte de quienes intenten descargar Kubernetes. Las descargas ya se están distribuyendo más rápidamente y el proyecto está ahorrando un montón de dinero en costes de tráfico de salida. Si quieres echar un vistazo a sus métricas en tiempo real, consulta el panel de Kubernetes en nuestra página para desarrolladores.
Por qué Fastly es un as de la visibilidad en tiempo real
Así de primeras, puede que este tipo de visibilidad en tiempo real en nuestra interfaz no parezca algo revolucionario, pero lo cierto es que la mayoría de las demás CDN no la ofrecen, por lo que sus clientes están obligados a apañárselas con datos de registro en lotes que distribuyen con mucha latencia. Estos datos no se ven en los paneles y no se pueden exportar ni enviar a otras herramientas, pero nosotros lo ponemos en bandeja.
En Fastly hemos diseñado nuestra plataforma para que esté totalmente definida por software, lo que nos permite llevar a cabo una gran cantidad de registros, y esto resulta imposible en arquitecturas antiguas que dependen en gran medida de interruptores físicos, componentes menos adaptables y, por norma general, tecnologías menos modernas. Fastly se toma muy en serio la observabilidad y los datos en tiempo real. Tienes acceso a ellos desde el momento en que pones en marcha nuestra red y no te costará nada integrarlos con las herramientas que ya utilizan casi todos los desarrolladores, como Splunk y Datadog. Y como sabemos que puedes preferir los paneles de observabilidad de otros proveedores, ofrecemos decenas de puntos de conexión para el envío de registros en tiempo real. Tus datos son tuyos y puedes hacer con ellos lo que quieras.
El diseño y la optimización de redes, el DNS, la distribución de contenidos y la arquitectura global de almacenamiento en caché son muy difíciles de gestionar. Kubernetes cuenta con el Infrastructure Special Interest Group, un fantástico grupo interno dedicado a ello, pero la mayoría de los equipos de desarrollo y los proyectos de código abierto no disponen de expertos de este calibre. Además, entre que Fastly ofrece tanto datos como configurabilidad a un altísimo nivel y que las CDN no exponen ningún tipo de información, incluida la relativa a la configurabilidad, los clientes pueden ajustar sus configuraciones de acuerdo con sus especificaciones y ahorrarse una buena factura en servicios profesionales. Fastly te permite saber qué está pasando, hacer los cambios que creas convenientes y enviarlos a producción. Si tienes alguna duda, siempre puedes ponerte en contacto con nuestro servicio de atención al cliente, pero todo está pensado para que compruebes qué funciona y hagas todo tipo de cosas por tu cuenta.
El futuro de Kubernetes con Fastly
Ya se están enviando comunicaciones a los equipos y a los responsables de proyectos para que empiecen a utilizar el nuevo punto de conexión de la CDN (cdn.dl.k8s.io). Mucha gente desarrolla en Kubernetes, así que el cambio no va a producirse de la noche a la mañana. Mientras tanto, Kubernetes está planteándose pasar su backend a otro depósito de GCS de su propiedad sin que nadie sufra interrupciones en su acceso gracias al nuevo punto de conexión de la CDN (cdn.dl.k8s.io). Los archivos binarios de Kubernetes no cambian tanto en comparación con otros contenidos de internet, así que van a optimizar su tiempo de vida (TTL) en la caché de Fastly para reducir los trayectos de vuelta al origen todo lo posible.
Mas adelante, Kubernetes tiene previsto utilizar la información sobre los usuarios y los patrones de tráfico a la que ahora tiene acceso para implementar la protección del origen de Fastly de una manera muy singular. Cuando alguien integra Kubernetes en su infraestructura, suele ceñirse a una versión concreta. Por si fuera poco, casi todas las descargas de archivos binarios corren a cargo de herramientas de automatización, sobre todo scripts que se ejecutan en las acciones de GitHub. Estas acciones se ejecutan únicamente en unas regiones de Microsoft Azure concretas y predecibles, por lo que la demanda de algunas versiones es desproporcionada en determinadas zonas geográficas. Con Fastly, Kubernetes puede empezar a optimizar su estrategia de protección del origen para asociar los POP de Fastly a los lugares donde se ejecutan las acciones de GitHub y se solicitan las versiones de Kubernetes.