creacion de un cartridge para openshift

31
Creación de un Cartridge para Openshift Construyendo un cartridge para GRAILS Alex Irmel Oviedo Solis PRESENTADO POR: Embajador y empaquetador de Fedora por Perú

Upload: alex-irmel-oviedo-solis

Post on 20-Jan-2017

468 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Creacion de un cartridge para Openshift

Creación de un Cartridge para Openshift

Construyendo un cartridge para GRAILS

Alex Irmel Oviedo SolisPRESENTADO POR:

Embajador y empaquetador de Fedora por Perú

Page 2: Creacion de un cartridge para Openshift

Acerca de mí ...

Alex Irmel Oviedo Solis

Fedora Ambassador for Peru

Ingeniero Informático y de Sistemas - UNSAAC

Openshift Acelerator - LATAM

SysAdmin - Gobierno Regional del Cusco

Page 3: Creacion de un cartridge para Openshift

Agenda

· Nociones básicas del Cloud Computing.

· ¿Qué es OpenShift?

· Términos referidos a Openshift.

· Workflow de un cartridge.

· Estructura de un cartridge.

· Proceso de creación del cartridge.

· Proceso de prueba del cartridge.

· Documentación complementaria.

Page 4: Creacion de un cartridge para Openshift

Términos básicos delCloud Computing

Page 5: Creacion de un cartridge para Openshift

Términos básicos

· Cloud Computing

· Es un paradigma que permite ofrecer SERVICIOS de computación a través de Internet.

· Posibilita el acceso a los servicios sin ser expertos en estos, al menos en los servicios diseñados para los usuarios.

Page 6: Creacion de un cartridge para Openshift

Términos básicos

Page 7: Creacion de un cartridge para Openshift

¿Qué es OpenShift?

Page 8: Creacion de un cartridge para Openshift

¿Qué es OpenShift?

· OpenShift es un producto de computación en la nube de plataforma como servicio de Red Hat.

· Este software funciona como un servicio que es de código abierto bajo el nombre de "OpenShift Origin", y está disponible en GitHub.

· Los desarrolladores pueden usar Git para desplegar sus aplicaciones Web en los diferentes lenguajes de la plataforma.

Page 9: Creacion de un cartridge para Openshift

¿Qué es OpenShift?

origin

Public Cloud

Service

On-premise

or Private Cloud

Software

Open Source Project

Page 10: Creacion de un cartridge para Openshift

¿Qué es OpenShift?

· OpenShift también soporta programas binarios que sean aplicaciones Web, con tal de que se puedan ejecutar en RHEL Linux. Esto permite el uso de lenguajes arbitrarios y frameworks.

· OpenShift se encarga de mantener los servicios subyacentes a la aplicación y la escalabilidad de la aplicación como se necesite.

Page 11: Creacion de un cartridge para Openshift

¿Qué es OpenShift?

Page 12: Creacion de un cartridge para Openshift

Términos referidos aOpenshift

Page 13: Creacion de un cartridge para Openshift

Términos referidos a Openshift

● Gears o Engranajes ● Un engranaje representa una porción de CPU,

memoria RAM y la base de almacenamiento del nodo que se pondrá a disposición de cada aplicación. Una aplicación no puede utilizar más recursos de los que le ha sido asignados, con la excepción de almacenamiento.

● Cartridge o Cartuchos● Cartuchos representan componentes enchufables

que se pueden combinar en una sola aplicación. ● Estos incluyen los lenguajes de programación,

motores de bases de datos, y varias herramientas de gestión.

Page 14: Creacion de un cartridge para Openshift

Workflow de uncartridge

Page 15: Creacion de un cartridge para Openshift

Workflow de un cartridge

1.- Creación del Gear

2.- Copia del cartridge dentro del gear.

3.- Ejecución del script “setup”

4.- Ejecución de “hooks”

5.- Inicio del cartridge vía “control start”

Page 16: Creacion de un cartridge para Openshift

Estructura de uncartridge

Page 17: Creacion de un cartridge para Openshift

Estructura de un cartridge

Page 18: Creacion de un cartridge para Openshift

Estructura de un cartridge

Page 19: Creacion de un cartridge para Openshift

Proceso de creacióndel cartridge

Page 20: Creacion de un cartridge para Openshift

Proceso de creación del cartridge

● Crear y editar “bin”:● “bin/build” -> Construccion de la App● “bin/control” -> Inicio, Parada, Reinicio● “bin/deploy” -> Despliegue de la aplicación● “bin/install” -> Instalar template en workspace● “bin/setup” -> Instalar cartridge en Openshift● “bin/upgrade” -> Actualización del cartridge

Page 21: Creacion de un cartridge para Openshift

Proceso de creación del cartridge

● Crear y editar “env”:● Archivos con variables de entorno principal.

● Crear y editar “metadata”:● manifest-yml -> Archivo de manifiesto principal● managed_files.yml -> Archivos para archivos protegidos

● Crear y editar “template”:● Organización inicial del proyecto.

Page 22: Creacion de un cartridge para Openshift

Proceso de pruebaDel cartridge

Page 23: Creacion de un cartridge para Openshift

Proceso de prueba del cartridge

● Subir archivos a un lugar de internet como github.● Utilizando la interface web, debería ser más o

menos asi:

Page 24: Creacion de un cartridge para Openshift

Proceso de prueba del cartridge

Page 25: Creacion de un cartridge para Openshift

Proceso de prueba del cartridge

● Usando la linea de comandos:

Manifest URLRHC command

Page 26: Creacion de un cartridge para Openshift

Proceso de prueba del cartridge

Page 27: Creacion de un cartridge para Openshift

El futuro...

Page 28: Creacion de un cartridge para Openshift

El futuro...

Page 29: Creacion de un cartridge para Openshift

DocumentaciónComplementaria

Page 30: Creacion de un cartridge para Openshift

Documentación complementaria

● https://www.openshift.com/blogs/new-openshift-cartridge-format-part-1

● https://www.openshift.com/blogs/new-openshift-cartridge-format-part-2

● https://www.openshift.com/blogs/new-openshift-cartridge-format-part-3

● http://openshift.github.io/documentation/oo_cartridge_developers_guide.html

● https://github.com/mmcgrath-openshift/openshift-httpd-cartridge-broken

Page 31: Creacion de un cartridge para Openshift

¿Preguntas?

Ing Alex Irmel Oviedo [email protected]://fb.com/alex.oviedosolis@alexove_pehttp://alexove.me

Descarga el codigo fuente en:https://github.com/alexove/openshift-grails-cartridge