Hacer que un volumen de Amazon EBS esté disponible para su uso en Linux - Amazon Elastic Compute Cloud

Hacer que un volumen de Amazon EBS esté disponible para su uso en Linux

Tras adjuntar un volumen Amazon EBS a la instancia, queda expuesto como dispositivo de bloques. Puede formatear el volumen con cualquier sistema de archivos y, a continuación, montarlo. Tras hacer que el volumen de EBS esté disponible para su uso, puede obtener acceso a él del mismo modo que obtiene acceso a cualquier otro volumen. Cualquier dato grabado en este sistema de archivos se graba en el volumen de EBS y es transparente a las aplicaciones que utilizan este dispositivo.

Puede tomar instantáneas del volumen de EBS con fines de backup o para usarlos como referencia a la hora de crear otro volumen. Para obtener más información, consulte Instantáneas de Amazon EBS.

Para volúmenes de una instancia de Windows, obtenga instrucciones en Hacer que el volumen esté disponible para su uso en Windows en la Guía del usuario de Amazon EC2 para instancias de Windows.

Dar formato y montar un volumen asociado

Suponga que tiene una instancia EC2 con un volumen EBS para dispositivo raíz, /dev/xvda y que acaba de asociar un volumen EBS vacío a la instancia utilizando /dev/sdf. Utilice el procedimiento siguiente para hacer que el volumen recién asociado esté disponible para utilizar.

Para dar formato y montar un volumen de EBS en Linux

  1. Conéctese a la instancia mediante SSH. Para obtener más información, consulte Conexión con la instancia de Linux.

  2. El dispositivo podría estar asociado a la instancia con un nombre distinto al que especificó en el mapeo de dispositivos de bloques. Para obtener más información, consulte Asignación de nombres en instancias de Linux. Utilice el comando lsblk para ver los dispositivos de disco disponibles y sus puntos de montaje (si procede) para ayudarle a determinar el nombre de dispositivo correcto que debe emplear. El resultado de lsblk elimina el prefijo /dev/ de las rutas completas del dispositivo.

    A continuación se muestra un ejemplo de resultado para una instancia creada en Nitro System, que expone los volúmenes de EBS como dispositivos de bloques NVMe. El dispositivo raíz es /dev/nvme0n1. El volumen asociado es /dev/nvme1n1, que no se ha montado aún.

    [ec2-user ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 10G 0 disk nvme0n1 259:1 0 8G 0 disk -nvme0n1p1 259:2 0 8G 0 part / -nvme0n1p128 259:3 0 1M 0 part

    El siguiente es un resultado de ejemplo para una instancia T2. El dispositivo raíz es /dev/xvda. El volumen asociado es /dev/xvdf, que no se ha montado aún.

    [ec2-user ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk -xvda1 202:1 0 8G 0 part / xvdf 202:80 0 10G 0 disk
  3. Determine si se hay un sistema de archivos en el volumen. Los volúmenes nuevos son dispositivos de bloques sin procesar, por lo que debe crear un sistema de archivos en ellos para poder montarlos y utilizarlos. Los volúmenes que se crearon a partir de instantáneas suelen contar ya con un sistema de archivos; si crea un nuevo sistema de archivos sobre uno existente, se sobrescribirán los datos.

    Utilice el comando file -s para obtener información sobre un dispositivo como, por ejemplo, su tipo de sistema de archivos. Si la salida solo muestra data, como en el resultado de ejemplo anterior, no hay ningún sistema de archivos en el dispositivo y debe crear uno.

    [ec2-user ~]$ sudo file -s /dev/xvdf /dev/xvdf: data

    Si el dispositivo tiene un sistema de archivos, el comando muestra información acerca del tipo de sistema de archivos. Por ejemplo, el resultado siguiente muestra un dispositivo raíz con el sistema de archivos XFS.

    [ec2-user ~]$ sudo file -s /dev/xvda1 /dev/xvda1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
  4. (Condicional) Si descubrió que existe un sistema de archivos en el dispositivo en el paso anterior, omita este paso. Si tiene un volumen vacío, utilice el comando mkfs -t para crear un sistema de archivos en el volumen.

    aviso

    No utilice este comando si está montando un volumen que ya tiene datos (por ejemplo, un volumen que se creó a partir de una instantánea). De lo contrario, formateará el volumen y se eliminarán los datos existentes.

    [ec2-user ~]$ sudo mkfs -t xfs /dev/xvdf

    Si recibe un error que indica que no se encuentra mkfs.xfs, utilice el comando siguiente para instalar las herramientas XFS y, a continuación, repita el comando anterior:

    [ec2-user ~]$ sudo yum install xfsprogs
  5. Utilice el comando mkdir para crear un directorio para el punto de montaje del volumen. El punto de montaje es el lugar en el que se ubica el volumen en el árbol del sistema de archivos y donde se leen y escriben los archivos después de montar el volumen. El siguiente ejemplo crea un directorio denominado /data.

    [ec2-user ~]$ sudo mkdir /data
  6. Utilice el siguiente comando para montar el volumen en el directorio que creó en el paso anterior.

    [ec2-user ~]$ sudo mount /dev/xvdf /data
  7. Revise los permisos del archivo del montaje del nuevo volumen para asegurarse de que los usuarios y las aplicaciones puedan escribir en el volumen. Para obtener más información sobre los permisos de archivos, consulte File security en The Linux Documentation Project.

  8. El punto de montaje no se preserva automáticamente después de reiniciar la instancia. Para montar automáticamente este volumen de EBS después del reinicio, consulte Montar automáticamente un volumen asociado después del reinicio.

Montar automáticamente un volumen asociado después del reinicio

Para montar un volumen de EBS asociado en cada reinicio del sistema, añada una entrada para el dispositivo en el archivo /etc/fstab.

Puede utilizar el nombre de dispositivo, por ejemplo /dev/xvdf, en /etc/fstab, pero recomendamos utilizar el identificador universal único (UUID) de 128 bits del dispositivo. Los nombres de dispositivo pueden cambiar, pero el UUID persiste durante la vida útil de la partición. Utilizando el UUID, reduce las posibilidades de que el sistema no se pueda arrancar tras una reconfiguración del hardware. Para obtener más información, consulte Identificación del dispositivo de EBS.

Montar automáticamente un volumen asociado después del reinicio

  1. (Opcional) Cree una copia de seguridad del archivo /etc/fstab que pueda utilizar si destruye o elimina accidentalmente este archivo al editarlo.

    [ec2-user ~]$ sudo cp /etc/fstab /etc/fstab.orig
  2. Ejecute el comando blkid para encontrar el UUID del dispositivo.

    [ec2-user ~]$ sudo blkid /dev/xvda1: LABEL="/" UUID="ca774df7-756d-4261-a3f1-76038323e572" TYPE="xfs" PARTLABEL="Linux" PARTUUID="02dcd367-e87c-4f2e-9a72-a3cf8f299c10" /dev/xvdf: UUID="aebf131c-6957-451e-8d34-ec978d9581ae" TYPE="xfs"

    En Ubuntu 18.04 use el comando lsblk.

    [ec2-user ~]$ sudo lsblk -o +UUID
  3. Abra el archivo /etc/fstab con cualquier editor de texto (como nano o vim).

    [ec2-user ~]$ sudo vim /etc/fstab
  4. Añada la siguiente entrada a /etc/fstab para montar el dispositivo en el punto de montaje especificado. Los campos son el valor UUID devuelto por blkid (o lsblk para Ubuntu 18.04), el punto de montaje, el sistema de archivos y las opciones de montaje del sistema de archivos recomendadas. Para obtener más información, consulte la página del manual para fstab (ejecutar man fstab).

    UUID=aebf131c-6957-451e-8d34-ec978d9581ae /data xfs defaults,nofail 0 2
    nota

    Si en algún momento arranca la instancia sin este volumen asociado (por ejemplo, después de mover el volumen a otra instancia), la opción de montaje nofail permite a la instancia arrancar incluso si hay errores al montar el volumen. Los derivados de Debian, incluidas las versiones de Ubuntu anteriores a la 16.04, también deben añadir la opción de montaje nobootwait.

  5. Para verificar que la entrada funciona, ejecute los siguientes comandos para desmontar el dispositivo y, a continuación, monte todos los sistemas de archivos en /etc/fstab. Si no hay ningún error, el archivo /etc/fstab está correcto y el sistema de archivos se montará automáticamente después de su reinicio.

    [ec2-user ~]$ sudo umount /data [ec2-user ~]$ sudo mount -a

    Si recibe un mensaje de error, solucione los errores en el archivo.

    aviso

    Los errores del archivo /etc/fstab pueden impedir el arranque del sistema. No apague un sistema que presente errores en el archivo /etc/fstab.

    Si no está seguro de cómo corregir errores en /etc/fstab y creó un archivo de copia de seguridad en el primer paso de este procedimiento, puede restaurarlo desde su archivo de copia de seguridad utilizando el comando siguiente.

    [ec2-user ~]$ sudo mv /etc/fstab.orig /etc/fstab