Tengo una instancia Amazon EC2 respaldada por EBS. Me gustaría cambiar el dispositivo raíz en esta instancia. ¿Puede aconsejarnos cuál es la mejor forma de hacerlo?
Solo encuentro documentación sobre cómo cambiar varios atributos de los dispositivos de bloque, pero no parecen incluir la configuración como dispositivo raíz.
/dev/sda1
¡de hecho!/dev/sda
tampoco/dev/sda1
funcionó para mí, pero lo/dev/xvda
hizo./dev/sda
- no funcionó./dev/sda1
,dev/sdf
- funcionó, pero la instancia no arrancó./dev/xvda
trabajó.aws ec2 describe-instances --instance-id i-XXXXXXX | grep -i rootDeviceName
en mi caso/dev/xvda
No tengo suficiente representante para agregar un comentario a la respuesta seleccionada, pero quiero señalar que para mí,
/dev/sda1
no funcionó (no se adjuntó como raíz), pero el uso/dev/xvda
funcionó (adjunto como raíz). La instancia es una de las t2.micro más nuevas que usan HVM.fuente
/dev/sda1
, AWS se niega a iniciar mi instancia. ¿Hay alguna otra configuración que deba configurar para usar un nombre de dispositivo raíz alternativo?/dev/sda
no es válida pero/dev/sda1
está bien.Para ampliar el comentario de Diomidis Spinellis en el hilo de comentarios de la respuesta aceptada, es importante verificar la etiqueta del sistema de archivos del dispositivo que está intentando cambiar como su nuevo dispositivo raíz. Mientras solucionaba problemas de migración de mi propio servidor, tuve que hacer lo siguiente antes de que mi instancia arrancara:
Use el
e2label
comando para cambiar la etiqueta en el sistema de archivos ext2 / ext3 / ext4 que ha creado para su nuevo dispositivo raíz.Primero, verifique la etiqueta del sistema de archivos de su dispositivo raíz actual.
Configure el nuevo dispositivo para que tenga la misma etiqueta de sistema de archivos.
En mi caso, la etiqueta fue
cloudimg-rootfs
. A veces simplemente lo será/
.Es importante comprender cómo funciona e2label; compruebe
man e2label
su máquina o visite http://linux.die.net/man/8/e2label para obtener más información.fuente
Esta es la solución sugerida por AWS. Puede separar el volumen raíz de la instancia original después de detenerlo. El volumen raíz está adjunto en / dev / sda1. Una vez que se haya separado, adjúntelo a la nueva instancia. Una vez que se adjunta el volumen, es posible que deba montarlo desde el sistema operativo. Una vez montado, debería ver los datos que contiene.
Una vez que haya terminado de agregar la nueva clave, puede separarla y adjuntarla a la instancia original en / dev / sda1.
Sugiero crear una instantánea del volumen raíz antes de realizar cambios.
Antes de probar cualquier solución, pruebe en los casos no importantes o en los casos puntuales.
fuente
Si desea hacer esto a través de CloudFormation, deberá hacer lo siguiente:
Implemente su pila. Esto volverá a crear su instancia, así que asegúrese de estar usando una dirección IP elástica o tener acceso a DNS.
La razón por la que tiene que hacer esta solución alternativa es porque CF no le permitirá ajustar el tamaño del volumen raíz en EC2 BlockDeviceMappings, ni ajustar SnapshotId del volumen raíz.
fuente
Cuando su volumen está montado, obtiene una corrección posterior con números, por ejemplo: cuando
/dev/sda
está montado, se monta/dev/sda1, /dev/sda2
según las particiones que haga. A medida que montamos el dispositivo raíz, se asume que el dispositivo ya está montado, por lo que debemos proporcionar/dev/sda1
para montar el volumen como dispositivo raíz. Nota: No debería haber ningún volumen raíz adjunto.Siga estos pasos: 1) Vaya a sus volúmenes, seleccione adjuntar volúmenes de Acción. 2) Seleccione su instancia 3) Para montar como root, ingrese el nombre del dispositivo como
/dev/sda1
4) Inicie su instancia.fuente