New user sign up using AWS Builder ID
New user sign up using AWS Builder ID is currently unavailable on re:Post. To sign up, please use the AWS Management Console instead.
¿Cómo puedo proteger mi instancia de contenedor de Amazon ECS con prácticas recomendadas y técnicas de bastionado?
Mis instancias de Amazon Elastic Container Service (Amazon ECS) o las instancias subyacentes de Amazon Elastic Compute Cloud (Amazon EC2) presentan problemas como terminaciones inesperadas, reinicios, problemas de escalamiento o pérdida de datos. Quiero proteger mi instancia de contenedor de Amazon ECS.
Descripción corta
Si utiliza el tipo de inicio de Amazon EC2 en Amazon ECS, los problemas de la instancia de EC2, como las terminaciones, los reinicios o los cuellos de botella en el rendimiento, afectarán al contenedor. Para resolver estos problemas, implemente las prácticas recomendadas para proteger las instancias de contenedor de Amazon ECS y abordar el mantenimiento, el escalamiento y la solución de problemas de Amazon EC2.
Resolución
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulte Solución de problemas de AWS CLI. Además, asegúrese de utilizar la versión más reciente de la AWS CLI.
Protección de las instancias de contenedor de Amazon ECS
Limitar el acceso de los usuarios raíz de la cuenta de AWS
No utilice la cuenta raíz a menos que sea necesario, por ejemplo, para cambiar la configuración de la cuenta o modificar la contraseña del usuario raíz. En su lugar, utilice los roles y políticas de AWS Identity and Access Management (IAM) para configurar un acceso que cumpla con la entidad principal de privilegio mínimo. Además, configure la autenticación multifactor (MFA) para la cuenta raíz.
Implementación del bastionado de seguridad
Use grupos de seguridad para restringir el tráfico entrante y saliente solo a las direcciones IP y los puertos necesarios. Aplique parches y actualice periódicamente sus instancias de contenedor de Amazon ECS. También puede usar Amazon Inspector para identificar vulnerabilidades.
Utilice el cifrado para los datos en tránsito confidenciales, como HTTPS, y en reposo, como los volúmenes de Amazon Elastic Block Storage (Amazon EBS). Para obtener más información, consulte Protección de infraestructuras.
Utilice AWS Systems Manager para optimizar la aplicación de parches y el mantenimiento de las instancias de contenedor de Amazon ECS. Utilice AWS Systems Manager Agent (SSM Agent) preinstalado en imágenes de máquina de Amazon (AMI) optimizadas para Amazon ECS para implementar flujos de trabajo de administración de parches automatizados. Esto incluye periodos de mantenimiento programados y estrategias de sustitución de instancias. Para obtener más información, consulte Automatización de la aplicación de parches mediante la sustitución de las instancias de contenedor de Amazon ECS.
Activación del registro y la supervisión
Configure AWS CloudTrail para registrar las actividades de la API. Se recomienda configurar las alarmas de Amazon CloudWatch para que le avisen de los valores elevados de CpuUtilization, DiskReadOps, DiskWriteOps, NetworkIn o NetworkOut.
Para supervisar el rendimiento de las instancias de contenedor y el uso de los recursos, active Información de contenedores.
Configuración de una estrategia de copia de seguridad y restauración
Utilice instantáneas de Amazon EBS o cree AMI como parte de un plan de recuperación ante desastres. Para obtener más información, consulte Copia de seguridad y restauración de Amazon EC2 con AWS Backup.
Importante: Si elimina un volumen de EBS, solo podrá recuperarlo si ha creado una copia de seguridad de AMI o instantánea de Amazon EBS.
Para recopilar y exportar metadatos, registros de instancias y datos de aplicaciones, use SSH para conectarse a su instancia. A continuación, ejecute el siguiente comando describe-instances de la AWS CLI para exportar los metadatos de la instancia:
aws ec2 describe-instances \ --instance-ids i-abcdxyz\ -- query "Reservations[].Instances[]" \ -- output text > file.txt
Para exportar los registros de instancias, ejecute el siguiente comando get-console-output:
aws ec2 get-console-output --instance-id i-abcdxyz --output text
Nota: En los comandos anteriores, sustituya i-abcdxyz por el ID de su instancia.
Solución de problemas de instancias de EC2
Solución de problemas de terminaciones y reinicios inesperados
Utilice el drenaje de instancias administradas de Amazon ECS para asegurarse de que sus cargas de trabajo se detengan correctamente y pasen a instancias estables durante las interrupciones puntuales o eventos similares.
Por motivos de seguridad y rendimiento, Amazon EC2 programa con regularidad eventos de mantenimiento rutinario para sus instancias, como reinicios, paradas e inicios y retiradas. Puede usar el panel de AWS Health para realizar un seguimiento de estos eventos, que pueden tardar varios minutos en completarse. Para obtener información sobre las medidas que puede tomar después de los eventos de mantenimiento rutinarios, consulte Acciones recomendadas para las instancias de Amazon EC2 afectadas por eventos programados.
Si se produce la terminación de una instancia de spot, consulte ¿Por qué Amazon EC2 interrumpió mi instancia de spot?
Amazon EC2 podría terminar su instancia como parte del mantenimiento programado. Para administrar este tipo de terminación de instancias, se recomienda utilizar los enlaces de ciclo de vida de Amazon EC2 Auto Scaling.
Solución de problemas de uso elevado de recursos
Para comprobar si hay un uso elevado de CPU o memoria, revise los registros de la aplicación y las métricas de CloudWatch CpuUtilization, NetworkIn, NetworkOut, DiskReadOps y DiskWriteOps de su instancia. Consulte también la métrica de Información de contenedores MemoryUtilized.
Si la configuración no satisface las necesidades de recursos de las instancias, escale verticalmente las instancias.
O bien, utilice los proveedores de capacidad de Amazon ECS para escalar y optimizar de forma dinámica los recursos informáticos de su clúster. Para crear un proveedor de capacidad, utilice la consola de Amazon ECS. O bien, ejecute un comando create-capacity-provider similar al siguiente ejemplo:
aws ecs create-capacity-provider --name "example-capacity=provider" --auto-scaling-group-provider "autoScalingGroupArn=arn:aws:autoscaling:us-east-1:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup,managedScaling={status=ENABLED,targetCapacity=100,minimumScalingStepSize=1,maximumScalingStepSize=100},managedTerminationProtection=ENABLED"
Resolución de problemas de espacio insuficiente en disco
El almacenamiento principal de la instancia de EC2 que ejecuta tareas de Amazon ECS puede llenarse por los siguientes motivos:
- Registros de aplicaciones
- Almacenamiento excesivo de imágenes de contenedor
- Archivos temporales creados al ejecutar instancias de contenedor
Tenga en cuenta que cada archivo o directorio usa un inodo independientemente de su tamaño. Por lo tanto, si tiene varios archivos pequeños, es posible que supere la cuota de inodo. Si supera la cuota de inodo, no podrá crear nuevos archivos aunque haya espacio en disco disponible.
Utilice las configuraciones de Amazon ECS para automatizar la limpieza de tareas e imágenes y eliminar las tareas detenidas y las imágenes de Docker no utilizadas. Además, utilice la variable ECS_RESERVED_MEMORY para asegurarse de que las tareas no consuman toda la memoria disponible.
Para limpiar automáticamente las imágenes antiguas o no utilizadas de sus repositorios, utilice las políticas de ciclo de vida de Amazon Elastic Container Registry (Amazon ECR). Para limpiar objetos no utilizados, como imágenes, instancias de contenedor, volúmenes y redes, utilice los comandos prune de Docker. Para obtener más información, consulte Prune unused Docker objects (Cómo eliminar objetos Docker no utilizados) en el sitio web de Docker Docs.
Para ver el espacio en disco que utilizan todos los sistemas de archivos montados, ejecute el siguiente comando:
df -h
Para ver el espacio en disco que usa un sistema de archivos específico, ejecute el siguiente comando:
df -h /
Nota: El comando anterior muestra los datos únicamente del sistema de archivos raíz.
Es posible que se produzcan problemas con los recursos porque tiene pocos inodos disponibles. Para comprobar el uso del inodo, ejecute el siguiente comando:
df -i
Para ver el espacio total en disco que utiliza un directorio específico, ejecute el siguiente comando:
du -sh /path/to/directory
Nota: Sustituya directory por el nombre de su directorio.
Para enumerar los directorios o archivos más grandes de la aplicación, ejecute el siguiente comando:
du -ah /path/to/directory | sort -rh | head -n 10
Nota: El comando anterior muestra los 10 archivos o directorios más grandes. Sustituya 10 por el número de archivos y directorios grandes que desea ver y directory por el nombre de su directorio.
Para comprobar el tamaño de cada subdirectorio de su directorio, ejecute el siguiente comando:
du -h --max-depth=1
Para optimizar la capacidad disponible, utilice flota de spot o proveedores de capacidad para sus instancias de EC2. Para obtener más información, consulte Cómo alimentar los clústeres de Amazon ECS con flota de spot.
Información relacionada
Tolerancia a errores y aislamiento de errores
¿Cómo puedo solucionar los problemas de conexión a mi instancia Linux de Amazon EC2 mediante SSH?

Contenido relevante
- preguntada hace 2 meseslg...
- preguntada hace 19 díaslg...
- preguntada hace 23 díaslg...
- preguntada hace 2 meseslg...
- preguntada hace 24 díaslg...
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 2 años