Korzystanie z zewnętrznego magazynu plików w usługach Azure Lab Services
Uwaga
W tym artykule odwołuje się do systemu CentOS — dystrybucji systemu Linux, która zbliża się do stanu zakończenia życia (EOL). Rozważ odpowiednie użycie i planowanie. Aby uzyskać więcej informacji, zobacz wskazówki dotyczące zakończenia życia systemu CentOS.
W tym artykule opisano niektóre opcje korzystania z zewnętrznego magazynu plików w usługach Azure Lab Services. Usługa Azure Files oferuje w pełni zarządzane udziały plików w chmurze, dostępne za pośrednictwem protokołu SMB 2.1 i SMB 3.0. Udział usługi Azure Files można połączyć publicznie lub prywatnie w sieci wirtualnej. Można również skonfigurować udział tak, aby używał poświadczeń usługi Active Directory użytkownika laboratorium do nawiązywania połączenia z udziałem plików. Jeśli korzystasz z maszyny z systemem Linux, możesz również użyć usługi Azure NetApp Files z woluminami NFS na potrzeby zewnętrznego magazynu plików w usłudze Azure Lab Services.
Którego rozwiązania należy użyć
W poniższej tabeli wymieniono ważne zagadnienia dotyczące każdego rozwiązania magazynu zewnętrznego.
Rozwiązanie | Ważne, aby wiedzieć |
---|---|
Udostępnianie usługi Azure Files z publicznym punktem końcowym |
|
Udostępnianie usługi Azure Files z prywatnym punktem końcowym |
|
Usługa Azure NetApp Files z woluminami NFS |
|
Koszt korzystania z magazynu zewnętrznego nie jest uwzględniany w kosztach korzystania z usług Azure Lab Services. Aby uzyskać więcej informacji na temat cen, zobacz Cennik usługi Azure Files i Cennik usługi Azure NetApp Files.
Udział usługi Azure Files
Dostęp do udziałów usługi Azure Files jest uzyskiwany przy użyciu publicznego lub prywatnego punktu końcowego. Udziały można zainstalować na maszynie wirtualnej przy użyciu klucza konta magazynu jako hasła. Dzięki takiemu podejściu wszyscy mają dostęp do odczytu i zapisu do udziału plików.
Domyślnie standardowe udziały plików mogą obejmować maksymalnie 5 TiB. Zobacz Tworzenie udziału plików platformy Azure, aby uzyskać informacje na temat tworzenia udziałów plików obejmujących maksymalnie 100 TiB.
Zagadnienia dotyczące korzystania z publicznego punktu końcowego
- Sieć wirtualna konta magazynu nie musi być połączona z siecią wirtualną laboratorium. Udział plików można utworzyć w dowolnym momencie przed opublikowaniem maszyny wirtualnej szablonu.
- Dostęp do udziału plików można uzyskać z dowolnego komputera, jeśli użytkownik ma klucz konta magazynu.
- Użytkownicy laboratorium systemu Linux widzą klucz konta magazynu. Poświadczenia instalowania udziału usługi Azure Files są przechowywane na
{file-share-name}.cred
maszynach wirtualnych z systemem Linux i są odczytywane przez program sudo. Ponieważ użytkownicy laboratorium domyślnie otrzymują dostęp sudo na maszynach wirtualnych usługi Azure Lab Services, mogą odczytać klucz konta magazynu. Jeśli punkt końcowy konta magazynu jest publiczny, użytkownicy laboratorium mogą uzyskać dostęp do udziału plików poza maszyną wirtualną laboratorium. Rozważ rotację klucza konta magazynu po zakończeniu klasy lub przy użyciu prywatnych udziałów plików.
Zagadnienia dotyczące korzystania z prywatnego punktu końcowego
- Takie podejście wymaga połączenia sieci wirtualnej udziału plików z laboratorium. Aby włączyć zaawansowane sieci dla laboratoriów, zobacz Połączenie do sieci wirtualnej w usłudze Azure Lab Services przy użyciu iniekcji sieci wirtualnej. Podczas tworzenia planu laboratorium należy wykonać iniekcję sieci wirtualnej.
- Dostęp jest ograniczony do ruchu pochodzącego z sieci prywatnej i nie można uzyskać do tego dostępu za pośrednictwem publicznego Internetu. Tylko maszyny wirtualne w prywatnej sieci wirtualnej, maszyny wirtualne w sieci równorzędnej z prywatną siecią wirtualną lub maszyny połączone z siecią VPN dla sieci prywatnej mogą uzyskiwać dostęp do udziału plików.
- Użytkownicy laboratorium systemu Linux widzą klucz konta magazynu. Poświadczenia instalowania udziału usługi Azure Files są przechowywane na
{file-share-name}.cred
maszynach wirtualnych z systemem Linux i są odczytywane przez program sudo. Ponieważ użytkownicy laboratorium domyślnie otrzymują dostęp sudo na maszynach wirtualnych usługi Azure Lab Services, mogą odczytać klucz konta magazynu. Rozważ rotację klucza konta magazynu po zakończeniu klasy.
Połączenie maszyny wirtualnej laboratorium do udziału plików platformy Azure
Wykonaj następujące kroki, aby utworzyć maszynę wirtualną połączoną z udziałem plików platformy Azure.
Utwórz konto usługi Azure Storage. Na stronie metody Połączenie ivity wybierz publiczny punkt końcowy lub prywatny punkt końcowy.
Jeśli wybrano metodę prywatną , utwórz prywatny punkt końcowy , aby udziały plików były dostępne z sieci wirtualnej.
Utwórz udział plików platformy Azure. Udział plików jest osiągalny przez publiczną nazwę hosta konta magazynu, jeśli używasz publicznego punktu końcowego. Udział plików jest osiągalny przez prywatny adres IP, jeśli korzystasz z prywatnego punktu końcowego.
Zainstaluj udział plików platformy Azure na maszynie wirtualnej szablonu:
- Windows
- Linux. Aby uniknąć problemów z instalowaniem maszyn wirtualnych laboratorium, zobacz sekcję Używanie usługi Azure Files z systemem Linux .
Publikowanie maszyny wirtualnej szablonu.
Ważne
Upewnij się, że zapora Windows Defender nie blokuje wychodzącego połączenia SMB za pośrednictwem portu 445. Domyślnie protokół SMB jest dozwolony dla maszyn wirtualnych platformy Azure.
Korzystanie z usługi Azure Files w systemie Linux
Jeśli użyjesz domyślnych instrukcji instalacji udziału usługi Azure Files, udział plików prawdopodobnie zniknie na maszynach wirtualnych laboratorium po opublikowaniu szablonu. Poniższy zmodyfikowany skrypt rozwiązuje ten problem.
W przypadku udziału plików z publicznym punktem końcowym:
#!/bin/bash
# Assign variables values for your storage account and file share
STORAGE_ACCOUNT_NAME=""
STORAGE_ACCOUNT_KEY=""
FILESHARE_NAME=""
# Do not use 'mnt' for mount directory.
# Using ‘mnt’ will cause issues on lab VMs.
MOUNT_DIRECTORY="prm-mnt"
sudo mkdir /$MOUNT_DIRECTORY/$FILESHARE_NAME
if [ ! -d "/etc/smbcredentials" ]; then
sudo mkdir /etc/smbcredentials
fi
if [ ! -f "/etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred" ]; then
sudo bash -c "echo ""username=$STORAGE_ACCOUNT_NAME"" >> /etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred"
sudo bash -c "echo ""password=$STORAGE_ACCOUNT_KEY"" >> /etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred"
fi
sudo chmod 600 /etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred
sudo bash -c "echo ""//$STORAGE_ACCOUNT_NAME.file.core.windows.net/$FILESHARE_NAME /$MOUNT_DIRECTORY/$FILESHARE_NAME cifs nofail,vers=3.0,credentials=/etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred,dir_mode=0777,file_mode=0777,serverino"" >> /etc/fstab"
sudo mount -t cifs //$STORAGE_ACCOUNT_NAME.file.core.windows.net/$FILESHARE_NAME /$MOUNT_DIRECTORY/$FILESHARE_NAME -o vers=3.0,credentials=/etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred,dir_mode=0777,file_mode=0777,serverino
W przypadku udziału plików z prywatnym punktem końcowym:
#!/bin/bash
# Assign variables values for your storage account and file share
STORAGE_ACCOUNT_NAME=""
STORAGE_ACCOUNT_IP=""
STORAGE_ACCOUNT_KEY=""
FILESHARE_NAME=""
# Do not use 'mnt' for mount directory.
# Using ‘mnt’ will cause issues on lab VMs.
MOUNT_DIRECTORY="prm-mnt"
sudo mkdir /$MOUNT_DIRECTORY/$FILESHARE_NAME
if [ ! -d "/etc/smbcredentials" ]; then
sudo mkdir /etc/smbcredentials
fi
if [ ! -f "/etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred" ]; then
sudo bash -c "echo ""username=$STORAGE_ACCOUNT_NAME"" >> /etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred"
sudo bash -c "echo ""password=$STORAGE_ACCOUNT_KEY"" >> /etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred"
fi
sudo chmod 600 /etc/smbcredentials/$storage_account_name.cred
sudo bash -c "echo ""//$STORAGE_ACCOUNT_IP/$FILESHARE_NAME /$MOUNT_DIRECTORY/$fileshare_name cifs nofail,vers=3.0,credentials=/etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred,dir_mode=0777,file_mode=0777,serverino"" >> /etc/fstab"
sudo mount -t cifs //$STORAGE_ACCOUNT_NAME.file.core.windows.net/$FILESHARE_NAME /$MOUNT_DIRECTORY/$FILESHARE_NAME -o vers=3.0,credentials=/etc/smbcredentials/$STORAGE_ACCOUNT_NAME.cred,dir_mode=0777,file_mode=0777,serverino
Jeśli maszyna wirtualna szablonu, która instaluje udział usługi Azure Files w /mnt
katalogu, jest już opublikowana, użytkownik laboratorium może:
- Przenieś instrukcję, aby zainstalować
/mnt
na początku/etc/fstab
pliku. - Zmodyfikuj instrukcję, aby zainstalować
/mnt/{file-share-name}
plik w innym katalogu, na przykład/prm-mnt/{file-share-name}
.
Użytkownicy laboratorium powinni uruchomić polecenie mount -a
, aby ponownie zainstalować katalogi.
Aby uzyskać więcej ogólnych informacji, zobacz Używanie usługi Azure Files z systemem Linux.
Usługa Azure NetApp Files z woluminami NFS
Azure NetApp Files to usługa magazynu plików klasy korporacyjnej o wysokiej wydajności.
- Ustawianie zasad dostępu dla poszczególnych woluminów
- Zasady uprawnień są oparte na adresach IP dla każdego woluminu
- Jeśli użytkownicy laboratorium potrzebują własnego woluminu, do którego inni użytkownicy laboratorium nie mają dostępu, zasady uprawnień muszą zostać przypisane po opublikowaniu laboratorium
- Usługa Azure Lab Services obsługuje tylko maszyny wirtualne laboratorium oparte na systemie Linux w celu nawiązania połączenia z usługą Azure NetApp Files
- Sieć wirtualna dla puli pojemności usługi Azure NetApp Files musi być połączona z laboratorium. Aby włączyć zaawansowane sieci dla laboratoriów, zobacz Połączenie do sieci wirtualnej w usłudze Azure Lab Services przy użyciu iniekcji sieci wirtualnej. Podczas tworzenia planu laboratorium należy wykonać iniekcję sieci wirtualnej.
Aby użyć udziału usługi Azure NetApp Files w usługach Azure Lab Services:
Utwórz pulę pojemności usługi Azure NetApp Files i co najmniej jeden wolumin NFS, wykonując kroki opisane w temacie Konfigurowanie woluminu usługi Azure NetApp Files i NFS.
Aby uzyskać informacje na temat poziomów usług, zobacz Poziomy usług dla usługi Azure NetApp Files.
Na maszynie wirtualnej szablonu zainstaluj składniki niezbędne do korzystania z udziałów plików NFS.
Ubuntu:
sudo apt update sudo apt install nfs-common
Centos:
sudo yum install nfs-utils
Na maszynie wirtualnej szablonu zapisz następujący skrypt,
mount_fileshare.sh
aby zainstalować udział usługi Azure NetApp Files.Przypisz zmienną
capacity_pool_ipaddress
docelowy adres IP instalacji dla puli pojemności. Uzyskaj instrukcje instalacji dla woluminu, aby znaleźć odpowiednią wartość. Skrypt oczekuje nazwy ścieżki woluminu usługi Azure NetApp Files.Aby upewnić się, że użytkownicy mogą uruchomić skrypt, uruchom polecenie
chmod u+x mount_fileshare.sh
.#!/bin/bash if [ $# -eq 0 ]; then echo "Must provide volume name." exit 1 fi VOLUME_NAME=$1 CAPACITY_POOL_IP_ADDR=0.0.0.0 # IP address of capacity pool # Do not use 'mnt' for mount directory. # Using ‘mnt’ might cause issues on lab VMs. MOUNT_DIRECTORY="prm-mnt" sudo mkdir -p /$MOUNT_DIRECTORY sudo mkdir /$MOUNT_DIRECTORY/$FOLDER_NAME sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp $CAPACITY_POOL_IP_ADDR:/$VOLUME_NAME /$MOUNT_DIRECTORY/$VOLUME_NAME sudo bash -c "echo ""$CAPACITY_POOL_IP_ADDR:/$VOLUME_NAME /$MOUNT_DIRECTORY/$VOLUME_NAME nfs bg,rw,hard,noatime,nolock,rsize=65536,wsize=65536,vers=3,tcp,_netdev 0 0"" >> /etc/fstab"
Jeśli wszyscy użytkownicy laboratorium udostępniają dostęp do tego samego woluminu usługi Azure NetApp Files, możesz uruchomić
mount_fileshare.sh
skrypt na maszynie szablonu przed opublikowaniem. Jeśli użytkownicy laboratorium otrzymają własny wolumin, zapisz skrypt do uruchomienia później przez użytkownika laboratorium.Publikowanie maszyny wirtualnej szablonu.
Skonfiguruj zasady dla udziału plików.
Zasady eksportu mogą zezwalać na dostęp do woluminu jednej maszyny wirtualnej lub wielu maszyn wirtualnych. Możesz udzielić dostępu tylko do odczytu lub odczytu/zapisu.
Użytkownicy laboratorium muszą uruchomić maszynę wirtualną i uruchomić skrypt, aby zainstalować udział plików. Muszą uruchamiać skrypt tylko raz.
Polecenie wygląda następująco:
./mount_fileshare.sh myvolumename
.
Następne kroki
- Dowiedz się, jak utworzyć laboratorium na potrzeby szkolenia na potrzeby zajęć
- Rozpocznij pracę, wykonując kroki opisane w przewodniku Szybki start: tworzenie laboratorium i nawiązywanie z nią połączenia
- Tworzenie szablonu i zarządzanie nim
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla