Saltar al contenido

¿Por qué recibo el error “Plugin with name Standard_Stream not found” cuando uso el Administrador de sesiones para conectarme a mi instancia de Amazon EC2?

7 minutos de lectura
0

He intentado usar el Administrador de sesiones, una funcionalidad de AWS Systems Manager, para conectarme a mi instancia de Amazon Elastic Compute Cloud (Amazon EC2). Sin embargo, he recibido el mensaje de error “Plugin with name Standard_Stream not found”.

Descripción corta

Si el agente de AWS Systems Manager (SSM Agent) no puede crear los archivos necesarios para establecer una sesión, recibirás el siguiente mensaje de error:

"Your session has been terminated for the following reasons: Plugin with name Standard_Stream not found. Step name: Standard_Stream"

Este problema suele producirse si no hay suficiente espacio de almacenamiento en la instancia o si tienes demasiados archivos abiertos simultáneamente.

Para identificar la causa del problema, consulta los registros del sistema para ver si hay mensajes de error específicos. A continuación, lleva a cabo las siguientes acciones de solución de problemas según el error que encuentres.

Resolución

Solución de errores "No space left on device"

Debes tener suficiente espacio en la partición raíz para que SSM Agent cree los datos temporales necesarios para iniciar una sesión. Si recibes el mensaje de error "No space left on device", debes aumentar el espacio disponible en el sistema de archivos raíz. En primer lugar, elimina los archivos no utilizados de la partición raíz. Si aún no hay suficiente espacio, utiliza Volúmenes elásticos para aumentar el volumen de Amazon Elastic Block Store (Amazon EBS). O bien, utiliza uno de los métodos siguientes para extender el sistema de archivos raíz en el nivel del sistema operativo (SO).

Uso de SSH o la consola serie de EC2 para ampliar el sistema de archivos raíz

Sigue estos pasos:

  1. Utiliza SSH o la consola serie de EC2 para conectarte a la instancia.
    Nota: Para usar la consola serie de EC2, debes configurar el acceso a la consola serie de EC2. Para obtener más información sobre los requisitos, consulta Requisitos previos para la consola serie de EC2.

  2. Para comprobar el espacio disponible en la partición raíz, ejecuta el siguiente comando:

    df -Th

    Resultado de ejemplo:

    $ df -Th
    
    Filesystem Type Size Used Avail Use% Mounted on
    
    devtmpfs devtmpfs 4.0M 0 4.0M 0% /dev
    
    tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
    
    tmpfs tmpfs 1.6G 440K 1.6G 1% /run
    
    /dev/nvme0n1p1 xfs 8.0G 2.0G 6.0G 25% /
    
    tmpfs tmpfs 3.9G 0 3.9G 0% /tmp
    
    /dev/nvme0n1p128 vfat 10M 1.3M 8.7M 13% /boot/efi
    
    tmpfs tmpfs 782M 0 782M 0% /run/user/1000
  3. Para ver detalles como el nombre y los tipos de sistema de archivos de los dispositivos de bloques y la partición raíz, ejecuta el siguiente comando lsblk:

    lsblk -f

    Resultado de ejemplo:

    $ lsblk -f
    NAME          FSTYPE LABEL           UUID                                 MOUNTPOINT
    nvme0n1
    ├─nvme0n1p1   xfs    /               abcd123-abcd-1234-abcd-abcdef1234 /
    └─nvme0n1p128
  4. Para ampliar una partición, ejecuta el siguiente comando:

    sudo growpart /dev/nvme0n1 1

    Nota: Sustituye nvme0n1 por el nombre de la partición.

  5. Para comprobar que has ampliado la partición, vuelve a ejecutar el comando lsblk. En la salida, asegúrate de que el tamaño de la partición sea el mismo que el tamaño del volumen.

  6. Para ampliar el sistema de archivos, ejecuta uno de los siguientes comandos según el tipo de sistema de archivos.
    Volúmenes ext4:

    sudo resize2fs /dev/nvme0n1p1

    Nota: Sustituye nvme0n1p1 por el nombre de la partición.
    Volúmenes XFS:

    sudo xfs_growfs -d /

Uso de una instancia de rescate para ampliar el sistema de archivos raíz

Si no puedes usar SSH para conectarte a una instancia inaccesible, crea una instancia de rescate en la misma zona de disponibilidad que la instancia inaccesible. Para obtener instrucciones, consulta Solución del error "No space left on device" en ¿Cómo soluciono los problemas de una instancia de EC2 de Linux que no supera una comprobación de estado debido al uso excesivo de los recursos? Después de montar el volumen raíz en la instancia de rescate, amplía el sistema de archivos.

Solución de errores "Too many open files"

Si superas el máximo de recursos de inotify, SSM Agent no podrá crear los nuevos descriptores de archivo necesarios para establecer una sesión. Este problema se produce si tienes demasiados archivos o descriptores de archivos abiertos simultáneamente, o si el subsistema inotify del kernel ha superado su cuota máxima de instancias o vigilancias. Para obtener más información, consulta inotify en el sitio web de man7.

Para solucionar este problema, toma estas medidas.

Reinicio de la instancia

Para reiniciar todos los procesos y liberar los recursos de inotify en uso, reinicia o detén e inicia la instancia.

Nota: Al detener e iniciar una instancia, la dirección IP pública de la instancia cambia. Se recomienda utilizar una dirección IP elástica para enrutar el tráfico externo hacia la instancia en lugar de una dirección IP pública. Si usas Amazon Route 53, es posible que tengas que actualizar los registros DNS de Route 53 cuando cambies la dirección IP pública.

Antes de detener e iniciar la instancia, lleva a cabo las siguientes acciones:

Aumento de la cuota de inotify

Si sigues teniendo problemas después de reiniciar, sigue estos pasos para aumentar la cuota de inotify en tu instancia:

  1. Ejecuta los siguientes comandos para comprobar la cuota de inotify:
    cat /proc/sys/fs/inotify/max_user_watches
    cat /proc/sys/fs/inotify/max_user_instances
    Nota: De forma predeterminada, max_user_watches es 8192 y max_user_instances es 128.
  2. Para aumentar temporalmente los valores de cuota máxima, ejecuta el siguiente comando:
    sudo sysctl fs.inotify.max_user_watches=newwatchesquota
    sudo sysctl fs.inotify.max_user_instances=newinstancesquota
    Nota: Sustituye newwatchesquota por la cuota nueva para max_user_watches y newinstancesquota por la cuita nueva para max_user_instances. El comando anterior actualiza las cuotas hasta el próximo reinicio de la instancia. Se recomienda probar primero los valores actualizados mediante cambios temporales.
  3. Para que las actualizaciones de las cuotas sean permanentes, agrega los siguientes parámetros al archivo /etc/sysctl.conf:
    echo "fs.inotify.max_user_watches = newwatchesquota" >> /etc/sysctl.d/20-fs-inotify.conf
    echo "fs.inotify.max_user_instances = newinstancesquota" >> /etc/sysctl.d/20-fs-inotify.conf
    Nota: Sustituye newwatchesquota por la cuota nueva para max_user_watches y newinstancesquota por la cuita nueva para max_user_instances.
  4. Reinicia la instancia para aplicar los cambios.

Nota: Se recomienda supervisar el rendimiento del sistema después de modificar la instancia para comprobar que las cuotas actualizadas se ajustan a los requisitos del sistema.

Información relacionada

¿Por qué no puedo usar el Administrador de sesiones para conectarme a mi instancia de Amazon EC2?

¿Cómo amplío mi sistema de archivos Linux después de aumentar el volumen de EBS en mi instancia de EC2?

OFICIAL DE AWSActualizada hace 5 meses