Solucione problemas con las instantáneas de EBS basadas en VSS de Windows - Amazon Elastic Compute Cloud

Solucione problemas con las instantáneas de EBS basadas en VSS de Windows

Antes de intentar cualquier otro paso de solución de problemas, le recomendamos que compruebe los siguientes detalles.

Controlar los archivos de registro

Si tiene problemas o recibe mensajes de error al crear instantáneas de EBS compatibles con VSS, puede ver la salida de los comandos en la consola de Systems Manager.

Para los documentos de Systems Manager que crean instantáneas de VSS, puede establecer el parámetro CollectDiagnosticLogs en “True” en el tiempo de ejecución. Cuando el parámetro CollectDiagnosticLogs se establece en “True”, VSS recopila registros adicionales para facilitar la depuración. Para obtener más información, consulte Recopilar registros de diagnóstico adicionales.

Si recopila registros de diagnóstico, el documento Systems Manager los almacena en la instancia en la siguiente ubicación: C:\ProgramData\Amazon\AwsVss\Logs\timestamp.zip. El valor predeterminado para el parámetro CollectDiagnosticLogs es “False”.

nota

Para obtener ayuda adicional con la depuración, puede enviar el archivo .zip al AWS Support.

Los siguientes registros adicionales están disponibles, ya sea si recopila registros de diagnóstico o no:

  • %ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stdout

  • %ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stderr

También puede abrir la aplicación del visor de eventos de Windows y seleccionar la aplicación de Registros de Windows para ver registros adicionales. Para ver eventos específicos del proveedor de VSS de EC2 para Windows y el servicio Volume Shadow Copy Service, filtre por Origen en los términos Ec2VssSoftwareProvider y VSS.

Si utiliza Systems Manager con puntos de conexión de VPC y la acción de API SendCommand de Systems Manager (o Ejecutar comando en la consola) falló, verifique que haya configurado de manera correcta el siguiente punto de conexión: com.amazonaws.region.ec2.

Si el punto de conexión de Amazon EC2 no está definido, se produce un error en la llamada para enumerar los volúmenes de EBS asociados, lo que hace que el comando de Systems Manager no se ejecute correctamente. Para obtener más información acerca de la configuración de los puntos de conexión de VPC con Systems Manager, consulte Crear un punto de conexión de la nube virtual privada en la Guía del usuario de AWS Systems Manager.

Recopilar registros de diagnóstico adicionales

Para recopilar registros de diagnóstico adicionales con el comando de envío de Systems Manager para ejecutar el documento de instantáneas del VSS, defina el parámetro de entrada CollectDiagnosticLogs en “True” en el tiempo de ejecución. Se recomienda que establezca el parámetro en “True” al corregir los errores.

Para ver el ejemplo de línea de comando, seleccione una de las siguientes pestañas.

AWS CLI

El siguiente ejemplo ejecuta el documento de Systems Manager AWSEC2-CreateVssSnapshot en AWS CLI:

aws ssm send-command \ --document-name "AWSEC2-CreateVssSnapshot" \ --instance-ids "i-1234567890abcdef0" \ --parameters '{"description":["Example - create diagnostic logs at runtime."],"tags":["Key=tag_name,Value=tag_value"],"CollectDiagnosticLogs":["True"]}'
PowerShell

El siguiente ejemplo ejecuta el documento de Systems Manager AWSEC2-CreateVssSnapshot en PowerShell:

Send-SSMCommand -DocumentName AWSEC2-CreateVssSnapshot -InstanceId "i-1234567890abcdef0" -Parameter @{'description'='Example - create diagnostic logs at runtime.';'tags'='Key=tag_name,Value=tag_value';'CollectDiagnosticLogs'='True'}

Utilización de VSS en instancias con proxy configurado

Si tiene problemas al crear instantáneas de EBS compatibles con VSS en instancias que utilizan un proxy para llegar a los puntos de conexión de EC2, asegúrese de lo siguiente:

  • El proxy se configura para que se pueda acceder a los puntos de conexión del servicio EC2 de la región y el IMDS de la instancia mediante la ejecución de AWS Tools for Windows PowerShell como SYSTEM.

  • Se ha instalado la versión 2.0.1 o posterior de AwsVssComponents. A partir de la versión 2.0.1 de AwsVssComponents, el proveedor de VSS de EC2 admite el uso del proxy WinHTTP configurado del sistema. Para obtener más información acerca de la configuración del proxy WinHTTP, consulte Netsh Commands for Windows Hypertext Transfer Protocol (WINHTTP) en el sitio web de Microsoft.

Error: tiempo de espera de conexión de canalización de descongelación, error al descongelar, tiempo de espera de congelación de VSS u otros errores de tiempo de espera.

El proveedor de VSS de EC2 para Windows puede agotar el tiempo de espera debido a la actividad o los servicios en la instancia que impiden que las instantáneas habilitadas para VSS se lleven a cabo de manera oportuna. Windows VSS Framework proporciona una ventana de 10 segundos no configurable durante la cual se pausa la comunicación con el sistema de archivos. Durante este tiempo, AWSEC2-CreateVssSnapshot crea instantáneas de los volúmenes.

Los siguientes problemas pueden hacer que el proveedor de VSS de EC2 para Windows se ejecute dentro de límites de tiempo durante una instantánea:

  • Exceso de E/S a un volumen

  • Capacidad de respuesta lenta de la API de EC2 en la instancia

  • Volúmenes fragmentados

  • Incompatibilidad con algún software antivirus

  • Problemas con un escritor de aplicaciones de VSS

  • Cuando el registro de módulos está habilitado para un gran número de módulos de PowerShell, esto puede hacer que los scripts de PowerShell se ejecuten lentamente.

La mayoría de los problemas de tiempo de espera que se encuentran al ejecutar el documento de comandos AWSEC2-CreateVssSnapshot están relacionados con que la carga de trabajo en la instancia es demasiado alta en el momento de realizar la copia de seguridad. Las siguientes acciones pueden ayudarlo a realizar una instantánea correcta:

  • Vuelva a intentar el comando AWSEC2-CreateVssSnapshot para ver si el intento de instantánea se realiza correctamente. Si el reintento se realiza correctamente en algunos casos, la reducción de la carga de instancias podría hacer que las instantáneas sean más exitosas.

  • Espere un momento a que disminuya la carga de trabajo de la instancia y vuelva a intentar el comando AWSEC2-CreateVssSnapshot. Alternativamente, puede intentar hacer instantáneas cuando se sabe que la instancia está con tensión baja.

  • Intente hacer instantáneas de VSS cuando el software antivirus del sistema esté apagado. Si esto resuelve el problema, consulte las instrucciones del software antivirus y configúrelo para permitir instantáneas de VSS.

  • Si hay un gran volumen de llamadas a la API de Amazon EC2 en su cuenta dentro de la misma región en la que está ejecutando una instantánea, la limitación de la API podría retrasar las operaciones de la instantánea. Para reducir el impacto de las limitaciones, use el paquete AwsVssComponents más reciente (versión 2.1.0 o superior, con los requisitos previos). Este paquete usa la acción de la API CreateSnapshots de EC2 para reducir el número de acciones mutantes, como la creación de instantáneas por volumen y el etiquetado.

  • Si tiene varios scripts de comandos de AWSEC2-CreateVssSnapshot ejecutándose al mismo tiempo, puede seguir los siguientes pasos para reducir los problemas de simultaneidad.

    • Considere la posibilidad de programar las instantáneas durante los periodos de menor actividad de la API.

    • Si usa Run Command en la consola de Systems Manager (o SendCommand en la API) para ejecutar el script de comandos, puede usar los controles de velocidad de Systems Manager para reducir la simultaneidad.

      También puede usar los controles de velocidad de Systems Manager para reducir la simultaneidad de servicios como AWS Backup que usan Systems Manager para ejecutar el script de comandos.

  • Ejecute el comando vssadmin list writers en un shell y vea si informa algún error en el campo Último error para cualquier escritor del sistema. Si algún escritor informa de un error de tiempo de espera, considere reintentar hacer instantáneas cuando la instancia esté con menos carga.

  • Cuando usa tipos de instancias más pequeños, como t2 | t3 | t3a.nano o t2 | t3 | t3a.micro, pueden producirse tiempos de espera debidos a limitaciones de memoria y CPU. Las siguientes acciones pueden ayudar a reducir los problemas de tiempo de espera.

    • Intente cerrar las aplicaciones que consumen mucha memoria o CPU antes de tomar instantáneas.

    • Intente tomar instantáneas durante los periodos de menor actividad de las instancias.

Error: no se puede invocar el método. La invocación de métodos solo se admite en tipos principales en este modo de lenguaje

Encontrará este error cuando el modo de lenguaje de PowerShell no esté configurado en FullLanguage. Los documentos de SSM AWSEC2-CreateVssSnapshot y AWSEC2-ManageVssIo requieren que PowerShell esté configurado en modo FullLanguage.

Para verificar el modo de lenguaje, ejecute el siguiente comando en la instancia en una consola de PowerShell:

$ExecutionContext.SessionState.LanguageMode

Para obtener más información acerca de los modos de lenguaje, consulte About_Language_Modes en la documentación de Microsoft.