Quelles sont les étapes de base pour le montage, le démontage, le montage automatique et le montage sur site de mon système de fichiers EFS ?

Dernière mise à jour : 17/06/2022

Quelles sont les étapes de base pour le montage, le démontage, le montage automatique et le montage sur site de mon système de fichiers Amazon Elastic File System (Amazon EFS) ?

Solution

Pour monter votre système de fichiers Amazon EFS, vous pouvez soit installer le package nfs-utils, soit le package efs-utils.

Montage d'EFS avec les outils efs-utils

1.    Exécutez la commande suivante pour installer le package efs-utils :

Amazon Linux ou Amazon Linux 2

$ sudo yum install -y amazon-efs-utils

Distributions basées sur Ubuntu et Debian

$ sudo apt-get -y install ./build/amazon-efs-utils*deb./build-deb.sh
$ cd /path/to/efs-utils
$ git clone https://github.com/aws/efs-utils
$ sudo apt-get -y install git binutils
$ sudo apt-get update

Autres distributions Linux

$ sudo yum -y install git
$ sudo yum -y install rpm-build
$ git clone https://github.com/aws/efs-utils
$ cd /path/efs-utils
$ sudo yum -y install make
$ sudo yum -y install rpm-build
$ sudo make rpm
$ sudo yum -y install ./build/amazon-efs-utils*rpm

2.    Une fois le package efs-utils installé, ouvrez la console EFS.

3.    Sélectionnez File systems (Systèmes de fichiers).

4.    Sélectionnez le système de fichiers que vous voulez monter.

5.    Sélectionnez Attach (Attacher).

6.    Copiez la commande sous using the EFS mount helper (utilisant l'assistant de montage d'EFS).

7.    Connectez-vous à l'instance via SSH ou AWS Systems Manager Session Manager et exécutez la commande que vous avez copiée à l'étape 6 :

$ sudo mkdir -p /mnt/efs
$ sudo mount -t efs -o tls fs-12345678:/ /mnt/efs
$ sudo mount -t efs -o tls,accesspoint=fsap-12345678 fs-01233210 /mnt/efs

Remarque : modifiez les commandes précédentes selon les besoins en remplaçant l'identifiant du système de fichiers, le point de montage, etc.

Montage d'EFS avec le client NFS

1.    Exécutez la commande suivante pour installer le package nfs-utils :

Distributions basées sur RHEL et CentOS

$ sudo yum -y install nfs-utils

Distributions basées sur Ubuntu

$ sudo apt install nfs-common

2.    Après avoir installé le package nfs-utils, accédez à la console EFS.

3.    Sélectionnez File systems (Systèmes de fichiers).

4.    Sélectionnez le système de fichiers que vous voulez monter.

5.    Sélectionnez Attach (Attacher).

6.    Copiez la commande sous using the NFS mount helper (utilisant l'assistant de montage de NFS).

7.    Connectez-vous à l'instance via SSH ou Session Manager et exécutez la commande que vous avez copiée à l'étape 6 :

$ 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-DNS:/   ~/efs-mount-point

-ou-

Exécutez la commande suivante pour effectuer un montage en utilisant une adresse IP :

$ sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/  ~/efs-mount-point

Remarque : modifiez les commandes précédentes selon les besoins en remplaçant l'identifiant du système de fichiers, le point de montage, le DNS, l'adresse IP, etc.

Démontage d'un système de fichiers EFS

Exécutez la commande suivante pour démonter le système de fichiers :

$ umount /mnt/efs

Si le point de montage est occupé, utilisez le paramètre -l avec la commande unmount (démonter) :

$ umount -l /mnt/efs

Montage automatique d'un système de fichiers à l'aide de /etc/fstab

Exécutez les commandes suivantes pour créer une entrée dans /etc/fstab afin que le montage EFS persiste au redémarrage :

# vim /etc/fstab

Utilisation d'efs-utils

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

Utilisation du client NFS

Modifiez les paramètres dans fstab selon les besoins de votre configuration.

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

Pour diverses options de montage à l'aide de l'assistant de montage, consultez Montage automatique d'EFS à l'aide de /etc/fstab avec l'assistant de montage EFS.

Remarque : vous pouvez monter votre système de fichiers en utilisant l'adresse IP d'une cible de montage dans une zone de disponibilité différente de celle du client (Amazon Elastic Compute Cloud (Amazon EC2)). Lorsque vous faites cela, tenez compte de facteurs tels que les frais de transfert de données entre zones de disponibilité et la latence.

Montage d'EFS lors du lancement d'une instance à l'aide de l'assistant de lancement

Lors du lancement des instances EC2, vous pouvez utiliser l'assistant de lancement pour ajouter automatiquement des données utilisateur pour le montage d'EFS.

1.    Ouvrez la console EC2.

2.    Sélectionnez Launch Instances (Lancer des instances).

3.    Sélectionnez une AMI et un type d'instance, puis sélectionnez Next: Configure Instance Details (Suivant : configurer les détails de l'instance).

4.    Configurez divers paramètres en fonction de vos besoins. Assurez-vous de sélectionner le VPC et le sous-réseau requis pour le montage d'EFS.

5.    Sur la page Configure instance (Configuration de l'instance), sous File systems (Systèmes de fichiers), choisissez le système de fichiers EFS que vous voulez monter. Le chemin indiqué à côté de l'ID du système de fichiers est le point de montage que l'instance EC2 utilisera. Vous pouvez modifier ce chemin, si nécessaire. Les données utilisateur sont automatiquement générées pour le montage d'EFS dans la section Advanced details (Détails avancés) :

#cloud-config
package_update: true
package_upgrade: true
runcmd:
- yum install -y amazon-efs-utils
- apt-get -y install amazon-efs-utils
- yum install -y nfs-utils
- apt-get -y install nfs-common
- file_system_id_1=fs-0cae1679a766bcf49
- efs_mount_point_1=/mnt/efs/fs1
- mkdir -p "${efs_mount_point_1}"
- test -f "/sbin/mount.efs" && printf "\n${file_system_id_1}:/ ${efs_mount_point_1} efs tls,_netdev\n" >> /etc/fstab || printf "\n${file_system_id_1}.efs.us-east-1.amazonaws.com:/ ${efs_mount_point_1} nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0\n" >> /etc/fstab
- test -f "/sbin/mount.efs" && grep -ozP 'client-info]\nsource' '/etc/amazon/efs/efs-utils.conf'; if [[ $? == 1 ]]; then printf "\n[client-info]\nsource=liw\n" >> /etc/amazon/efs/efs-utils.conf; fi;
- retryCnt=15; waitTime=30; while true; do mount -a -t efs,nfs4 defaults; if [ $? = 0 ] || [ $retryCnt -lt 1 ]; then echo File system mounted successfully; break; fi; echo File system not available, retrying to mount.; ((retryCnt--)); sleep $waitTime; done;>

-ou-

Pour monter l'EFS sur un AMI personnalisé ou avec des options spécifiques, ajoutez des données utilisateur personnalisées avec les commandes requises dans la section Advanced details (Détails avancés). Pour plus d'informations, consultez Exécution de commandes sur votre instance Linux au lancement.

Distributions basées sur RHEL et CentOS

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

Distributions basées sur Ubuntu

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

6.    Lancez l'instance.

Montage d'EFS sur site

Pour monter l'EFS sur vos serveurs sur site, une connectivité doit exister entre l'EFS et les serveurs sur site. Vous pouvez utiliser AWS Direct Connect et un VPN pour établir cette connectivité.

Après avoir établi la connectivité entre le serveur sur site et le VPC d'EFS, exécutez les commandes suivantes pour installer le client NFS et monter l'EFS :

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

Cet article vous a-t-il été utile ?


Avez-vous besoin d'aide pour une question technique ou de facturation ?