AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
¿Cómo soluciono los problemas con mi conexión entre Amazon ECS y Amazon S3?
Quiero acceder a Amazon Simple Storage Service (Amazon S3) desde mis tareas de Amazon Elastic Container Service (Amazon ECS), pero tengo problemas de conexión.
Resolución
Análisi de los registros de CloudWatch para identificar la causa de los problemas de acceso a Amazon S3
En primer lugar, configura el acceso a los registros de CloudWatch. A continuación, utiliza Información de registros de CloudWatch para identificar la causa del problema.
Configuración del acceso a Registros de CloudWatch
Para configurar Registros de Amazon CloudWatch para la definición de tareas de Amazon ECS, completa los pasos siguientes:
- Abre la consola de Amazon ECS.
- En el panel de navegación, selecciona Task definitions (Definiciones de tareas).
- Selecciona la definición de la tarea y, a continuación, añade el siguiente código a la definición de la tarea:
Nota: Sustituye my-container por el nombre de la instancia del contenedor, my-image:latest por el nombre y la etiqueta de la imagen y region-code por la región de AWS.{ "containerDefinitions": [ { "name": "my-container", "image": "my-image:latest", "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "/ecs/my-task", "awslogs-region": "region-code", "awslogs-stream-prefix": "ecs" } } } ] } - Actualiza el servicio de Amazon ECS para usar la versión más reciente de la definición de tareas.
Uso de Información de registros de CloudWatch para identificar la causa del problema
Para buscar errores generales de Amazon S3, ejecuta la siguiente consulta:
filter @message like /S3|AccessDenied|NoSuchBucket/
Para buscar problemas específicos de acceso a los buckets, ejecuta la siguiente consulta:
filter @message like /my-bucket-name/
Nota: Sustituye my-bucket-name por el nombre del bucket.
Utiliza esta información para identificar si el problema está relacionado con los permisos de AWS Identity and Access Management (IAM), la conectividad de la red, la configuración del bucket o los problemas de las aplicaciones. A continuación, completa los pasos de solución de problemas relacionados.
Verificación de la configuración del rol de IAM
Comprueba que el rol de la tarea de Amazon ECS tenga los permisos de Amazon S3 necesarios; por ejemplo, la política AmazonS3ReadOnlyAccess para las operaciones de solo lectura. Revisa los registros de AWS CloudTrail para identificar las acciones denegadas relacionadas con Amazon S3. Por ejemplo, si la tarea de Amazon ECS debe leer objetos del bucket my-app-data, adjunta la siguiente política personalizada a la tarea:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::my-app-data", "arn:aws:s3:::my-app-data/*" ] } ] }
Nota: La política anterior permite que la tarea enumere el contenido del bucket my-app-data y recupere los objetos que contiene.
Comprobación de la configuración de la red
Tareas en subredes públicas
Para las tareas en subredes públicas, consulta la lista de control de acceso de la red (ACL de la red) de la nube virtual privada (VPC) en la que se encuentra la instancia. La ACL de la red debe permitir el tráfico saliente en el puerto 443. Comprueba también que los grupos de seguridad asociados a la tarea permitan el tráfico HTTPS de salida del puerto 443 a las listas de prefijos administradas de AWS de Amazon S3.
Tareas en subredes privadas
Para las tareas en subredes privadas, verifica que haya una puerta de enlace de NAT asociada a la tabla de enrutamiento de la subred. La puerta de enlace de NAT crea una ruta de Internet para llegar al punto de enlace de Amazon S3. Si usas un punto de enlace de VPC para Amazon S3, consulta la tabla de enlace asociada a la VPC para el punto de enlace de la puerta de enlace de Amazon S3. Verifica que la tabla de enrutamiento incluya una ruta para la lista de prefijos administrados de AWS de Amazon S3 que dirija el tráfico al punto de enlace de la puerta de enlace de Amazon S3. Esta ruta garantiza que las solicitudes a Amazon S3 no se envíen a través de la Internet pública.
Cuando utilices un punto de enlace de interfaz de Amazon S3, comprueba que los grupos de seguridad que están conectados al punto de enlace permitan el tráfico HTTPS entrante en el puerto 443. Además, asegúrate de que la configuración de DNS privada del punto de enlace y las opciones Enable DNS hostname (Habilitar el nombre de host DNS) y Enable DNS support (Habilitar la compatibilidad con DNS) de la VPC estén activadas. Por último, comprueba que la aplicación utilice el punto de enlace s3.region.amazonaws.com, no el punto de enlace global s3.amazonaws.com.
Comprobación de la conectividad de red desde las tareas de Amazon ECS hasta los puntos de enlace de Amazon S3
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Comprueba que la configuración de la red, incluidos los firewalls y los grupos de seguridad, permita el tráfico a los puntos de enlace de Amazon S3.
Nota: Puedes usar ECS Exec para ejecutar los siguientes comandos.
Para probar la conexión HTTPS con el punto de enlace de Amazon S3 en el puerto 443, ejecuta el siguiente comando telnet o curl:
telnet s3.region-code.amazonaws.com 443
curl -v https://s3.region-code.amazonaws.com
Nota: Sustituye region-code por el código de tu región. Es posible que tengas que instalar el comando telnet.
Para comprobar si la instancia de contenedor puede autenticarse y realizar operaciones de Amazon S3, ejecuta el comando ls de la AWS CLI:
aws s3 ls
Si la prueba anterior falla, revisa los grupos de seguridad, las ACL de la red y las reglas de firewall para comprobar si hay puertos bloqueados.
Información relacionada
¿Cómo puedo solucionar los errores 403 Access Denied de Amazon S3?
¿Cómo puedo acceder a otros servicios de AWS desde mis tareas de Amazon ECS en Fargate?
- Temas
- Containers
- Etiquetas
- Amazon Elastic Container Service
- Idioma
- Español

Contenido relevante
- preguntada hace 10 meses
- preguntada hace 5 meses
- preguntada hace 12 días
OFICIAL DE AWSActualizada hace 10 meses