Las bases de datos en la nube son servicios de bases de datos que se ejecutan en recursos de cloud computing y a los que se puede acceder a través de una conexión a Internet. Las bases de datos en la nube ofrecen la misma funcionalidad que aquellas que se ejecutan en una infraestructura local, pero también proporcionan ahorros de costes y una mayor escalabilidad.
Kubernetes es una plataforma de código abierto dedicada a la ejecución de aplicaciones en contenedores. El nombre proviene de un término griego que significa timonel o piloto. La abreviatura de Kubernetes, K8s, procede del total de ocho letras que hay entre la "K" y la "s".
Google lanzó el proyecto Kubernetes en abierto en 2014. Kubernetes combina más de 15 años de experiencia procedente de Google en la ejecución de cargas de trabajo de producción a escala con las mejores ideas y prácticas de la comunidad.
Antes de que el cloud computing fuese tan popular, las organizaciones ejecutaban aplicaciones en servidores físicos. No había forma de definir los límites de recursos para las aplicaciones de un servidor físico, lo que provocaba problemas de asignación de recursos.
Como solución, se introdujo la virtualización. Con ella se podían ejecutar varias máquinas virtuales (VM) en una sola CPU de servidor físico. La virtualización permite aislar las aplicaciones entre máquinas virtuales y proporciona seguridad, ya que las aplicaciones no pueden acceder libremente a la información de otras aplicaciones.
Los contenedores son similares a las máquinas virtuales, pero tienen propiedades de aislamiento más flexibles para compartir el sistema operativo (SO) entre las aplicaciones. Por lo tanto, los contenedores se consideran ligeros. De forma similar a una máquina virtual, un contenedor tiene su propio sistema de archivos, cuota de CPU, memoria, espacio de para procesar y mucho más. Dado que los contenedores están desvinculados de la infraestructura subyacente, se pueden trasladar entre nubes y distribuciones de sistemas operativos.
La implementación, gestión y escalabilidad de aplicaciones contenedorizadas es un proceso difícil y laborioso. Aunque Kubernetes optimiza drásticamente la coordinación de contenedores, su configuración y funcionamiento pueden suponer un reto para muchos equipos de TI. Una solución de Kubernetes gestionado elimina esta complejidad al asumir, total o parcialmente, la responsabilidad de las tareas de configuración inicial, ajuste y funcionamiento de los entornos de Kubernetes.
¿Qué son los contenedores?
Los contenedores son unidades de software ligeras y portátiles que contienen las bibliotecas y dependencias necesarias para que una aplicación pueda ejecutarse en cualquier lugar y máquina. Como forma optimizada de crear, probar e implementar aplicaciones en varios entornos, los contenedores mejoran la eficiencia de los esfuerzos de DevOps y proporcionan una mayor coherencia en todos los ecosistemas de TI. Junto con los microservicios, los contenedores son una parte importante de las aplicaciones nativas de nube.
¿Cómo funciona Kubernetes?
Kubernetes (K8s) coordina las aplicaciones contenedorizadas y simplifica la gestión de clústeres. Mediante una infraestructura local o de nube pública, Kubernetes automatiza la implementación y la gestión de aplicaciones nativas de nube contenedorizadas y distribuye las cargas de trabajo en un clúster de Kubernetes. Un clúster se compone de nodos, que son hosts informáticos físicos o hosts virtuales únicos. Kubernetes optimiza la implementación de contenedores en estos nodos para lograr la máxima eficiencia. También asigna almacenamiento a los contenedores en ejecución, revisa la escalabilidad automática, ofrece balanceo de carga y colabora en la recuperación automática para garantizar una alta disponibilidad. En una implementación de Kubernetes autogestionada, los desarrolladores gestionan las operaciones del clúster mediante kubectl, una interfaz de línea de comandos (CLI) que se comunica con la API de Kubernetes.
¿Cómo funciona un servicio de Kubernetes gestionado?
Al utilizar Kubernetes, los equipos de TI deben configurar y gestionar las funciones de host, como la configuración de credenciales desvinculadas, la recuperación automática, la ejecución por lotes, la gestión de cargas de trabajo y la implementación progresiva de aplicaciones, entre otras. Cuando se configuran manualmente estas funciones, todos los aspectos de Kubernetes pueden consumir bastante tiempo y requerir una experiencia considerable. Un servicio de Kubernetes gestionado se encargará de muchas de estas tareas o guiará a los equipos de TI a través del proceso de toma de decisiones. Las soluciones de Kubernetes gestionado también ayudan a automatizar los procesos rutinarios de actualizaciones, balanceo de carga, escalabilidad y supervisión. Una solución de Kubernetes gestionado de calidad debe ofrecer un plano de control fácil de usar, opciones de implementación sencillas y un mantenimiento continuo para ayudar a los usuarios a comercializar las aplicaciones más rápido.
¿Cuáles son las características de una solución de Kubernetes gestionado?
- Las opciones de autenticación y controles de acceso integradas ayudan a minimizar el tiempo dedicado a la gestión de usuarios y seguridad.
- La gestión continua garantiza que la infraestructura de Kubernetes sea totalmente compatible en todo momento y que el propietario ofrezca o aplique actualizaciones y parches de seguridad con una cadencia óptima.
- Un panel de control basado en navegador proporciona a los equipos de TI visibilidad de la implementación de Kubernetes y diversos grados de capacidad de gestión de aplicaciones.
- La escalabilidad prácticamente ilimitada es posible gracias a la capacidad de conectar clústeres adicionales en cualquier momento, según sea necesario.
- Las funciones de nube híbrida están disponibles a través de algunos proveedores de Kubernetes gestionado que pueden ofrecer estos servicios tanto en su propia infraestructura como en la local.
- La supervisión y el registro automáticos permitan realizar una auditoría y una verificación del rendimiento sencillas.
¿Cuáles son las ventajas de una solución de Kubernetes gestionado?
- Escalabilidad. La compatibilidad con la arquitectura descentralizada de Kubernetes facilita la escalabilidad de las aplicaciones contenedorizadas para satisfacer los requisitos empresariales.
- Implementación acelerada. Con un servicio de Kubernetes gestionado, los equipos pueden poner en marcha un clúster en cuestión de minutos, y el proveedor de Kubernetes completa todas las tareas de configuración.
- Gestión minimizada. Un proveedor de Kubernetes gestionado se encargará de todas las tareas de mantenimiento para lograr un clúster de Kubernetes actualizado y escalable fácilmente.
- Más tiempo disponible para los desarrolladores. La solución idónea de Kubernetes gestionado permite a los desarrolladores centrarse en generar valor para la empresa, en lugar de en solucionar los problemas de una implementación de Kubernetes.
- Costes predecibles. Una solución gestionada permite a los equipos de TI predecir mejor el coste mensual que tiene la ejecución de una implementación de Kubernetes.
- Menor coste total de propiedad (TCO). Una solución gestionada reducirá en última instancia el coste total de propiedad, en comparación con el gasto de instalar y configurar una implementación de Kubernetes con recursos y experiencia internos.
- Seguridad mejorada. Los proveedores de Kubernetes gestionado ofrecen experiencia en seguridad basada en la nube, lo que ayuda a proteger la mayor superficie de ataque que pueden crear los contenedores.
Preguntas frecuentes
La denominación Kubernetes "vainilla" hace referencia a una configuración de Kubernetes lo más básica posible. Incorpora los principales componentes necesarios para ejecutar Kubernetes, pero poco más. Una instalación "vainilla" de Kubernetes ofrece a los usuarios más control sobre sus opciones de configuración, pero también requiere mucho tiempo para ajustarse y ponerse en funcionamiento.
Kubernetes ofrece muchas de las características de una solución de plataforma como servicio (PaaS). Entre ellas se incluyen su implementación sencilla, la gestión automatizada de la infraestructura y las herramientas para la orquestación de aplicaciones. Sin embargo, Kubernetes no ofrece herramientas de desarrollo integradas ni herramientas para escribir o probar código.
Por qué los clientes eligen Akamai
Akamai es la empresa de ciberseguridad y cloud computing que potencia y protege los negocios online. Nuestras soluciones de seguridad líderes en el mercado, nuestra inteligencia ante amenazas consolidada y nuestro equipo de operaciones globales proporcionan una defensa en profundidad para proteger los datos y las aplicaciones empresariales. Las soluciones integrales de cloud computing de Akamai garantizan el rendimiento y una buena relación calidad-precio en la plataforma más distribuida del mundo. Las grandes empresas confían en Akamai, ya que les ofrece una fiabilidad, una escalabilidad y una experiencia inigualables en el sector, idóneas para crecer con seguridad.