Engine

¿Cómo crear un microservicio en Onesait Platform?

Desde la Plataforma podemos crear microservicios y gestionar su ciclo de vida completo; desde la compilación del código hasta el despliegue en CaaS.

En esta entrada vamos a ver cómo crear uno desde cero y ver cómo funciona todo.

Creación del microservicio

Para crear un microservicio navegaremos hasta el menú de Development > My Microservices.

Esto nos abrirá el listado de microservicios que tendremos disponibles como usuario. Para crear un nuevo microservicio, pulsaremos en el botón de + situado en la parte superior derecha.

Con esto nos aparecerá el gestor de creación de microservicios.

Creación del proyecto en GitLab

Si estamos creando el proyecto desde cero, vamos a poder elegir un arquetipo, el cual nos generará un proyecto en GitLab con un código base sobre el que empezar a trabajar.

En función de la tipología de proyecto, seleccionaremos un arquetipo u otro. Por ejemplo, el arquetipo IoT Client, viene preconfigurado para comunicarse con el Broker de la Plataforma y realizar operaciones de consulta sobre una Entidad.

Creación con proyecto Git existente

En caso de que ya exista el código en un repositorio Git, y tan solo queremos gestionar todo el ciclo de vida desde la Plataforma, vamos a poder indicar que no queremos crear el repositorio Git (desmarcando el checkbox de ‘CREATE GIT REPOSITORY‘), y configurar el repositorio Git existente.

Contexto y puerto

Es importante especificar el context path definido en nuestra aplicación, así como el puerto, para poder generar posteriormente las rutas correctas en el gateway de microservicios.

Configuraciones

Es necesario configurar las credenciales de Git, Jenkins, y CaaS (en este caso Rancher).

Una vez configurado todo, podemos crear el microservicio. En caso de que hayamos seleccionado la opción de crear repositorio en Git, esta acción puede que tarde unos segundos. 

En cuanto aparezca el microservicio en el listado ya podremos ver y gestionar nuestro microservicio desde el listado anterior:

Ahora ya podemos clonarnos el repositorio y empezar a trabajar en el proyecto.

Nota: el token del usuario tanto de GitLab como de Jenkins tiene que tener los permisos necesarios para poder crear proyectos Git y pipelines de integración continua.

Compilación y generación de imágenes Docker

En cualquier momento, a través del pipeline autogenerado en Jenkins, nos va a ser posible compilar cualquier rama Git del repositorio y generar imágenes de Docker nuevas. Para ello, tan solo tenemos que pulsar en el icono con el martillo de Build service:

Nos aparecerá entonces una ventana emergente que nos pedirá los parámetros de entrada del pipeline:

Una vez introducidos, pulsaremos en el botón de ‘Generate‘ y tendremos que esperar a que finalice el proceso.

Una vez finalizado el proceso, desaparecerá el spinner del registro y podremos proceder a desplegarlo.

Despliegue en CaaS

Una vez generadas las imágenes, podemos proceder a desplegar el microservicio. Para ello pulsamos en el botón con el icono de cohete de ‘Deploy‘:

Hecho esto, se abrirá una ventana emergente donde tendremos que seleccionar de un desplegable el entorno y el host, así como el DNS donde se va a desplegar dicho microservicio:

Además, una vez seleccionado el entorno nos aparecerá un desplegable en el que podemos elegir el stack en el que desplegar el microservicio. Esto es bastante útil en el caso de que queramos agrupar varios microservicios dentro de un mismo stack de Rancher 1.6.

Pulsaremos en Deploy, y el proceso llevará unos segundos. Cuando esté terminado nos saldrá un modal informando de ello.

Una vez desplegado, el microservicio se disponibilizará automáticamente desde el exterior. Si se trata de una aplicación web con componentes visuales, podremos navegar al microservicio a través del icono del Ojo:

En caso de ser un servicio puramente REST, podremos copiar la URL generada (en este caso https://development.onesaitplatform.com/restaurants/) y realizar llamadas desde cualquier cliente REST.

Upgrade del servicio desplegado

Si queremos actualizar la versión del microservicio desplegado, o sobrescribir alguna variable de entorno, tan solo tenemos que pulsar sobre la tecla de la flecha ‘Upgrade’.

Se nos abrirá una ventana parecida a la del despliegue, pero en ésta vamos a poder indicar variables de entorno:

✍🏻 Author(s)

Deja una respuesta