el clit descubre openshift 

La solución PaaS de RedHat

J0rd1, Jefe en Clit Ltd 

@jordiclaret


a piñón FIJO...

  • PaaS
  • OpenShift
  • Demo
                               


SIN PAAS (¿?)

  • tenemos una idea
  • if money is true then Yeah! 
  • Compra servers and wait...
  • Deploy  frameworks/appservers
  • Deploy testing tools
  • Code, Code, Code
  • Configurar servidores y subir a PROD
  • Si el servicio, crece... compramos mas servers...
  • volvemos al wait...  



¿Con PAAS?

  • tenemos una idea
  • if money is true then Yeah! 
  • Code, Code, Code
  • Test
  • Subimos a PROD en minutos
  • si el servicio crece... escalamos faster!


¿por donde comenzamos con OPENSHIFT?

Partimos de los mismos fuentes con 2 Opciones:
  • OpenShift Enterprise. Creamos una cuenta Online en la infraestructura pública de ReHat y a pagar $$ (RedHat tiene OpenShift en Amazon)

  • OpenShift Origin. Instalas OpenShift en tu CPD y lo mantienes yourself. Disponible en Github (Apachi lic)
                                       

openshift Por fuera

  • Proyecto PaaS Open Source de RedHat
  • Basado en  RHEL + SeLinux, acceso fiable a cada user
  • Se encarga de la gestión y administración de recursos


OPENSHIFT POR DENTRO

  • Broker: Punto central de admin de aplicaciones.
  • Cartridges: aportan funcionalidad necesaria de una aplicación: Web  y BDs. Permite crear nuestros propios “cartridges” no incluidos por defecto.
  • Gear: un “contenedor” recursos limitado (RAM/disco).
  • Nodos: contenedores de “gears” (virtuales o físicas). 
  • Repositorio Git y Namespace

podemos crecer?

¿Redundancia/Escalabilidad?
  • Aplicaciones. LoadBalancer HTTP
  • Base de datos. Replicación MongoDB/MySQL HA
  • Escalabilidad transparente. Aplicación reacciona en funcion del tráfico y auto re-distribuye recursos
  • Si la aplicación es no-escalable, el “cartridge” web o principal sólo ocupa un “gear”. Si es escalable, hasta tres: “cartridge” web, “cartridge” embebido y HAProxy

                                        

vamos al LIO... SHOW ME THE MONEY!!

¿Cómo lo hago?
  • 3 Métodos :
  1. Crear aplicación desde la consola Web
  2. Linea de comandos con las RHC tools
  3. IDE que sube los cambios. 


CONSOLA WEB

  • Vamos a la consola Web
  • Creamos aplicación CLIT en PHP-5.3
  • Le damos un nombre bajo nuestro Namespace
  • Especificamos tipo de Gear
  • Decidimos si escala o no
  • Instalamos Git y bajamos el repo 
 git clone ssh://516ec9fa500446aef200001e@clit-bangapp.rhcloud.com/~/git/clit.git/
  • Hacemos modificaciones y lo subimos

cd clit; vi php/index.php
git commit -a -m "Clit app version 1"
git push
http://clit-bangapp.rhcloud.com/

LINIA de COMANDOS

  • Instalamos las dependencias y la herramienta rhc en el cliente (ruby, rubygems y rhc):
  • Configuramos la herramienta “rhc”: introducimos credenciales, subimos clave SSH y creamos nuestro “namespace”.
  • Creamos una aplicación usando “rhc”:

rhc app create slides php-5.3 --from-code=git://github.com/openshift-quickstart/reveal.js-openshift-quickstart.git
  • Hacemos cambios, los subimos al servidor y vemos el resultado: ¡Actualizamos!
  • cd slides; vi php/index.html (:.,320d)
    git commit -a -m "Slides app version 1"
    git push
    http://slides-bangapp.rhcloud.com/

Desde IDE

  • JBoss Developer Studio
  • Zend Studio PHP

QuickStarts

  • Los QuickStarts son repositorios con código de 
plataformas ya preparados para OpenShift, por ejemplo:

– Blogs: Wordpress.
– Project Management: Redmine.
– CMS: Drupal, Joomla.
– Wiki: MediaWiki
– Frameworks: Django, Rails, CakePHP, etc...

Dónde : QuickStart-Web

BYE BYE HASTA OTRO RATITO

        
Made with Slides.com