Saltar al contenido

¿Cómo puedo montar o desmontar mi sistema de archivos de Amazon EFS?

7 minutos de lectura
0

Quiero montar, montar automáticamente o realizar un montaje local de mi sistema de archivos Amazon Elastic File System (Amazon EFS). Alternativamente, quiero desmontar mi sistema de archivos de EFS.

Resolución

Nota: Para montar el sistema de archivos de EFS, utiliza el cliente de Amazon EFS amazon-efs-utils o el paquete de utilidades de NFS nfs-utils. Para obtener información sobre el paquete de utilidades de NFS, consulta Package nfs-utils (Paquete nfs-utils) en el sitio web de Mankier.

Uso del cliente de Amazon EFS para montar un sistema de archivos de Amazon EFS

Instalación del cliente de Amazon EFS para tu distribución

Para instalar amazon-efs-utils, usa uno de los siguientes comandos según tu distribución:

Amazon Linux 1, Amazon Linux 2 y Amazon Linux 2023 (AL2023):

sudo yum install -y amazon-efs-utils

Imagen de máquina de Amazon (AMI) AL2023 sin yum:

sudo dnf install -y amazon-efs-utils

Ubuntu y Debian:

sudo apt-get update
sudo apt-get -y install git binutils rustc cargo pkg-config libssl-dev
git clone https://github.com/aws/efs-utils
cd efs-utils
./build-deb.sh
sudo apt-get -y install ./build/amazon-efs-utils*deb

Nota: Algunas distribuciones de Ubuntu y Debian no incluyen rust o cargo en sus repositorios de paquetes, o pueden incluir versiones anteriores a la 1.70. Si el comando apt-get install falla porque falta una cadena de herramientas de Rust o está desactualizada, ejecuta los siguientes comandos antes de ejecutar build-deb.sh:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
. "$HOME/.cargo/env"

OpenSUSE o SUSE Linux Enterprise Server (SLES):

sudo zypper refresh
sudo zypper install -y git rpm-build make rust cargo openssl-devel
git clone https://github.com/aws/efs-utils
cd efs-utils
make rpm
sudo zypper --no-gpg-checks install -y build/amazon-efs-utils*rpm

Todas las demás distribuciones:

sudo yum -y install git rpm-build make rust cargo openssl-devel
git clone https://github.com/aws/efs-utils
cd efs-utils
make rpm
sudo yum -y install build/amazon-efs-utils*rpm

Conexión del sistema de archivos de Amazon EFS a la instancia de Amazon EC2

Sigue estos pasos:

  1. Abre la consola de Amazon EFS.
  2. En el panel de navegación, selecciona File systems (Sistemas de archivos).
  3. Selecciona tu sistema de archivos de EFS.
  4. Para ver el comando Mount, selecciona Attach (Asociar).
  5. Utiliza Secure Shell (SSH) o Administrador de sesiones, una funcionalidad de AWS Systems Manager, para conectarte a tu instancia de Amazon Elastic Compute Cloud (Amazon EC2).
  6. Para crear directorios de puntos de montaje y montar un sistema de archivos de EFS en ellos, ejecuta los siguientes comandos:
    sudo mkdir -p /mnt/efs
    sudo mkdir -p /mnt/efs-ap
    sudo mount -t efs -o tls fs-12345678:/ /mnt/efs
    sudo mount -t efs -o tls,accesspoint=fsap-12345678 fs-01233210 /mnt/efs-ap
    Nota: Sustituye fs-12345678 y fs-01233210 por los ID del sistema de archivos de EFS. Sustituye fsap-12345678 por tu ID de punto de acceso de EFS.

Uso del paquete de utilidades NFS para montar un sistema de archivos de Amazon EFS

Instalación del paquete de utilidades NFS para tu distribución

Para instalar el paquete nfs-utils, usa uno de los siguientes comandos según tu distribución:

RHEL y CentOS:

sudo yum -y install nfs-utils

Paquetes de Linux que no incluyen yum:

sudo dnf install -y nfs-utils

Ubuntu:

sudo apt install nfs-common

Conexión del sistema de archivos de Amazon EFS a la instancia de Amazon EC2

  1. Abre la consola de Amazon EFS.
  2. En el panel de navegación, selecciona File systems (Sistemas de archivos).
  3. Selecciona tu sistema de archivos de EFS.
  4. Para ver el comando Mount, selecciona Attach (Asociar).
  5. Usa SSH o Administrador de sesiones para conectarte a tu instancia de EC2.
  6. Para montar un sistema de archivos de EFS en un directorio local, ejecuta los siguientes comandos:
    sudo mkdir -p /mnt/efs  #creating the efs-mount-point
    sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-DNS:/   /mnt/efs
    Nota: Sustituye mount-target-DNS por el nombre DNS del destino de montaje de EFS en la nube virtual privada (VPC).
    Alternativamente, para usar una dirección IP para montar el sistema de archivos, ejecuta el siguiente comando:
    sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/  /mnt/efs
    Nota: Sustituye mount-target-ip por la dirección IP del destino de montaje de EFS en la VPC.

Montaje automático de un sistema de archivos de Amazon EFS

Puedes montar un sistema de archivos de EFS para instancias de EC2 nuevas o en ejecución.

Uso de instancias de EC2 en ejecución

Si ya tienes una instancia de EC2 en ejecución, utiliza /etc/fstab para montar automáticamente el sistema de archivos de EFS.

Sigue estos pasos:

  1. Para iniciar el editor de texto Vim, ejecuta el siguiente comando:

    vim /etc/fstab
  2. Para montar automáticamente el sistema de archivos de EFS al arrancar, ejecuta el comando para crear una entrada de tipo efs o una entrada de tipo nfs4, según tu configuración.
    Para el paquete amazon-efs-utils, ejecuta el siguiente comando:

    fs-########:/ /mnt/efs efs _netdev,nofail,noresvport,tls,iam 0 0

    Para el paquete nfs-utils, ejecuta el siguiente comando:

    fs-########.efs.REGION.amazonaws.com:/ /mnt/efs nfs4 defaults,_netdev,nofail 0 0

    Nota: Sustituye fs-####### por el identificador del sistema de archivos de EFS.

  3. Para aplicar inmediatamente la configuración sin reiniciar, ejecuta el siguiente comando:

    mount -a

Para ver las opciones de montaje que utiliza el asistente de montaje, consulta Montaje automático de sistemas de archivos de EFS.

Nota: Para montar el sistema de archivos de EFS, puedes usar la dirección IP de un destino de montaje en una zona de disponibilidad diferente a la de la instancia del cliente. Este método de montaje puede incurrir en cargos por transferencia de datos entre zonas de disponibilidad y provocar latencia.

Uso de las nuevas instancias de EC2

Si creas una nueva instancia de EC2, utiliza el asistente de iniciación de instancias de Amazon EC2 para montar automáticamente el sistema de archivos de EFS. Al configurar la instancia de EC2, realiza las siguientes acciones:

  • En File systems (Sistemas de archivos), selecciona tu sistema de archivos. La ruta que se encuentra junto al ID del sistema de archivos es el punto de montaje que utiliza la instancia de EC2. Puedes cambiar esta ruta en función de tus necesidades.
  • Ten en cuenta que AWS genera automáticamente los datos de usuario en la sección Advanced details (Detalles avanzados) para montar el sistema de archivos de EFS.
  • Elige el grupo de seguridad predeterminado para asegurarte de que la instancia de EC2 pueda acceder a tu sistema de archivos de EFS. Para permitir el acceso SSH, edita el grupo de seguridad predeterminado. A continuación, añade una regla con Type establecido en SSH, Protocol establecido en TCP, Port Range establecido en 22 y Source establecido en Anywhere (0.0.0.0/0).

Alternativamente, monta un sistema de archivos de EFS en una AMI personalizada o con opciones específicas, usa los siguientes comandos para añadir datos de usuario personalizados:

RHEL y CentOS:

#!/bin/bash
sudo mkdir -p /mnt/efs
sudo yum -y install nfs-utils

Ubuntu:

#!/bin/bash
sudo mkdir -p /mnt/efs
sudo apt install nfs-common
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/ /mnt/efs

A continuación, inicia la instancia de EC2.

Montaje local de un sistema de archivos Amazon EFS

Para montar un sistema de archivos de Amazon EFS en tus servidores locales, debes tener conectividad entre Amazon EFS y los servidores locales. Para establecer la conectividad entre el servidor local y Amazon Virtual Private Cloud (Amazon VPC), usa AWS Direct Connect y AWS VPN. A continuación, usa los siguientes comandos para instalar el cliente NFS y montar el sistema de archivos:

sudo yum -y install nfs-utils (Red Hat Linux)
sudo apt-get -y install nfs-common (Ubuntu)
sudo mkdir -p /mnt/efs
sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-IP:/ /mnt/efs

Desmontaje de un sistema de archivos de Amazon EFS

Para desmontar un sistema de archivos, ejecuta el siguiente comando umount:

sudo umount /mnt/efs

Si el punto de montaje está ocupado, ejecuta el siguiente comando umount con el parámetro -l:

sudo umount -l /mnt/efs

Información relacionada

Herramienta de administración de paquetes

Tutorial: montaje con clientes Linux locales

Ejecución de comandos al iniciar una instancia de EC2 con la entrada de datos de usuario

OFICIAL DE AWSActualizada hace 5 meses