Por qué los contenedores y los Kubernetes tienen el potencial de hacer funcionar casi cualquier cosa

| |

COMPARTE EL ARTÍCULO!!!

En mi primer artículo, Kubernetes es un camión volquete: He aquí por qué , Hablé de cómo Kubernetes es elegante en definir, compartir y ejecutar aplicaciones, de manera similar a como los camiones volquetes son elegantes en mover la suciedad. En la segunda, Cómo navegar por la curva de aprendizaje de Kubernetes , explico que la curva de aprendizaje de Kubernetes es realmente la misma curva de aprendizaje para la ejecución de cualquier aplicación en producción, lo que en realidad es más fácil que aprender todas las piezas tradicionales (balanceadores de carga, enrutadores, cortafuegos, conmutadores, software de agrupación, sistemas de archivos agrupados, etc.). Esto es DevOps, una colaboración entre desarrolladores y operaciones para especificar la forma en que las cosas deben funcionar en la producción, lo que significa que hay una curva de aprendizaje para ambos lados. En el artículo cuatro, Fundamentos de Kubernetes: Aprender a conducir primero , Vuelvo a enmarcar el aprendizaje de Kubernetes con un enfoque en la conducción del camión de volteo en lugar de construirlo o equiparlo. En el cuarto artículo, 4 herramientas para ayudarle a manejar Kubernetes , comparto herramientas de las que me he enamorado para ayudar a construir aplicaciones (manejar el camión volquete) en Kubernetes.

 

Desde el principio, Kubernetes ha sido capaz de ejecutar cargas de trabajo basadas en la web (en contenedores) realmente bien. Las cargas de trabajo como los servidores web, Java y los servidores de aplicaciones asociados (PHP, Python, etc.) sólo funcionan. Los servicios de soporte como DNS, balanceo de carga y SSH (reemplazado por kubectl exec) son manejados por la plataforma. Durante la mayor parte de mi carrera, estas son las cargas de trabajo que corrí en la producción, así que inmediatamente reconocí el poder de correr cargas de trabajo de producción con Kubernetes, aparte de DevOps, aparte de ágil. Hay una ganancia de eficiencia incremental incluso si apenas cambiamos nuestras prácticas culturales. La puesta en marcha y el desmantelamiento se hacen extremadamente fáciles, lo que resultaba terriblemente difícil con la TI tradicional. Así que, desde los primeros días, Kubernetes me ha dado todas las primitivas básicas que necesito para modelar una carga de trabajo de producción, en un único lenguaje de configuración (Kube YAML/Json).

Pero, ¿qué pasaría si necesitara ejecutar Multi-master MySQL con replicación? ¿Qué hay de los datos redundantes que utilizan Galera? ¿Cómo se realizan las instantáneas y las copias de seguridad? ¿Qué pasa con las cargas de trabajo sofisticadas como SAP? El día cero (despliegue) con aplicaciones simples (servidores web, etc.) ha sido bastante fácil con Kubernetes, pero las operaciones del día dos y las cargas de trabajo no fueron abordadas. Eso no quiere decir que el segundo día las operaciones con cargas de trabajo sofisticadas fueron más difíciles de resolver que las tradicionales de TI, pero no se hicieron más fáciles con Kubernetes. Cada usuario fue dejado para idear sus propias ideas geniales para resolver estos problemas, que es básicamente el status quo actual. Durante los últimos 5 años, el tipo de pregunta número uno que recibo es sobre el día dos de operaciones de cargas de trabajo complejas.

Afortunadamente, eso está cambiando mientras hablamos con la llegada de Kubernetes Operators. Con la llegada de los Operadores, ahora tenemos un marco para codificar el conocimiento de las operaciones del segundo día en la plataforma. Ahora podemos aplicar la misma metodología de estado definido, estado real que describí en Fundamentos de Kubernetes: Aprenda a manejar primero – ahora podemos definir, automatizar y mantener una amplia gama de tareas de administración de sistemas.

A menudo me refiero a los Operadores como «Sysadmins Robot» porque esencialmente codifican un montón de conocimientos de operaciones del segundo día que un experto en la materia (PYME, como administrador de bases de datos o administrador de sistemas) para ese tipo de carga de trabajo (base de datos, servidor web, etc.) normalmente guardaría en sus notas en algún lugar de un wiki. El problema con que estas notas estén en un wiki es que, para que el conocimiento sea aplicado para resolver un problema, necesitamos hacerlo:

  1. Generar un evento, a menudo un sistema de monitorización encuentra un fallo y creamos un ticket
  2. La PYME humana tiene que investigar el problema, incluso si es algo que hemos visto un millón de veces antes
  3. Human SME tiene que ejecutar el conocimiento (realizar el backup/restauración, configurar la replicación de Galera o transacción, etc)

Con Operadores, todo este conocimiento de las PYMES puede ser integrado en una imagen de contenedor separada que se despliega antes de la carga de trabajo real. Desplegamos el contenedor de Operador, y luego el Operador despliega y administra una o más instancias de la carga de trabajo. Luego manejamos a los Operadores usando algo como el Operator Lifecycle Manager (tutorial de Katacoda).

Por lo tanto, a medida que avanzamos con Kubernetes, no sólo simplificamos el despliegue de aplicaciones, sino también la gestión a lo largo del ciclo de vida. Los operadores también nos proporcionan las herramientas para gestionar aplicaciones muy complejas y de estado con profundos requisitos de configuración (clustering, replicación, reparación, backup/restauración). Y lo mejor de todo es que las personas que construyeron el contenedor son probablemente los expertos en la materia para las operaciones del segundo día, por lo que ahora pueden integrar ese conocimiento en el entorno de las operaciones.

La conclusión de esta serie

El futuro de Kubernetes es brillante y, al igual que la virtualización anterior, la expansión de la carga de trabajo es inevitable. Aprender a dirigir a los kubernetes es probablemente la mayor inversión que un desarrollador o administrador de sistemas puede hacer en el crecimiento de su propia carrera. A medida que se amplíe la carga de trabajo, también lo harán las oportunidades de carrera. Así que, por conducir un increíble camión volquete que es muy elegante para mover la tierra….

COMPARTE EL ARTÍCULO!!!

Previous

Fundadora de la Open Source Hardware Association comparte su historia

21 entusiastas del hardware abierto para seguir en Twitter

Next

Deja un comentario

shares