¿Cuál es la diferencia entre AWS CodeDeploy, Beanstalk y OpsWorks?

La Descripción general de las opciones de implementación en el documento de AWS explica bastante bien las diferencias, pero aquí hay un breve resumen:

  • CodeDeploy es un servicio que puede implementar cambios de aplicaciones en máquinas que se ejecutan en EC2 o en las instalaciones. No proporciona recursos (ya existen) y no proporciona monitoreo a nivel de aplicación.
  • Tanto Elastic Beanstalk como OpsWorks pueden lanzar recursos (como equilibradores de carga, instancias EC2 y grupos de Auto Scaling), pueden implementar cambios en la aplicación y proporcionar monitoreo a nivel de aplicación. Elastic Beanstalk está dirigido más a los desarrolladores de aplicaciones simples de tres niveles, mientras que OpsWorks le ofrece más opciones y aprovecha Chef para CM.

Además, el siguiente diagrama muestra qué partes del SDLC están dirigidas por cada uno de los servicios de implementación.