Udostępnij za pośrednictwem


Montowanie udziałów plików Azure NFS w systemie Linux

✔️ Dotyczy: klasyczne udziały plików NFS utworzone za pomocą dostawcy zasobów Microsoft.Storage

✔️ Dotyczy: udziały plików utworzone za pomocą dostawcy zasobów Microsoft.FileShares (wersja zapoznawcza)

Udziały plików w platformie Azure można montować w dystrybucjach systemu Linux za pomocą protokołu Server Message Block (SMB) lub protokołu Network File System (NFS). Ten artykuł koncentruje się na montażu z użyciem systemu plików NFS. Aby uzyskać szczegółowe informacje na temat instalowania udziałów plików SMB, zobacz stronę Używanie usługi Azure Files z systemem Linux. Aby uzyskać szczegółowe informacje na temat każdego z dostępnych protokołów, zobacz Protokoły udziału plików Azure.

Wymaganie wstępne: Konfigurowanie zabezpieczeń sieci

Udziały plików NFSv4.1 (zarówno klasyczne udziały plików utworzone za pomocą dostawcy zasobów Microsoft.Storage, jak i udziały plików utworzone za pomocą dostawcy zasobów Microsoft.FileShares) mogą być dostępne tylko z zaufanych sieci. Zalecamy zabezpieczenie danych przy użyciu sieci wirtualnej i innych ustawień zabezpieczeń sieci. Nie można użyć list zabezpieczeń i kontroli dostępu firmy Microsoft do autoryzowania żądań NFSv4.1. Aby dowiedzieć się więcej o sposobie konfigurowania udziałów plików NFSv4.1, zobacz jak utworzyć klasyczny udział plików i jak utworzyć udział plików.

Podłączanie zasobu plików Azure NFS

Udział można zainstalować przy użyciu pomocnika instalacji AZNFS w witrynie Azure Portal lub użyć natywnych poleceń instalacji systemu plików NFS w interfejsie wiersza polecenia. Możesz również utworzyć rekord w pliku /etc/fstab, aby automatycznie zamontować udostępniony zasób przy każdym uruchomieniu serwera lub maszyny wirtualnej z systemem Linux.

Możesz użyć opcji montowania systemu Linux nconnect, aby zwiększyć wydajność udostępnionych zasobów plikowych NFS na platformie Azure na dużą skalę. Aby uzyskać więcej informacji, zobacz Zwiększanie wydajności udziału plików platformy Azure w systemie plików NFS.

Domyślne instrukcje instalacji

Instrukcje instalacji różnią się w zależności od tego, czy utworzono udział plików NFS przy użyciu dostawcy zasobów Microsoft.Storage (klasycznego udziału plików) lub dostawcy zasobów Microsoft.FileShares (wersja zapoznawcza).

Klasyczny zasób udostępniania plików NFS (Microsoft.Storage)

Wykonaj następujące kroki, aby zainstalować klasyczny udział plików NFS.

  1. Po utworzeniu udziału plików wybierz udział, a następnie wybierz pozycję Połącz z systemem Linux.
  2. Wprowadź ścieżkę instalacji, której chcesz użyć, a następnie skopiuj skrypt i uruchom go na kliencie. Witryna Azure Portal oferuje szczegółowy, gotowy do użycia skrypt instalacji dostosowany do wybranej dystrybucji systemu Linux na potrzeby instalowania pakietu pomocnika instalacji AZNFS i bezpiecznego instalowania udziału przy użyciu szyfrowania w trakcie przesyłania. Skrypt zawiera tylko wymagane opcje instalacji, ale można dodać inne zalecane opcje instalacji.

Zrzut ekranu przedstawiający sposób nawiązywania połączenia z udziałem plików NFS z systemu Linux przy użyciu dostarczonego skryptu instalowania.

Instalowanie klasycznego udziału NFS przy użyciu instalacji klienta NFS w wierszu polecenia

Udział plików platformy Azure można również zainstalować przy użyciu instalacji klienta NFS w wierszu polecenia. Wybierz kartę poniżej dla dystrybucji systemu Linux, aby wyświetlić polecenia, które należy uruchomić. Zastąp <YourStorageAccountName> i <FileShareName> swoimi informacjami.

sudo apt-get -y update
sudo apt-get install nfs-common

sudo mkdir -p /mount/<YourStorageAccountName>/<FileShareName>
sudo mount -t nfs <YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /mount/<YourStorageAccountName>/<FileShareName> -o vers=4,minorversion=1,sec=sys,nconnect=4

Udział plików NFS (Microsoft.FileShares)

Wykonaj następujące kroki, aby zainstalować udział plików utworzony za pomocą dostawcy zasobów Microsoft.FileShares (wersja zapoznawcza).

  1. Po utworzeniu udziału plików wybierz udział, a następnie wybierz pozycję Połącz z systemem Linux.

  2. Wprowadź ścieżkę instalacji, której chcesz użyć, a następnie skopiuj skrypt i uruchom go na kliencie. Witryna Azure Portal oferuje szczegółowy, gotowy do użycia skrypt instalacji dostosowany do wybranej dystrybucji systemu Linux na potrzeby instalowania pakietu pomocnika instalacji AZNFS i bezpiecznego instalowania udziału przy użyciu szyfrowania w trakcie przesyłania. Skrypt zawiera tylko wymagane opcje instalacji, ale można dodać inne zalecane opcje instalacji.

    obraz instalacji plików mfs

Montowanie udziału NFS przy użyciu polecenia montowania klienta NFS w wierszu poleceń

Udział plików można również zamontować przy użyciu klienta NFS do montowania w linii komend. Wybierz kartę poniżej dla dystrybucji systemu Linux, aby wyświetlić polecenia, które należy uruchomić. Zastąp <your-subscription-id>, <your-resource-group> i <your-file-share-name> swoimi informacjami.

# Customize these placeholders:
# - `<your-subscription-id>` → Your Azure subscription ID.
# - `<your-resource-group>` → The resource group containing the file share.
# - `<your-file-share-name>` → The name of your file share.

# you will use $hostname later when mounting the file share.
hostName=$(az resource show \
  --ids "/subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group>/providers/Microsoft.FileShares/fileShares/<your-file-share-name>" \
  --query "properties.hostName" \
  --output tsv)
echo $hostName

# you will use shortName later when mounting the file share.
prefix=$(echo "$hostName" | sed 's/\.file\.storage\.azure\.net.*//')
shortName=$(echo "$prefix" | sed 's/\.[^.]*$//')
echo $shortName
sudo apt-get -y update
sudo apt-get install nfs-common
sudo mkdir -p /mount/<your-file-share-name>
sudo mount -t nfs $hostName:/$shortName/<your-file-share-name> /mount/<your-file-share-name> -o vers=4,minorversion=1,sec=sys

Instalowanie za pomocą /etc/fstab

Jeśli chcesz, aby udział plików NFS był automatycznie montowany przy każdym uruchomieniu serwera lub maszyny wirtualnej (VM) z systemem Linux, utwórz rekord w pliku /etc/fstab dla udziału plików Azure. Rekord będzie się różnić w zależności od tego, czy używasz pomocnika instalacji AZNFS, czy natywnych poleceń instalacji systemu plików NFS.

Aby określić, czy na kliencie jest zainstalowany pakiet pomocnika instalacji AZNFS, uruchom następujące polecenie:

systemctl is-active --quiet aznfswatchdog && echo -e "\nAZNFS Mount Helper is installed! \n"

Jeśli pakiet jest zainstalowany, zostanie wyświetlony komunikat AZNFS Mount Helper is installed! .

W przypadku klasycznego udziału plików pamiętaj, aby zastąpić <YourStorageAccountName> oraz <FileShareName> własnymi wartościami. W przypadku udziału plików pamiętaj, aby zastąpić hostName i shortName odpowiednimi wartościami. Aby uzyskać więcej informacji, wprowadź polecenie man fstab w wierszu polecenia systemu Linux.

Instalowanie za pomocą pomocnika instalacji AZNFS z szyfrowaniem podczas przesyłania

Rekord w /etc/fstab powinien wyglądać następująco, jeśli używasz pomocnika instalacji AZNFS i chcesz zainstalować udział przy użyciu szyfrowania podczas przesyłania.

# For Microsoft.Storage file share, use:
<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> aznfs defaults,sec=sys,vers=4,minorversion=1,nolock,proto=tcp,nofail,_netdev   0 2

# For Microsoft.FileShares file share, use:
$hostName:/$shortName/<FileShareName> /media/$shortName/<FileShareName> aznfs defaults,sec=sys,vers=4,minorversion=1,nolock,proto=tcp,nofail,_netdev   0 2

Montowanie za pomocą pomocnika montowania AZNFS bez szyfrowania w trakcie przesyłu

Jeśli używasz pomocnika instalacji AZNFS, ale nie chcesz używać szyfrowania podczas przesyłania, rekord w pliku /etc/fstab powinien wyglądać następująco:

# For Microsoft.Storage file share, use:
<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> aznfs defaults,sec=sys,vers=4,minorversion=1,nolock,proto=tcp,nofail,_netdev,notls   0 2

# For Microsoft.FileShares file share, use:
$hostName:/$shortName/<FileShareName> /media/$shortName/<FileShareName> aznfs defaults,sec=sys,vers=4,minorversion=1,nolock,proto=tcp,nofail,_netdev,notls   0 2

Instalowanie za pomocą natywnego polecenia instalacji

Jeśli używasz natywnego montowania NFS bez użycia systemu plików AZNFS, wpis w pliku /etc/fstab powinien wyglądać następująco:

# For Microsoft.Storage file share, use:
<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> nfs vers=4,minorversion=1,_netdev,nofail,sec=sys 0 0

# For Microsoft.FileShares file share, use:
$hostName:/$shortName/<FileShareName> /media/$shortName/<FileShareName> nfs vers=4,minorversion=1,_netdev,nofail,sec=sys 0 0

Opcje montowania

Zalecane lub wymagane są następujące opcje montowania udziałów plików Azure w systemie plików NFS.

Opcja montowania Zalecana wartość Opis
vers 4 Wymagany. Określa, która wersja protokołu NFS ma być używana. Usługa Azure Files obsługuje tylko system plików NFSv4.1.
minorversion 1 Wymagany. Określa wersję pomocniczą protokołu NFS. Niektóre dystrybucje systemu Linux nie rozpoznają mniejszych wersji z kropkami w parametrze vers. Dlatego zamiast vers=4.1, użyj polecenia vers=4,minorversion=1.
sec sys Wymagany. Określa typ zabezpieczeń do użycia podczas uwierzytelniania połączenia NFS. Ustawienie sec=sys używa lokalnych identyfikatorów UID systemu UNIX i identyfikatorów GID, które używają AUTH_SYS do uwierzytelniania operacji NFS.
rsize 1048576 Zalecane. Ustawia maksymalną liczbę bajtów, które mają być przesyłane w jednej operacji odczytu systemu plików NFS. Określenie maksymalnego poziomu 1048 576 bajtów zwykle skutkuje najlepszą wydajnością.
wsize 1048576 Zalecane. Ustawia maksymalną liczbę bajtów do przeniesienia w ramach pojedynczej operacji zapisu NFS. Określenie maksymalnego poziomu 1048 576 bajtów zwykle skutkuje najlepszą wydajnością.
noresvport nie dotyczy Zalecane dla jąder systemu poniżej wersji 5.18. Informuje klienta systemu plików NFS o użyciu nieuprzywilejowanego portu źródłowego podczas komunikacji z serwerem NFS dla punktu instalacji. Użycie opcji montowania noresvport pomaga zapewnić, że udział NFS ma niezakłóconą dostępność po ponownym połączeniu. Użycie tej opcji jest zalecane do osiągnięcia wysokiej dostępności.
actimeo 30-60 Zalecane. Określanie actimeo ustawia wszystkie wartości acregmin, , acregmaxacdirmini acdirmax na tę samą wartość. Użycie wartości niższej niż 30 sekund może spowodować obniżenie wydajności, ponieważ pamięci podręczne atrybutów dla plików i katalogów wygasają zbyt szybko. Zalecamy ustawienie actimeo między 30 a 60 sekundami.
nconnect 4 Zalecane. Nconnect zwiększa wydajność poprzez wykorzystanie wielu połączeń TCP między klientem a udziałem NFS. Zalecamy skonfigurowanie opcji instalacji przy użyciu optymalnego ustawienia nconnect=4. W chwili obecnej nie ma żadnych korzyści w implementacji nconnect dla usługi Azure Files poza czterema kanałami.
clean nie dotyczy Montowanie bez TLS może zakończyć się niepowodzeniem, jeśli wcześniejsze montowanie z TLS na tym samym serwerze zakończyło się nagle, pozostawiając przestarzałe wpisy. Aby rozwiązać ten problem, należy ponownie zainstalować udział przy użyciu clean opcji , która natychmiast czyści wszystkie nieaktualne wpisy. Dotyczy to tylko instalacji AZNFS.

Weryfikowanie łączności

Jeśli instalacja zakończy się niepowodzeniem, możliwe, że prywatny punkt końcowy nie został poprawnie skonfigurowany lub nie jest dostępny. Aby uzyskać szczegółowe informacje, zobacz Weryfikowanie łączności.

Migawki zasobów NFS

Klienci korzystający z udziałów plików Azure NFS mogą tworzyć migawki udziałów plików. Ta funkcja umożliwia użytkownikom wycofywanie całych systemów plików lub odzyskiwanie plików, które zostały przypadkowo usunięte lub uszkodzone. Zobacz Jak używać migawek udziałów w Azure Files.

Następny krok