Introducción

Los contenedores son un componente clave del desarrollo de aplicaciones modernas. Se han convertido en la manera estándar de organizar los recursos informáticos y administrar el contenido de los despliegues de las aplicaciones.

Los contenedores proporcionan un entorno informático discreto y reproducible. También proporcionan una forma de simplificar la gestión de paquetes y dependencias. Desde la orquestación de conjuntos muy grandes de varios clústeres hasta aplicaciones web, o incluso la prueba de su trabajo y la realización de una prueba de concepto en su portátil, son una excelente manera de empezar y crear software para desplegarlo en la nube.

Esta guía de decisiones le sirve de ayuda para empezar y elegir el servicio de contenedores de AWS adecuado para su desarrollo de aplicaciones modernas.

Este extracto de cuatro minutos pertenece a una grabación de 57 minutos de una presentación de Vikram Venkataraman, entidad principal de cuentas técnicas de AWS, impartida en AWS Summit DC 2022. Proporciona una descripción general de los servicios de contenedores de AWS disponibles.

Hora de leer

20 minutos

Objetivo

Ayude a determinar qué servicio de contenedores de AWS es el más adecuado para su organización.

Nivel

Principiante

Última actualización

26 de abril de 2023

Entienda

Los contenedores se han convertido en un estándar de facto para empaquetar el código de la aplicación, las configuraciones, y las dependencias en un solo artefacto porque se las puede desplegar de manera coherente en múltiples entornos.

Los contenedores son una pieza clave de cualquier estrategia moderna de desarrollo de aplicaciones. Para proporcionar un poco de contexto a los servicios de AWS relacionados con los contenedores, la imagen de la derecha muestra las opciones de contenedores de AWS por capa (se explica con más detalle en este vídeo).

Capacidad 

La capacidad se refiere a la computación subyacente que desplegará su contenedor, su unidad central de procesamiento (CPU) y los requisitos de memoria. La capacidad es la infraestructura en la que se funcionará el contenedor. Hay dos opciones de capacidad para sus contenedores en AWS:

  • Amazon Elastic Compute Cloud (AmazonEC2) le permite ejecutar sus contenedores en las máquinas virtuales que administra usted.
  • AWS Fargate es un motor de procesamiento sin servidor para contenedores que le permiten ejecutar contenedores sin administrar la infraestructura subyacente. Con Fargate, puede lanzar y escalar contenedores sin preocuparse por las instancias subyacentes de EC2.

Orquestación

No es raro que las organizaciones utilicen no uno o unos pocos, sino miles de contenedores. Gestionar un entorno tan complejo se convierte en un desafío. Los servicios de orquestación ayudan a facilitar el despliegue y la administración de estas aplicaciones. AWS ofrece tres servicios de orquestación:  

  • Amazon Elastic Container Service (Amazon ECS) es un servicio de orquestación de contenedores totalmente administrado y es ideal para las organizaciones que desean una forma sencilla y rentable de implementar y gestionar aplicaciones en contenedores.
  • Amazon Elastic Kubernetes Service (Amazon EKS) es un servicio de Kubernetes totalmente administrado que le permite ejecutar y administrar clústeres de Kubernetes en AWS.
  • Red Hat OpenShift Service en AWS (ROSA) es un servicio OpenShift totalmente administrado que le permite ejecutar y administrar clústeres de OpenShift en AWS. Es una buena opción para los clientes que ya utilizan OpenShift de forma local.

Aprovisionamiento

El aprovisionamiento proporciona una interfaz para la capa de servicios de orquestación. Cada orquestador tiene sus propias complejidades. Los servicios de aprovisionamiento ocultan esta complejidad y le ayudan a facilitar el consumo del servicio. En esta categoría, los servicios de AWS incluyen:

  • AWS App Runner es un servicio completamente administrado que crea automáticamente imágenes de contenedores a partir de su código fuente, despliega los contenedores en una infraestructura completamente administrada, y los escala en función de la demanda.
  • AWS Elastic Beanstalk es un servicio totalmente administrado que facilita el despliegue, la administración y el escalado de aplicaciones web. Elastic Beanstalk también apoya contenedores y proporciona una plataforma totalmente administrada para desplegar y escalar las aplicaciones contenerizadas.
  • Amazon Lightsail es una forma sencilla y rentable de lanzar y administrar servidores privados virtuales, pero también ofrece soporte para contenedores, lo que le permite crear y desplegar aplicaciones contenerizadas mediante instancias de Lightsail.

Considere

Es importante escoger un servicio de contenedores que se ajuste a los requisitos de su aplicación y a las preferencias operativas. La siguiente sección describe algunos de los criterios clave que se deben tener en cuenta al elegir un servicio de contenedores, así como las herramientas y los servicios de apoyo.

  • Las organizaciones pueden optar por la nube para reducir los costes operativos mediante la normalización de los servicios gestionados que trasladan la carga operativa a AWS. Los niveles más altos de abstracción permiten a los desarrolladores y operadores centrarse en sus propias actividades únicas de valor agregado, en lugar de en tareas indiferenciadas.

    La creación con contenedores en AWS utiliza servicios con niveles más altos de abstracción para transferir la sobrecarga operativa del mantenimiento de la infraestructura a AWS.

  • Puede elegir la arquitectura con mayor facilidad si comprende sus patrones de carga de trabajo. Esto puede incluir aplicaciones web, microservicios basados en API, aplicaciones basadas en eventos, transmisión y mensajería, canalizaciones de datos, automatizaciones de TI y más. Algunas cargas de trabajo funcionarán mejor o serán más rentables en un entorno de cómputos que en otro tipo.

  • Muchos clientes desean asegurarse de que sus aplicaciones puedan ejecutarse en un entorno diferente y poder migrarlas o trasladarlas fácilmente a él. Es importante para ellos poder conservar las opciones o ejecutar una aplicación tanto local como en la nube.

    Recomendamos desarrollar competencias en arquitecturas de software y crear paquetes que le permitan transferir con mayor facilidad la lógica empresarial diferenciadora entre los servicios de computación.

    Las aplicaciones creadas con algunas tecnologías pueden ejecutarse de forma más eficaz en algunos servicios de cómputos que en otros.

  • Las habilidades de su organización son un factor importante a la hora de decidir qué servicios de contenedores utiliza. El enfoque que se adopta, requerirá algo de inversión en los equipos de DevOps y Site Reliability Engineer (SRE). La creación de una canalización automatizada para desplegar aplicaciones es algo habitual en la mayoría de los desarrollos de aplicaciones modernas.

    Algunas opciones elevan la cantidad de administración. Por ejemplo, algunas organizaciones tienen habilidades y recursos para ejecutar y administrar un despliegue de Kubernetes, porque invierten en equipos de SRE sólidos para administrar los clústeres de Kubernetes. Estos equipos se encargan de actualizar los clústeres con frecuencia (por ejemplo, Kubernetes publica tres versiones principales al año y deja de lado las versiones antiguas).

    El tamaño de la organización es un factor clave, ya que las startups más pequeñas pueden tener un personal de TI reducido compuesto por personas que desempeñan múltiples funciones, mientras que las empresas más grandes pueden soportar cientos de cargas de trabajo en producción a la vez.  

  • Los diferentes servicios de contenedores de AWS satisfacen las necesidades únicas en términos de complejidad de despliegue. Así es como se optimiza cada servicio para su propia función:

    • AWS AppRunner ofrece la ruta más sencilla, ya que le permite desplegar su aplicación en la Internet pública sin administrar ni personalizar la infraestructura subyacente.
    • Amazon ECS es una buena opción si necesita un poco más de control sobre la red y las configuraciones de seguridad sin sacrificar la escala o características.
    • Amazon EKS puede permitirle utilizar la flexibilidad y el control sobre el despliegue y la orquestación de las aplicaciones que ofrece la tecnología de Kubernetes.

Escoja

Ahora que conoce los criterios con los que evaluará sus opciones de contenedores, está listo para elegir qué servicios de contenedores de AWS pueden adaptarse mejor a los requisitos de su organización.

La siguiente tabla destaca los servicios que están optimizados para cada circunstancia. Utilice la tabla como ayuda para determinar el servicio de contenedor que mejor se adapte a su organización y caso de uso.

Contenedores
¿Cuándo lo usarías?
¿Para qué está optimizado?
Servicios o herramientas de contenedores relacionados
Cerrar

Opciones de capacidad

La capacidad se refiere a la computación subyacente en la que desplegará su contenedor, su CPU, y requerimientos de memoria. La capacidad es la infraestructura en la que se funcionará el contenedor.

Utilice cuando desee ejecutar sus contenedores en máquinas virtuales autogestionadas de AWS o en computación gestionada por AWS.
Está optimizada para ejecutar sus contenedores en AWS Compute.
Cerrar

Amazon EC2

Amazon EC2 es un servicio web que proporciona una capacidad informática redimensionable - utilizando servidores en los centros de datos de Amazon - que usted puede emplear para crear y alojar sus sistemas de software.

Cerrar

AWS Fargate

AWS Fargate es una tecnología que puede usar con Amazon ECS para ejecutar contenedores sin tener que administrar servidores o clústeres de instancias de Amazon EC2. Con Fargate ya no tendrá que aprovisionar, configurar, ni escalar clústeres de máquinas virtuales para ejecutar contenedores.

Cerrar

Orquestación de contenedores

Los servicios de orquestación de contenedores gestionan cuándo y dónde se ejecutan los contenedores.

Utilice cuando necesite poder implementar y administrar hasta miles de contenedores.
Están optimizados para desplegar, administrar y escalar aplicaciones contenerizadas en AWS.
Cerrar

Red Hat OpenShift Service en AWS (ROSA)

El servicio Red Hat OpenShift en AWS facilita la creación y el funcionamiento de clústeres de Red Hat OpenShift en AWS. Para las aplicaciones ya contenerizadas en las instalaciones de OpenShift Container Platform, ROSA proporciona una superficie conocida de API y mantiene el mismo despliegue de la cadena de herramientas para que pueda centrarse en refactorizar el modelo de datos, no todo el conjunto de aplicaciones.

Cerrar

Servicio Amazon Elastic Kubernetes

Amazon EKS le ayuda a iniciar, ejecutar. y escalar aplicaciones de Kubernetes en la nube de AWS o de manera local.

Cerrar

Amazon ECS

Amazon ECS es un servicio de orquestación de contenedores totalmente administrado para ayudar a desplegar, gestionar, y escalar aplicaciones contenerizadas.

Cerrar

Aprovisionamiento

La categoría de servicios de aprovisionamiento proporciona una interfaz para la capa de servicios de orquestación. Cada orquestador tiene sus propias complejidades. Los servicios de aprovisionamiento ocultan esta complejidad y facilitan a los clientes el consumo del servicio.

Se usa cuando usted o su equipo no tienen mucha experiencia con contenedores o infraestructura.
Optimizado para facilitar su uso.
Cerrar

AWS Elastic Beanstalk

Con Elastic Beanstalk, puede desplegar y administrar rápidamente aplicaciones en la nube de AWS sin tener que aprender sobre la infraestructura que ejecuta esas aplicaciones. Elastic Beanstalk reduce la complejidad de la administración sin restringir la libertad de elección ni el control.

Cerrar

AWS App Runner

AWS App Runner le permite crear y ejecutar aplicaciones contenerizadas en un servicio totalmente administrado con un conocimiento mínimo de la infraestructura.

Cerrar

Amazon Lightsail

Lightsail ofrece un servidor privado virtual (VPS) fácil de usar, con instancias, contenedores, almacenamiento, bases de datos, y mucho más a un precio mensual rentable.

Cerrar

Herramientas

Herramientas para proporcionar un registro de contenedores, así como para contenerizar y migrar aplicaciones existentes.

Úselas cuando necesite herramientas para proporcionar un registro de contenedores, así como para contenerizar y migrar aplicaciones existentes.
Optimizadas para respaldar sus operaciones con contenedores.
Cerrar

Amazon Elastic Container Registry

Amazon ECR es un registro de contenedores completamente administrado que ofrece alojamiento de alto rendimiento, de modo que sea posible desplegar imágenes de aplicaciones y artefactos de forma confiable en cualquier lugar.

Cerrar

Local

Le permite ejecutar un plano de control conocido para garantizar una experiencia coherente sin importar dónde se ejecuten las aplicaciones basadas en contenedores.

Úselo cuando necesite ejecutar un plano de control conocido para garantizar una experiencia uniforme sin importar dónde se ejecuten las aplicaciones basadas en contenedores.
Optimizado para flexibilidad a la hora de ejecutar las aplicaciones basadas en contenedores.
Cerrar

Amazon Elastic Container Service (ECS) Anywhere

Amazon ECS Anywhere es una característica de Amazon ECS que le permite ejecutar y gestionar cargas de trabajo de contenedores en su propia infraestructura.

Cerrar

Amazon EKS Anywhere

Amazon EKS Anywhere le permite crear y operar clústeres de Kubernetes en su propia infraestructura.

Cerrar

Amazon EKS Distro

Amazon EKS utiliza Amazon EKS Distro, una distribución de Kubernetes, creada y mantenida por AWS. Amazon EKS Distro facilita la creación de clústeres confiables y seguros.

Use

Ahora debe tener una idea clara de cada servicio de contenedor de AWS (y de las herramientas y servicios de AWS que lo respaldan) y cuál podría ser el más adecuado para su organización y caso de uso.

Para explorar cómo usar y obtener más información sobre cada uno de los servicios de contenedor de aplicaciones de AWS disponibles, hemos proporcionado una vía para explorar cómo funciona cada uno de los servicios. La siguiente sección proporciona enlaces a documentación detallada, tutoriales prácticos, y recursos para empezar.

  • Amazon EC2
  • Amazon Aurora

    Introducción a Amazon EC2

    Acceda al conjunto completo de documentación técnica de Amazon EC2, que incluye guías sobre instancias de Linux y Windows.

    Explore las guías »

    Amazon Aurora

    Guía del usuario de VM Import/Export

    Aprenda a importar imágenes de máquinas virtuales (VM) de su entorno de virtualización existente a Amazon EC2 y, a continuación, a exportarlas de nuevo.

    Explore la guía »

    Amazon Aurora

    Amazon EC2 Auto Scaling con instancias puntuales de EC2

    Aprenda a crear una carga de trabajo apátrida y tolerante a errores mediante Amazon EC2 Auto Scaling con plantillas de lanzamiento para solicitar instancias de spot EC2.

    Comience con el tutorial»

    Amazon Aurora

    Desplegar una aplicación web en Amazon EC2

    Explicaremos la creación de una instancia de Amazon EC2 con AWS CDK y el despliegue de una aplicación web en ella.

    Explore la guía »

  • Amazon ECR
  • Amazon DynamoDB

    ¿Qué es Amazon Elastic Container Registry (ECR)?

     
    Una guía para empezar a utilizar (y utilizar) el ECR.
     
     
    Amazon DynamoDB

    Amazon ECR en arquitecturas multicuenta y multirregión
     

    Explore las consideraciones clave sobre las arquitecturas de Amazon ECR que abarcan las cuentas de AWS y las regiones de AWS, así como las arquitecturas relacionadas con casos de uso hipotéticos de clientes.

    Lea la publicación del blog »

    Amazon DynamoDB

    Introducción a Amazon ECR Public
     

    Comience a utilizar los repositorios públicos de Amazon ECR creando su primer repositorio público y configurando la configuración del registro público en la consola de Amazon ECR.

    Explore la guía»

    Amazon DynamoDB

    Cree una canalización con una fuente de Amazon ECR y un despliegue de ECS a CodeDeploy
     

    Configure una canalización en AWS CodePipeline que despliegue aplicaciones contenedoras mediante un despliegue azul/verde que admita imágenes de Docker.

    Comience con el tutorial»

  • Amazon ECS
  • Servicio de migración de bases de datos de AWS

    Introducción a Amazon ECS

    Esta guía proporciona una introducción a las herramientas disponibles para acceder a Amazon ECS y a los procedimientos introductorios paso a paso para ejecutar contenedores.

    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Tutoriales para Amazon ECS

    Más de una docena de tutoriales sobre cómo realizar tareas comunes, incluida la creación de clústeres y VPC, al utilizar Amazon ECS.

    Comience con los tutoriales»

    Servicio de migración de bases de datos de AWS

    Novedades y novedades de Amazon ECS

    Conozca las novedades desde el lanzamiento de Amazon ECS Anywhere, las nuevas características de AWS Fargate y eche un vistazo a las interesantes mejoras de Amazon ECS.

    Conozca la historia completa en este vídeo»

    Servicio de migración de bases de datos de AWS

    Despliegue de Amazon Elastic Container Service (ECS)

    Esta guía ofrece una descripción general de las opciones de despliegue de Amazon ECS en AWS y muestra cómo se puede utilizar para administrar una aplicación sencilla en contenedores.


    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Taller de Amazon ECS

    Este taller está diseñado para informar a quienes tal vez no estén familiarizados con AWS Fargate, Amazon ECS y, posiblemente, incluso con el flujo de trabajo de contenedores de Docker.

    Explore el taller»

    Servicio de migración de bases de datos de AWS

    Despliegue de contenedores de Docker en Amazon ECS

    Aprenda a ejecutar una aplicación de muestra habilitada para Docker en un clúster de Amazon ECS detrás de un equilibrador de carga, pruebe la aplicación de muestra y elimine los recursos para evitar cargos.

    Use el tutorial»

  • Amazon EKS
  • Servicio de migración de bases de datos de AWS

    Introducción a Amazon EKS
     

    Obtenga más información sobre Amazon Elastic Kubernetes Service (Amazon EKS), un servicio gestionado que puede utilizar para ejecutar Kubernetes en AWS sin necesidad de instalar, operar ni mantener su propio plano de control o nodos de Kubernetes.

    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Despliegue de Amazon Elastic Kubernetes Service (EKS)
     

    Explore las opciones de despliegue de Amazon EKS en AWS y aprenda cómo se pueden utilizar para administrar una aplicación general en contenedores.

    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Despliegues de referencia de Amazon EKS Quick Start

    Mediante una guía de despliegue de referencia de Quick Start, proporcionamos instrucciones paso a paso para desplegar los clústeres de Amazon Elastic Kubernetes Service (Amazon EKS).


    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Desplegar una aplicación de Kubernetes
     

    En este tutorial, aprenderá a desplegar una aplicación contenida en un contenedor en un clúster de Kubernetes administrado mediante Amazon Elastic Container Service for Kubernetes (Amazon EKS).

    Use el tutorial»

    Servicio de migración de bases de datos de AWS

    Taller de Amazon EKS
     

    Ejercicios prácticos para aprender sobre Amazon Elastic Kubernetes Service.


    Visite el taller»

  • Amazon Lightsail
  • Servicio de migración de bases de datos de AWS

    Crear, enviar y desplegar imágenes de contenedores
    con Amazon Lightsail

    Este tutorial muestra cómo se crea una imagen de contenedor en la máquina local mediante un Dockerfile. Después de crear la imagen, podrá enviarla al servicio de contenedores de Lightsail para desplegarla.

    Comience con el tutorial»

    Servicio de migración de bases de datos de AWS

    Centro de recursos de Amazon Lightsail


    Explore los tutoriales, vídeos y enlaces a la documentación conceptual básica de Lightsail.



    Visite el centro de recursos»

    Servicio de migración de bases de datos de AWS

    Lance una máquina virtual Linux con Amazon Lightsail

    En este tutorial, creará una instancia de Amazon Linux en Amazon Lightsail. Una vez que la instancia está en funcionamiento, se conectará a esta a través de SSH dentro de la consola de Lightsail con el terminal SSH basado en el navegador.

    Comience con el tutorial»

  • AWS App Runner
  • Servicio de migración de bases de datos de AWS

    Introducción a AWS App Runner


    En este tutorial se explica cómo configurar el código fuente y el despliegue, la creación del servicio y la versión ejecutable del servicio para desplegar la aplicación en el servicio del ejecutor del App Runner. También muestra cómo desplegar una versión de código, realizar un cambio de configuración y ver los registros.

    Use el tutorial»

    Servicio de migración de bases de datos de AWS

    AWS App Runner: del código a una aplicación web segura y escalable en cuestión de minutos

    Descubra cómo se diseñó AWS App Runner para facilitar el despliegue de aplicaciones web y API en la nube, independientemente del idioma en el que estén escritas, incluso para equipos que carecen de experiencia previa en el despliegue y administración de contenedores o infraestructuras.

    Lea el blog »

    Servicio de migración de bases de datos de AWS

    Despliegue una aplicación web con AWS App Runner


    Siga estas instrucciones paso a paso para desplegar una aplicación web en contenerizada mediante AWS App Runner. Comience con su código fuente o una imagen de contenedor. App Runner crea y despliega automáticamente la aplicación web y equilibra la carga del tráfico con cifrado.

    Despliegue su aplicación web»

  • AWS Elastic Beanstalk
  • Servicio de migración de bases de datos de AWS

    Introducción a Elastic Beanstalk


    En esta guía se explica cómo crear, explorar, actualizar y eliminar una aplicación de Elastic Beanstalk.

    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Opciones de despliegue en AWS Elastic Beanstalk


    En esta guía se explica que puede utilizar AWS Elastic Beanstalk para desplegar, administrar y escalar aplicaciones sin la carga operativa que supone administrar la infraestructura.

    Explore la guía»

    Servicio de migración de bases de datos de AWS

    Tutoriales y ejemplos intermedios de AWS Electric Beanstalk

    Estos tutoriales están dirigidos a usuarios intermedios y es posible que no contengan instrucciones sobre los pasos básicos, como registrarse en AWS.

    Comience con los tutoriales»

  • AWS Fargate
  • Amazon Aurora

    Introducción a AWS Fargate

    En esta guía se explican los conceptos básicos de AWS Fargate, una tecnología que puede utilizar con Amazon ECS para ejecutar contenedores sin tener que administrar servidores o clústeres de instancias de Amazon EC2.

    Explore la guía»

    Amazon Aurora

    Introducción a la consola mediante contenedores de Linux en AWS Fargate

    Comience a utilizar Amazon ECS en AWS Fargate utilizando el tipo de lanzamiento de Fargate para sus tareas en las regiones en las que Amazon ECS es compatible con AWS Fargate.

    Explore la guía»

    Amazon Aurora

    Creación de un clúster con una tarea de Fargate Linux mediante la CLI de AWS

    Configure un clúster, registre una definición de tarea, ejecute una tarea de Linux y realice otros escenarios comunes en Amazon ECS con la CLI de AWS.  

    Explore la guía»

  • ROSA
  • Servicio de migración de bases de datos de AWS

    Introducción a Red Hat OpenShift Service en AWS

    Esta guía le ayudará a empezar a utilizar Red Hat OpenShift Service en AWS.

    Explore la guía»

    Servicio de migración de bases de datos de AWS

    ¿Por qué usarías ROSA?

    En este vídeo se analiza cuándo se puede utilizar Red Hat OpenShift en lugar de Kubernetes estándar y se analiza en profundidad el ROSA en AWS.

    Vea el vídeo»

Explore

Diagramas de arquitectura

Explore los diagramas de arquitectura de referencia para contenedores en AWS.


Explore los diagramas de arquitectura »

Documentos técnicos

Explore los documentos técnicos que le ayudarán a comenzar y a aprender las mejoras prácticas.

Explore los documentos técnicos»

Soluciones de AWS

Explore las soluciones comprobadas y la guía de arquitectura para los casos de uso más comunes de los contenedores.

Explore las soluciones »

¿Le resultó útil esta página?