Este sitio utiliza cookies para garantizar que obtenga la mejor experiencia en nuestro sitio web.

Cómo pensar en CLOUD NATIVE usando Kubernetes

Una conversación sobre la definición y el desarrollo de capacidades cloud-native usando Kubernetes.

CloudScript Technology
15 de enero de 20207 min de lectura
Cómo pensar en CLOUD NATIVE usando Kubernetes

Definiciones

No hay una definición rápida y fácil para lo que significa cloud-native. De hecho, hay bastantes solapamientos entre términos e ideologías. En su origen, cloud-native consiste en estructurar equipos, cultura y tecnología para usar automatización y arquitecturas que permiten gestionar la complejidad e incrementar la velocidad. Y aquí es donde entra Kubernetes, porque con él conseguimos lanzarnos a este nuevo mundo de forma simple, rápida y confiable.

Adoptar Kubernetes es una manera de facilitar y acelerar el trabajo de los equipos.

Una observación importante: no necesitas ejecutar en la nube para ser cloud-native. Las técnicas pueden aplicarse de forma incremental según sea apropiado y deben ayudar a suavizar la transición hacia la nube.

El valor real de cloud-native va mucho más allá de la canasta de tecnologías que están íntimamente asociadas. Para entender realmente hacia dónde va nuestra industria, necesitamos examinar dónde y cómo podemos hacer que las empresas, los equipos y las personas tengan más éxito.

En este punto, tenemos técnicas comprobadas asociadas a tecnologías orientadas al futuro. Grandes empresas como Google, Netflix y Facebook han dedicado grandes cantidades de recursos al esfuerzo, y empresas más pequeñas y flexibles también están percibiendo valor en ello.

Sin embargo, existen pocos ejemplos de esta filosofía siendo aplicados fuera de los adoptantes tempranos de la tecnología. Todavía estamos en el comienzo de este viaje, comparado con el gigantesco mundo de TI.

Con algunos de los experimentos iniciales siendo comprobados y compartidos, los siguientes temas están surgiendo:

Equipos más eficientes y más felices — las herramientas cloud-native permiten que los grandes problemas se dividan en piezas más pequeñas para equipos más enfocados y ágiles.

Dependencias reducidas — se trata de automatizar mucho del trabajo manual que causa dolor en las operaciones y disminuir la indisponibilidad, con infraestructura que se auto-cura y auto-gestiona. En resumen, "espera que los sistemas hagan más por ti".

Infraestructura y aplicaciones más confiables — Automatización para manejar eventos y fallos inesperados. Por ejemplo, si un solo clic de comando o botón despliega una aplicación a desarrollo, test o producción, puede ser mucho más fácil automatizar el despliegue en un desastre con necesidad de recuperación (automática o manual).

Auditable, visible y depurable — la visibilidad dentro de aplicaciones complejas queda comprometida, y las herramientas usadas en apps cloud-native proporcionan mucha más información sobre lo que está ocurriendo dentro de una aplicación.

Seguridad profunda — Actualmente, muchos sistemas de TI tienen una capa externa bastante rígida, distinta de la capa interna. Cloud-native permite a los desarrolladores de aplicaciones desempeñar un papel activo en la creación de aplicaciones auto-protegidas.

  • Uso más eficiente de los recursos — maneras automatizadas y similares a la nube de desplegar y gestionar aplicaciones y servicios abren oportunidades para aplicar algoritmos de automatización. Por ejemplo, un orquestador de cluster Kubernetes puede automatizar la distribución de cargas entre máquinas, en lugar de que un equipo de operaciones lo gestione manualmente.

Este es apenas el comienzo de una discusión que debe ser continua. Hay una infinidad de temas que aún deben abordarse y lo serán — acompañen los próximos capítulos de esta historia.

Mantente al día

Recibe nuestros artículos sobre DevOps, Kubernetes, Platform Engineering y Cloud Native directamente en tu correo.

Sin spam. Cancela cuando quieras.