Migración de AWS EC2 a un nuevo tipo de instancia con unidades SSD

13

Tengo MySQL ejecutándose en una instancia m1.xlarge con un volumen EBS de 100GB que contiene los archivos de datos. Me gustaría migrar a una instancia m3.2xlarge y colocar los archivos de datos en las nuevas unidades SSD de 2 x 80 GB.

Detuve mi instancia, cambié el tipo en consecuencia y la inicié. Sin embargo, todo lo que pude encontrar para el almacenamiento fue un tempfs de 15G y una unidad montada de 8G.

$ fdisk -l
Disk /dev/xvda1: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

¿Cómo obtengo acceso a las SSD de 2 x 80 GB para este tipo de instancia?

paiego
fuente
fdisk -l, mkfsentonces mount.
ceejayoz
1
Cuando cambió el tipo de instancia y lo lanzó, solo cambia el tipo de RAM y CPU. Para cambiar el tamaño del disco en general, la idea es: - hacer una instantánea de su instancia - crear un volumen mayor a partir de la instantánea en la misma zona - adjuntar un nuevo volumen a la instancia / dev / sda1 - iniciar la instancia (el nombre DNS cambia)
LinuxDevOps
@LinuxDevOps: Gracias. Al cambiar la forma en que lo hice, ¿seguirá estando disponible el volumen adjunto como estaba antes del cambio de instancia?
paiego
Compruebe su consola web de AWS bajo la administración de EC2 -> Volúmenes si está allí (identifíquelo por capacidad y 'disponible'), puede haberlo perdido
LinuxDevOps

Respuestas:

13

Entonces, para una respuesta completa, básicamente sus unidades SSD son discos efímeros, y de acuerdo con la documentación de AWS, la única forma de usar estos discos efímeros es crear una nueva instancia. (La función para adjuntar almacenamiento efímero a la instancia después de que se haya creado aún no está disponible)

Esto es de los documentos de AWS :

Las instancias que usan Amazon EBS para el dispositivo raíz no tienen, por defecto, un almacén de instancias disponible en el momento del arranque. Además, no puede adjuntar volúmenes de almacén de instancias después de haber lanzado una instancia. Por lo tanto, si desea que su instancia respaldada por Amazon EBS use volúmenes de almacenamiento de instancias, debe especificarlas utilizando una asignación de dispositivo de bloque cuando cree su AMI o inicie su instancia. Ejemplos de entradas de mapeo de dispositivos de bloque son: / dev / sdb = ephemeral0 y / dev / sdc = ephemeral1. Para obtener más información sobre la asignación de dispositivos de bloque, consulte Asignación de dispositivos de bloque

Como @LinuxDevOps mencionó, debe crear una instantánea de su instancia existente y luego crear una nueva adjuntando los volúmenes SSD. Después de iniciar sesión en su nueva instancia, puede hacer como @ceejayoz mencionado.

Lista tus dispositivos:

fdisk -l

Crea un sistema de archivos en los dispositivos. Por ejemplo ext4

mkfs.ext4 /dev/xvdb
mkfs.ext4 /dev/xvdc

Montar los dispositivos:

mkdir -p /mnt/xvdb; mkdir -p /mnt/xvdc
mount /dev/xvdb /mnt/xvdb
mount /dev/xvdc /mnt/xvdc

Para referencia: lista de nombres de dispositivos según tipos de instancia

También hay otras respuestas similares en SF y SO. Por ejemplo: ¿Dónde está mi almacenamiento efímero para la instancia EC2?

Rico
fuente