¿Cómo puedo acceder al almacenamiento de instancias en una instancia de Windows EC2 con un dispositivo raíz ebs?

8

He creado una AMI, pero me gustaría utilizar el almacenamiento de instancias para algunos programas científicos que quiero ejecutar. Básicamente leen un montón de cosas del disco, lo vuelven a escribir en el disco y luego resumen los resultados. Esto debe estar en Windows porque esa es la plataforma para la que se escribieron estos programas. No necesito que los archivos persistan y realmente no me importa si los pierdo, por lo que me gustaría usar el almacenamiento de instancias para esto y no incurrir en ninguna tarifa por E / S.

Entonces, inicio mi AMI, pero cuando entro remotamente, solo veo mi dispositivo raíz EBS. ¿Cómo puedo montar el almacenamiento de instancias (efímero) que tengo disponible?

oob
fuente
2
Debe especificar las asignaciones de dispositivos de bloque (p -b /dev/xvdb=ephemeral0. Ej. ) Pasándolas a ec2-run-instances, o deben ser parte de su AMI (es decir, agregado con ec2-register). Consulte la documentación para obtener detalles sobre la cantidad de almacenamiento de instancias disponible y desde qué dispositivo / punto de montaje puede acceder.
cyberx86
1
@ cyberx86 gracias. El mapeo de dispositivos de bloque es el término que necesitaba. ahora tengo toneladas de ideas de google sobre esto. Lo investigaré. ¡Gracias! Su respuesta me parece más una respuesta que un comentario.
Oob
Es un mal hábito mío, publicar respuestas como comentarios (los comentarios son más rápidos y fáciles de escribir y no tienen penalidad por ser incorrectos). Si bien uso mucho EC2, no uso servidores de Windows, de ahí la razón del comentario. Sin embargo, lo he publicado como una respuesta genérica.
cyberx86

Respuestas:

8

Si bien todas las instancias, excepto la t1.micro, tienen una asignación de 'almacenamiento de instancias' (es decir, almacenamiento efímero), ese almacenamiento no está necesariamente asociado de manera predeterminada. En la mayoría de los casos, las instancias con un volumen raíz EBS tendrán cero o un volumen efímero adjunto.

Los discos efímeros, disponibles para una instancia están etiquetados ephemeral[0-3]. NO puede adjuntarlos a una instancia una vez que se ha iniciado. (Por otro lado, puede agregar volúmenes EBS a una instancia mientras se está ejecutando).

Dado que los discos efímeros, junto con los volúmenes de EBS, son dispositivos de bloque, AWS llama a la asignación de estos discos a las 'asignaciones de dispositivos de bloque' de los dispositivos de una instancia, y estos se pueden especificar utilizando los parámetros -bo --block-device-mapping(que puede usar más de una vez).

Para cambiar los discos efímeros adjuntos a la instancia, debe:

  1. inicie la instancia especificando explícitamente las asignaciones efímeras de disco O

    ec2-run-instancia ami-xxxxxxxx -b / dev / xvdb = efímero0 -b / dev / xvdc = ephemeral1 -b / dev / xvdd = ephemeral2 -b / dev / xvde = ephemeral3
  2. registre una nueva AMI, especificando explícitamente las asignaciones efímeras de disco (y una raíz EBS):

    ec2-register -n Image_Name -d Image_Description --root-device-name / dev / xvda1 -b / dev / xvda1 = snap-xxxxxxxx -b / dev / xvdb = ephemeral0 -b / dev / xvdc = ephemeral1 -b / dev / xvdd = efímero2 -b / dev / xvde = efímero3

Tenga en cuenta que en la instancia de Windows, especificará el dispositivo como / dev / xvdX, mientras que en las instancias de Linux lo especificará como / dev / sdX (aunque, los núcleos modernos de Linux aún mostrarán este dispositivo como / dev / xvdX, con un enlace simbólico a / dev / sdX). Además, las instancias de Windows formatearán los volúmenes del almacén de instancias a NTFS (aunque, por defecto, los volúmenes vienen formateados como ext3).

AWS detalla el almacenamiento y las asignaciones de instancias disponibles en su documentación .

cyberx86
fuente