¿Por qué no puedo iniciar ni lanzar mi instancia de EC2?

8 minutos de lectura
0

No puedo lanzar una nueva instancia de Amazon Elastic Compute Cloud (Amazon EC2) ni iniciar una instancia existente.

Solución

Si no puede lanzar ni iniciar su instancia de EC2, puede deberse a varios motivos. Si no se muestra ningún código de error al intentar iniciar la instancia, siga estos pasos:

  1. Compruebe el evento StartInstances en AWS CloudTrail.
    Alternativa:
    Ejecute el comando describe-instances en la Interfaz de la línea de comandos de AWS (AWS CLI) y especifique el ID de la instancia para ver a qué se debe el problema. En el siguiente ejemplo, sustituya MYINSTANCE por el ID de la instancia que está intentando iniciar.
    aws ec2 describe-instances --instance-id MYINSTANCE --output json
    Compruebe el mensaje StateReason en la respuesta de JSON que devuelve el comando. En el siguiente ejemplo de respuesta, el valor de StateReason que se devuelve es Client.InternalError:
    "StateReason": {
         "Message": "Client.InternalError: Client error on launch",
         "Code": "Client.InternalError"
       },
    Nota: Si se muestran errores al ejecutar comandos de la AWS CLI, consulte Errores de solución de problemas de la AWS CLI. Además, asegúrese de utilizar la versión más reciente de la AWS CLI.
  2. Revise los siguientes errores habituales para solucionar el problema.

InsufficientInstanceCapacity

Este error se produce cuando se lanza una nueva instancia o se reinicia una instancia detenida y no queda suficiente capacidad disponible bajo demanda para atender su solicitud:

An error occurred (InsufficientInstanceCapacity) when calling the StartInstances operation (reached max retries: 4): Insufficient capacity.)

Este error se produce si no hay suficiente capacidad bajo demanda para completar la solicitud.

Para obtener información sobre cómo solucionar este error, consulte ¿Cómo soluciono los errores InsufficientInstanceCapacity al comenzar o lanzar una instancia de EC2?

InstanceLimitExceeded

Este error se produce cuando se lanzan más instancias de las permitidas como máximo en una región de AWS:

InstanceLimitExceeded: Your quota allows for 0 more running instance(s).

Si se muestra este mensaje, envíe una solicitud de aumento de cuota a AWS Support. En la solicitud, asegúrese de incluir el tipo de instancia que está intentando lanzar y la región de AWS en la que lo está haciendo.

Para obtener información sobre cómo solucionar este error, consulte ¿Cómo soluciono los errores InstanceLimitExceeded al iniciar o lanzar una instancia de EC2?

UnauthorizedOperation

El error UnauthorizedOperation se produce cuando el usuario que intenta lanzar la instancia no tiene los permisos necesarios. Para solucionar este error, consulte ¿Cómo puedo descodificar un mensaje de error de autorización después de recibir un error de «UnauthorizedOperation» durante el inicio de una instancia de EC2?

The requested configuration is currently not supported

Este error se debe a uno de los dos problemas siguientes:

  1. El tipo de instancia especificado no se admite en la zona de disponibilidad solicitada. Para comprobar la disponibilidad de los tipos de instancia en zonas de disponibilidad concretas, ejecute el comando aws ec2 describe-instance-type-offerings en la AWS CLI. A continuación, lance la instancia en una zona de disponibilidad compatible.
    Por ejemplo, utilice el siguiente comando para comprobar la disponibilidad del tipo de instancia c5.2xlarge en todas las zonas de disponibilidad en us-east-1:

    aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=instance-type,Values=c5.2xlarge --region us-east-1
  2. La AMI que se usa para lanzar la instancia no es compatible con el tipo de instancia seleccionado. Antes de seleccionar el tipo o la familia de instancias, consulte las descripciones de las AMI en AWS Marketplace. Este problema suele producirse cuando utiliza AMI de AWS Marketplace e intenta lanzar instancias no compatibles con AWS CLI. Cuando lance instancias desde la consola de Amazon EC2, las instancias no compatibles no estarán disponibles.

Client.InternalError

A continuación se indican los motivos habituales por los que se puede mostrar este error:

  • Un volumen de Amazon Elastic Block Store (Amazon EBS) no está asociado correctamente a la instancia.
  • Un volumen de EBS asociado a la instancia se encuentra en el estado ERROR.
  • Se ha asociado un volumen de EBS cifrado a la instancia. Sin embargo, no tiene los permisos para acceder a AWS Key Management Services (AWS KMS) para el descifrado.

Para obtener información sobre cómo solucionar estos problemas, consulte ¿Cómo soluciono los problemas de una instancia de Amazon EC2 que se detiene o termina cuando intento iniciarla?

Errores de disco lleno

Cuando se queda sin espacio en una instancia y el servicio de auditoría detiene la máquina en el arranque, se produce un error de disco lleno.

Nota: Antes de continuar, se recomienda crear una instantánea para hacer copias de seguridad de los datos de los volúmenes.

Importante: Estos pasos de la solución requieren que inicie y detenga la instancia. Tenga en cuenta lo siguiente:

  • Cuando se detiene una instancia, se pierden los datos en los volúmenes del almacén de instancias. Para obtener más información, consulte Determinar el tipo de dispositivo raíz de la instancia.
  • Si detiene una instancia que forma parte de un grupo de Amazon EC2 Auto Scaling, puede que termine la instancia. Las instancias que lance con Amazon EMR, AWS CloudFormation o AWS Elastic Beanstalk pueden formar parte de un grupo de AWS Auto Scaling. La terminación de la instancia en este escenario depende de la configuración de la protección de desescalamiento de instancias para el grupo de escalamiento automático. Si la instancia forma parte de un grupo de escalamiento automático, elimínela temporalmente de dicho grupo antes de continuar.
  • Al detener e iniciar la instancia, la dirección IP pública de la instancia cambia. Se recomienda utilizar una dirección IP elástica en lugar de una dirección IP pública para enrutar el tráfico externo hacia la instancia.

Para solucionar los errores de disco lleno, siga estos pasos:

  1. Abra la consola de Amazon EC2.

  2. Elija Instancias en el panel de navegación y, a continuación, seleccione la instancia.

  3. Detenga la instancia.

  4. Desasocie el volumen raíz de EBS (/dev/xvda para Linux) respecto a la instancia detenida.

  5. Inicie una nueva instancia de EC2 en la misma zona de disponibilidad que la instancia deteriorada. La nueva instancia se convierte en su instancia de rescate.

  6. Asocie el volumen raíz que desasoció en el paso 4 a la instancia de rescate como dispositivo secundario.
    Nota: Al asociar volúmenes secundarios, puede utilizar diferentes nombres de dispositivos.

  7. Conéctese a la instancia de rescate mediante SSH.

  8. Cree un directorio de punto de montaje para el nuevo volumen asociado a la instancia de rescate en el paso 6. En el siguiente ejemplo, el directorio de puntos de montaje es /mnt/rescue.
    Nota: Los siguientes comandos $ sudo solo se aplican en entornos Linux:

    $ sudo mkdir /mnt/rescue
  9. Monte el volumen en el directorio creado en el paso 8:

    $ sudo mount /dev/xvdf /mnt/rescue

    Nota: El dispositivo (/dev/xvdf, en este ejemplo) puede tener un nombre diferente para la instancia de rescate a la que está asociado. Para determinar los nombres correctos de los dispositivos, utilice el comando lsblk para ver los dispositivos de disco disponibles junto con sus puntos de montaje.

  10. Aumente el tamaño del volumen raíz.

  11. Amplíe la partición.

  12. Ejecute el comando umount para desmontar el volumen:

$ sudo umount /mnt/rescue
  1. Desasocie el volumen de la instancia temporal.
  2. Asocie el volumen a la instancia original con el nombre del dispositivo (/dev/xvda para Linux) y, a continuación, inicie la instancia para confirmar si arranca correctamente.
  3. Revise la configuración del servicio de auditoría para asegurarse de que no tenga la opción de detener (apagar) la máquina si se queda sin espacio. En Amazon Linux, Amazon Linux 2 y Amazon Linux 2023, asegúrese de que la configuración del servicio de auditoría incluya las siguientes opciones en /etc/audit/auditd.conf:
max_log_file_action = ROTATE
admin_space_left_action = SUSPEND
disk_full_action = SUSPEND
disk_error_action = SUSPEND

Client.InvalidParameterValue

InvalidParameterValue significa que un parámetro especificado en la solicitud no es válido, no se admite o no se puede usar. El mensaje devuelto proporciona una explicación del valor del error. Por ejemplo, si un volumen raíz no está asociado a la instancia en /dev/sda1 o /dev/xvda, según la AMI, la instancia no se iniciará. Si esto ocurre, verá una entrada en AWS CloudTrail similar a la siguiente:

An error occurred (InvalidParameterValue) when calling the StartInstances operation: Invalid value 'i-xxxxxxxxxxxxxxxxx' for instanceId. Instance does not have a volume attached at root (/dev/sda1)

Para solucionarlo, utilice el mensaje de error como referencia para cambiar el parámetro relevante. Por ejemplo, para solucionar el error del ejemplo anterior, asocie el volumen raíz a la instancia en /dev/sda1 y, a continuación, inicie la instancia. Para obtener más información, consulte Error codes for the Amazon EC2 API.

Información relacionada

Solucionar problemas de lanzamiento de instancias: Linux

Solucionar problemas de lanzamiento de instancias: Windows

Amazon Elastic Container Service (Amazon ECS) best practices guide

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año