Juega con Kubernetes: servicio para un conocimiento práctico de los K8

Durante aproximadamente un año, escribimos sobre un interesante servicio en línea para la autoeducación en el mundo de los contenedores: Jugar con Docker . Sus autores, apoyados por Docker Inc, no se detuvieron y siguieron las tendencias que observamos no solo en el "círculo estrecho" de Docker, sino también en la industria en general: ya lanzaron un nuevo servicio similar dedicado a Kubernetes. ¡Entonces, conoce a Play with Kubernetes (PWK)!


Zona de juegos PWK


PWK repite completamente la idea (e incluso la interfaz) de su "progenitor" Play with Docker: su sitio principal es el llamado "patio de recreo", que proporciona un navegador web con acceso a una máquina virtual de Linux para experimentar con los grupos de Kubernetes . De hecho, es un análogo SaaS gratuito de Minikube con sus propios servicios (funciona directamente en el navegador) y limitaciones (ver más abajo).

Técnicamente, esto utiliza las capacidades de la tecnología Docker-in-Docker (DIND), que le permite ejecutar contenedores Docker dentro de otros contenedores Docker. (Este enfoque para trabajar con Docker no se recomienda en el caso general, sin embargo, tiene derecho a la vida en aplicaciones especiales, como el desarrollo de Docker y las tecnologías relacionadas). Versiones usadas del software en el servicio:

  • Sistema operativo "Host" (en el host) - CoreOS 7.4.1708,
  • Servidor Kubernetes - 1.8.11,
  • Cliente de Kubernetes - 1.8.14,
  • Docker - 03/18/1-ce.

Para emular el terminal en un navegador web, todavía se ofrece una implementación de JavaScript de xterm.js , para la cual hay una pequeña cantidad de configuraciones disponibles (selección de tamaño de fuente, la capacidad de usar métodos abreviados de teclado de macOS). El primero, es decir Familiarizado con Play with Docker, limitaciones: no más de 4 horas de operación continua dentro de una sesión y no más de 5 nodos de clúster (4 GB de RAM para cada uno).



Si la entrada a la plataforma Play with Docker está actualmente disponible solo por Docker ID, entonces en el caso de Kubernetes hay una segunda opción, a través de una cuenta en GitHub.

El lanzamiento real del sitio principal de Jugar con Kubernetes, el patio de recreo, fue "silencioso y discreto" el verano pasado, pero en sí mismo no es tan interesante como el trabajo de laboratorio. Y hace solo un mes se realizó un anuncio público del primer trabajo de este tipo, disponible en el recurso Aula Jugar con Kubernetes .

Laboratorio con Kubernetes


Se basó en el trabajo de Jérôme Petazzoni , quien dedicó 7 años de su vida a Docker Inc, donde pasó de ingeniero de SRE a evangelista y realizó muchos seminarios sobre el trabajo con contenedores y Kubernetes.



Tema interesante: ¿Por qué Jérôme dejó Docker?
Jérôme, a quien también puede conocer por el repositorio del DIND ya mencionado, comenzó su viaje a Docker con una pequeña startup dotCloud que compite con Heroku (~ 2011). En 2013, la compañía se unió a Docker Inc y el autor, siendo SRE, realizó una presentación sobre el tema de los contenedores. Se ha convertido en un orador activo desde 2014, haciendo un promedio de 2 apariciones por semana.

Para 2016, los talleres de orquestación de contenedores se agregaron a estas actuaciones regulares ... y al mismo tiempo, Jérôme se dio cuenta de que había agotado sus recursos. En octubre, sus sentimientos fueron confirmados al recibir un diagnóstico de depresión. Los antidepresivos y la terapia siguieron, lo que condujo a una mejora visible. Sin embargo, en el verano de 2017, Jérôme, participando en un estudio de salud mental, pasó la prueba de agotamiento del Inventario de Burnout de Maslach y se encontró en la "zona roja". Después de hablar con personas que tenían conocimientos sobre este asunto, tomó la decisión de tomar un descanso en 2018, y antes de eso, hizo todo lo posible para implementar la estrategia Docker destinada a apoyar a Kubernetes.

“En 2018, me dedicaré tiempo a mí mismo. Estoy aprendiendo óxido. Estoy escribiendo un pequeño clon de un [instrumento musical] Ableton para conectar un controlador de red (como Monome o LaunchPad) a una Raspberry Pi para reproducir música en vivo. Voy a pasar por un retiro de meditación vipassana. Espero ser un mentor para aquellos que no han recibido tanta felicidad y privilegios como yo, y convertirme en el mejor aliado para ellos. Salir de Docker es el primer paso y el más difícil, pero el camino próximo se ve muy bien ".

Pero volvamos al juego real con Kubernetes ...

El trabajo de laboratorio ofrecido en el servicio en línea se centra en los principiantes y está dedicado a los conceptos básicos y las capacidades de Kubernetes:

  • lo que este sistema generalmente le permite hacer: lanzar contenedores, balancear la carga, implementar nuevas versiones de imágenes, escalar automáticamente ...;
  • Arquitectura kubernetes
  • Recursos de Kubernetes: nodos, pods, servicios, espacios de nombres, secretos;
  • enfoque declarativo;
  • Modelo de red de Kubernetes
  • etc.

Lo principal es que esta teoría es apoyada por la práctica, para lo cual todo se inició. Como parte de la parte práctica, se propone lanzar sus primeros contenedores y aprender a reenviar puertos para ellos, crear una implementación y escalarla, trabajar con recursos en YAML, familiarizarse con etiquetas y selectores ... No enumeraré todos los pasos en detalle: es mejor verlos (y probarlos) usted mismo en Taller práctico de Kubernetes .

El trabajo de laboratorio se ve igual que todo en Play with Docker: a la izquierda tiene una instrucción de documento (incluidos los comandos de entrada), y a la derecha hay un terminal (más precisamente, hay dos de ellos para dos nodos de Kubernetes), que permite "Juegue" con el administrador del clúster K8s y vea qué y cómo sucede realmente. Esto último, por supuesto, se ve facilitado por la capacidad de ejecutar comandos de calificación arbitrarios en cualquier etapa del trabajo.



En lugar de una conclusión


En este momento, solo hay un laboratorio introductorio disponible en Play with Kubernetes, pero los autores prometen crear otros nuevos. Su desarrollo en Play with Docker nos permite esperar que esto realmente suceda. Quienes deseen compartir su experiencia pueden hacerlo en un repositorio especial de proyectos.

PS


Lea también en nuestro blog:

Source: https://habr.com/ru/post/es415381/


All Articles