Direkt zum Inhalt

Wie mounte ich mein Amazon EFS-Dateisystem oder hebe das Mounten auf?

Lesedauer: 6 Minute
0

Ich möchte mein Amazon Elastic File System (Amazon EFS)-Dateisystem mounten, automatisch mounten oder ein On-Premises-Mounten durchführen. Oder ich möchte das Mounten meines EFS-Dateisystems aufheben.

Lösung

Hinweis: Um dein EFS-Dateisystem zu mounten, verwende den Amazon EFS-Client amazon-efs-utils oder das NFS-Dienstprogrammpaket nfs-utils. Weitere Informationen zum NFS-Dienstprogrammpaket findest du unter Package nfs-utils auf der Mankier-Website.

Verwende den Amazon EFS-Client, um ein Amazon EFS-Dateisystem zu mounten

Installiere den Amazon EFS-Client für deine Distribution

Um amazon-efs-utils zu installieren, führe je nach Distribution einen der folgenden Befehle aus:

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

sudo yum install -y amazon-efs-utils

AL2023 Amazon Machine Image (AMI) ohne yum:

sudo dnf install -y amazon-efs-utils

Ubuntu und 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

Hinweis: Einige Ubuntu- und Debian-Distributionen enthalten rust oder cargo nicht in ihren Paket-Repositories oder enthalten möglicherweise Versionen vor 1.70. Wenn der Befehl apt-get install aufgrund einer fehlenden oder veralteten Rust-Toolchain fehlschlägt, führe die folgenden Befehle aus, bevor du build-deb.sh ausführst:

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

OpenSUSE oder 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

Alle anderen Distributionen:

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

Verbinde dein Amazon EFS-Dateisystem mit deiner Amazon EC2-Instance

Führe die folgenden Schritte aus:

  1. Öffne die Amazon-EFS-Konsole.
  2. Wähle im Navigationsbereich Dateisysteme aus.
  3. Wähle dein EFS-Dateisystem aus.
  4. Um den Befehl Mounten anzuzeigen, wähle Anfügen.
  5. Verwende SSH oder Session Manager, eine Funktion von AWS Systems Manager, um eine Verbindung zu deiner Amazon Elastic Compute Cloud (Amazon EC2)-Instance herzustellen.
  6. Um Verzeichnisse für Mount-Punkte zu erstellen und ein EFS-Dateisystem darin zu mounten, führe die folgenden Befehle aus:
    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
    Hinweis: Ersetze fs-12345678 und fs-01233210 durch deine EFS-Dateisystem-IDs. Ersetze fsap-12345678 durch deine EFS-Zugangspunkt-ID.

Verwende das NFS-Dienstprogrammpaket, um ein Amazon EFS-Dateisystem zu mounten

Installiere das NFS-Dienstprogrammpaket für deine Distribution

Um das Paket nfs-utils zu installieren, führe je nach Distribution einen der folgenden Befehle aus:

RHEL und CentOS:

sudo yum -y install nfs-utils

Linux-Bundles, die yum nicht enthalten:

sudo dnf install -y nfs-utils

Ubuntu:

sudo apt install nfs-common

Verbinde dein Amazon EFS-Dateisystem mit deiner Amazon EC2-Instance

  1. Öffne die Amazon-EFS-Konsole.
  2. Wähle im Navigationsbereich Dateisysteme aus.
  3. Wähle dein EFS-Dateisystem aus.
  4. Um den Befehl Mounten anzuzeigen, wähle Anfügen.
  5. Verwende SSH oder Session Manager, um eine Verbindung zu deiner EC2-Instance herzustellen.
  6. Um ein EFS-Dateisystem in einem lokalen Verzeichnis einzubinden, führe die folgenden Befehle aus:
    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
    Hinweis: Ersetze mount-target-DNS durch den DNS-Namen des EFS-Mount-Ziels in deiner Virtual Private Cloud (VPC).
    Oder, um eine IP-Adresse zum Mounten des Dateisystems zu verwenden, führe den folgenden Befehl aus:
    sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/  /mnt/efs
    Hinweis: Ersetze mount-target-ip durch die IP-Adresse des EFS-Mount-Ziels in deiner VPC.

Ein Amazon EFS-Dateisystem automatisch mounten

Du kannst ein EFS-Dateisystem für laufende oder neue EC2-Instances mounten.

Laufende EC2-Instances verwenden

Wenn du bereits eine laufende EC2-Instance hast, verwende /etc/fstab, um dein EFS-Dateisystem automatisch zu mounten.

Führe die folgenden Schritte aus:

  1. Führe den folgenden Befehl aus, um den Vim-Texteditor zu starten:

    vim /etc/fstab
  2. Um dein EFS-Dateisystem beim Booten automatisch zu mounten, führe basierend auf deiner Konfiguration entweder den Befehl für den Eintragstyp efs oder den Eintragstyp nfs4 aus.
    Führe für das Paket amazon-efs-utils den folgenden Befehl aus:

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

    Führe für das Paket nfs-utils den folgenden Befehl aus:

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

    Hinweis: Ersetze fs-######## durch deine EFS-Dateisystem-ID.

  3. Führe den folgenden Befehl aus, um die Konfiguration sofort ohne Neustart anzuwenden:

    mount -a

Informationen zu Mount-Optionen, die den Mount-Helfer verwenden, findest du unter Automatically mounting EFS file systems (Automatisches Mounten von EFS-Dateisystemen).

Hinweis: Um dein EFS-Dateisystem zu mounten, kannst du die IP-Adresse eines Mount-Ziels in einer anderen Availability Zone als der Client-Instance verwenden. Bei dieser Mount-Methode können Gebühren für die Datenübertragung zwischen den Availability Zones anfallen und es kann zu Latenz kommen.

Neue EC2-Instances verwenden

Wenn du eine neue EC2-Instance erstellst, verwende den Amazon EC2 Launch Instance Wizard, um dein EFS-Dateisystem automatisch zu mounten. Führe beim Konfigurieren der EC2-Instance die folgenden Aktionen aus:

  • Wähle unter Dateisysteme dein Dateisystem aus. Der Pfad neben der Dateisystem-ID ist der Mount-Punkt, den die EC2-Instance verwendet. Du kannst diesen Pfad basierend auf deinen Anforderungen ändern.
  • Beachte, dass AWS automatisch die Benutzerdaten im Abschnitt Erweiterte Details generiert, um das EFS-Dateisystem zu mounten.
  • Wähle die Standard-Sicherheitsgruppe aus, um sicherzustellen, dass die EC2-Instance auf dein EFS-Dateisystem zugreifen kann. Um SSH-Zugriff zuzulassen, bearbeite die Standard-Sicherheitsgruppe. Füge dann eine Regel hinzu, bei der Typ auf SSH, Protokoll auf TCP, Portbereich auf 22 und Quelle auf Anywhere (0.0.0.0/0) festgelegt ist.

Oder um ein EFS-Dateisystem auf einem benutzerdefinierten AMI oder mit bestimmten Optionen zu mounten, führe die folgenden Befehle aus, um benutzerdefinierte Benutzerdaten hinzuzufügen:

RHEL und 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

Starte dann deine EC2-Instance.

Ein Amazon EFS-Dateisystem lokal (On-Premises) mounten

Um ein Amazon EFS-Dateisystem auf deinen On-Premises-Servern zu mounten, muss Konnektivität zwischen Amazon EFS und deinen On-Premises-Servern bestehen. Verwende AWS Direct Connect und AWS VPN, um die Konnektivität zwischen deinem On-Premises-Server und Amazon Virtual Private Cloud (Amazon VPC) herzustellen. Führe dann die folgenden Befehle aus, um den NFS-Client zu installieren und dein Dateisystem zu mounten:

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

Mounten eines Amazon EFS-Dateisystems aufheben

Führe den folgenden umount-Befehl aus, um das Mounten eines Dateisystems aufzuheben:

sudo umount /mnt/efs

Wenn der Mount-Punkt besetzt ist, führe den Befehl umount mit dem Parameter -l aus:

sudo umount -l /mnt/efs

Weitere Informationen

Package management tool (Tool zur Paketverwaltung)

Tutorial: Mounting with on-premises Linux clients (Mounten mit On-Premises-Linux-Clients)

Run commands when you launch an EC2 instance with user data input (Befehle ausführen, wenn du eine EC2-Instance mit Benutzerdateneingabe startest)

AWS OFFICIALAktualisiert vor 5 Monaten