La ejecución de Docker es más lenta en el host EC2

La ejecución de Docker es más lenta en el host EC2

Recientemente creamos una imagen de la ventana acoplable para ejecutar la herramienta Terraspace para ejecutar nuestro CI/CD en canalizaciones de GitLab. El contenedor se utiliza ruby:3.0.2-alpineaguas arriba, como referencia.

El problema al que nos enfrentamos es que es extremadamente lento cuando se ejecuta en EC2 (m5.large), aquí hay algunos tiempos que incluyen ejecutar la herramienta dentro de la imagen de la ventana acoplable y de forma nativa en el host. Los tiempos de la ventana acoplable se realizan dentro de la imagen una vez que ya se ha descargado.

Ventana acoplable EC2 EC2 acoplador local Local
5m33.403s reales reales 0m44.799s 1m40.842s reales reales 0m39.626s
usuario 0m11.150s usuario 0m26.531s usuario 0m24.736s usuario 0m10.913s
sistema 0m1.437s sistema 0m3.276s sistema 0m13.846s sistema 0m4.580

La ejecución más lenta dentro de la ventana acoplable también se aplica a la imagen estándar de Terraspace boltops/terraspace.

No parece ser un problema de uso de recursos ya que quedan muchos recursos en el host durante la ejecución.

CONTAINER ID   NAME            CPU %     MEM USAGE / LIMIT    MEM %     NET I/O          BLOCK I/O     PIDS
9b05765250b8   quirky_spence   0.54%     1.21GiB / 7.583GiB   15.95%    300MB / 3.43MB   0B / 1.08MB   3

Aquí está la información de la máquina acoplable:

lient:
 Context:    default
 Debug Mode: false

Server:
 Containers: 4
  Running: 0
  Paused: 0
  Stopped: 4
 Images: 3
 Server Version: 20.10.4
 Storage Driver: overlay2
  Backing Filesystem: xfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: d71fcd7d8303cbf684402823e425e9dd2e99285d
 runc version: %runc_commit
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 4.14.238-182.422.amzn2.x86_64
 Operating System: Amazon Linux 2
 OSType: linux
 Architecture: x86_64
 CPUs: 2
 Total Memory: 7.583GiB
 Name: ip-10-0-4-227
 ID: FUYW:PCXQ:5ZFW:4SMP:YIG4:RNBH:HCMH:6R53:NHS2:HTJO:VAKM:5QFB
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Registry Mirrors:
  https://docker-proxy/
 Live Restore Enabled: false

Cualquier ayuda sería apreciada en esto.

información relacionada