Spring Cloud Skipper es una herramienta que permite descubrir aplicaciones Spring Boot y gestionar su ciclo de vida en múltiples plataformas Cloud.
Skipper puede usarse en modo standalone o se puede integrar con pipelines CI para hacer un despliegue continuo de aplicaciones Spring Boot.
Skipper esta diseñado teniendo en cuenta otros proyectos del ecosistema Kubernetes que permite hacer templates o orquestación.
En Skipper las aplicaciones se empaquetan como paquetes que contienen un template de fichero de configuración y un conjunto de valores por defecto que llenan el template.
Skipper ofrece procedimientos para orquestar el procedimiento de upgrade/rollback entre versiones de forma sencilla.
Las principales características de Skipper son:
- Definir cuentas en multiples plataformas donde pueden desplegarse aplicaciones Spring Boot. Se soportan actualmente plataformas Locales, Cloud Foundry y Kubernetes.
- Sustituir variables en ficheros plantilla Mustache que describen como desplegar aplicaciones a la Plataforma
- Buscar repositorios de paquetes para aplicaciones existentes
- Instalar/actualizar/rollback de un paquete de forma sencilla
- Almacenar la historia de ficheros plantilla (application manifest) que representan la descripción de que se ha desplegado a la Plataforma en una release específica.
- Ofrecer una shell interactive y un API Web para flujos CI.
La version 1.0-RC1 usará Spring Statemachine para el proceso de workflow.
Los conceptos principales de Skipper son:
· Plataformas : donde ejecutan las aplicaciones
· Paquetes: define el récipe básico a desplegar en la plataforma
· Repositorios: conde los metadatos de los paquetes y los ZIPs se almacenan
· Releases: se crean en Skipper después de instalar, actualizar o hacer rollback de un paquete
· Release workflow: pasos para actualizar o hacer rollback de una versión a otra
Veamos un ejemplo de Skipper usando la plataforma Local.
1, Primero descargaremos el Server y el Shell de Skipper:
2. Luego ejecutaré el server con:
java -jar spring-cloud-skipper-server-1.0.0.BUILD-SNAPSHOT.jar
(Skipper ejecuta en el Puerto 7577)
3. Una vez arrancado ejecutaré la Shell con:
java -jar spring-cloud-skipper-shell-1.0.0.BUILD-SNAPSHOT.jar
4. En este tour puedo seguir: https://docs.spring.io/spring-cloud-skipper/docs/current/reference/htmlsingle/#three-minute-tour
Aunque aún está algo verde, le auguro gran futuro! 🙂