En este blog ya he escrito algunas entradas sobre la plataforma de Okteto (http://okteto.com) y cómo utilizarla
para desplegar pequeños proyectos (de forma gratuita) en Kubernetes de una forma simple.
Básicamente Okteto son dos productos diferentes pero relacionados:
-
una herramienta a "instalar" en tu Kubernetes que permite al desarrollador sincronizar
su proyecto en un pod del cluster así como poder depurar la aplicación directamente en el mismo
(entre otras cosas)
-
un servicio kubernetes con diferentes planes de precios incluida una capa gratuita con suficientes
recursos como para desplegar servicios básicos en real (ideal en mi opinión para el aprendizaje de k8s)
En estos post he descrito cómo puedes desplegar desde un static site de fotos (sí, soy culpable, pero
a cambio aprendí el concepto de volumenes y cómo definirlos y gestionarlos en k8s), una aplicación
Grails (o SpringBoot) etc. todos ellos usando el descriptor propio de k8s (que es bastante verbose)
.Así mismo, en todos estos ejemplos siempre ha sido desplegar una aplicación simple y en
algunos casos usar una instancia Postgre desplegada mediante el interface gráfico.
En este post voy a contar otra de las funcionalidades con las que cuenta este servicio, okteto stack, y que es propia de
él, es decir, no es válida para otro cluster k8s que no sea Okteto, al menos hasta donde yo se.
Okteto stack es muy parecido a un docker-compose (de hecho salvo algunas particularidades podrías usar un docker-compose)
donde podemos definir las características principales de nuestro(s) servicio(s) e incluso generar la imagen al estilo
de este. La ventaja que tiene es que nos permite desplegar en el cluster de kubernetes servicios sin necesidad de
la verbosidad de este (ficheros de cientos de líneas de kubernetes se convierten en unas pocas con Okteto stack).