Este documento compara las plataformas AWS, Heroku y OpsWorks para el despliegue de aplicaciones Rails. Heroku es fácil de configurar pero los costos escalan rápidamente, mientras que AWS requiere más tiempo de configuración y mantención. OpsWorks ofrece una capa de automatización que simplifica el despliegue en AWS con costos menores que Heroku.
8. Mantención y
Configuración
Aplicación Lista < 30 min.
Capa de Abstracción de configuración
y lógica.
Eco sistema de Add-On’s.
Aprender nuevas tecnologías: Chef,
knife, Capistrano, EC2, Base de Datos,
etc…
Horas de trabajo, para configurar todo
y mas horas de mantención y
monitoreo.
Heroku AWS
13. Limitaciones
Dynos de solo 512mb o 1G.
Cero accesso SSH para customizar los Dynos.
No tengo control de como se ejecuta mi código
por debajo, poco margen para optimizar.
14. Puntos de Falla
Nivel de fallas anuales en Heroku.
Mantenimiento y downtime fuera de mi
control.
Solo corre sobre instancia AWS de la costa Este.
16. Ventajas OpsWork
Costos menores al correr sobre AWS directo. Opswork
Gratis!
Mayor rendimiento.
Capa de automatización, abstracción y “One click deploys”.
Ninguna limitación de SSH y Hardware.
Puntos de fallas nuevos.
17. Los stacks son agrupaciones de
instancias y recursos que vamos a
querer configurar y gestionar al
mismo tiempo.
Ejemplos:
Producción, Staging, etc…
Stacks
18. Los layers son las configuraciones de
nuestras instancias.
Pueden ser desde una instancia de
BD hasta una aplicación Rails,
Node.js, PHP, etc…
Crear layers completamente
customs.
Layers
19. Podemos ver y manipular todas
nuestras instancias Ec2.
Agregar nuevas instancias,
prenderlas, apagarlas y reiniciarlas.
Existen dos modalidades: por hora o
por carga.
Instances
20. Configurar aplicación que vamos a
manejar en el stack.
Configurar el acceso a nuestro
código fuente para automatizar
nuestros deploys.
Apps
21. Efectuar “one click deploys”.
Acceder al historial de los deploys y
los logs.
Ejecutar commandos Chef en
algunas o todas las instancias.
Deployments
22. Simples herramientas de monitoreo
de nuestras instancias.
CPU, RAM, carga y procesos.
Monitoreo
23. Si estamos usando algún servicio
extra de AWS como Elastic IP’s,
RBDS o volúmenes de disco se
podrán gestionar y ver en esta
sección.
Recursos