Utrwalanie plików w usłudze Azure Cloud Shell

Cloud Shell używa Azure Files do utrwalania plików między sesjami. Przy początkowym uruchomieniu Cloud Shell monituje o skojarzenie nowego lub istniejącego udziału plików w celu utrwalania plików między sesjami.

Uwaga

Program Bash i program PowerShell współdzielą ten sam udział plików. Tylko jeden udział plików może być skojarzony z automatycznym instalowaniem w Cloud Shell.

Zapora usługi Azure Storage nie jest obsługiwana w przypadku kont magazynu usługi Cloud Shell.

Tworzenie nowego magazynu

Jeśli używasz ustawień podstawowych i wybierasz tylko subskrypcję, Cloud Shell tworzy trzy zasoby w Twoim imieniu w obsługiwanym regionie, który jest najbliżej Ciebie:

  • Grupa zasobów: cloud-shell-storage-<region>
  • Konto magazynu: cs<uniqueGuid>
  • Fileshare: cs-<user>-<domain>-com-<uniqueGuid>

Zrzut ekranu przedstawiający wybieranie subskrypcji dla konta magazynu.

Udział plików instaluje się tak jak clouddrive w katalogu $HOME . Jest to jednorazowa akcja, a udział plików jest automatycznie montowane w kolejnych sesjach.

Udział plików zawiera również obraz o rozmiarze 5 GB, który automatycznie utrwala dane w $HOME katalogu. Ten udział plików jest używany zarówno dla powłoki Bash, jak i programu PowerShell.

Korzystanie z istniejących zasobów

Korzystając z opcji zaawansowanej, można skojarzyć istniejące zasoby. Po wyświetleniu monitu o konfigurację magazynu wybierz pozycję Pokaż ustawienia zaawansowane , aby wyświetlić więcej opcji. Wypełnione opcje magazynu filtru dla kont magazynu lokalnie nadmiarowego (LRS), magazynu geograficznie nadmiarowego (GRS) i magazynu strefowo nadmiarowego (ZRS).

Uwaga

Korzystanie z kont magazynu GRS lub ZRS jest zalecane w celu zapewnienia dodatkowej odporności dla udziału plików kopii zapasowej. Jaki typ nadmiarowości zależy od celów i preferencji cen. Mer informasjon o opcjach replikacji dla kont usługi Azure Storage.

Zrzut ekranu przedstawiający konfigurowanie konta magazynu.

Zabezpieczanie dostępu do magazynu

W celu zapewnienia bezpieczeństwa każdy użytkownik powinien utworzyć własne konto magazynu. W przypadku kontroli dostępu opartej na rolach (RBAC) platformy Azure użytkownicy muszą mieć dostęp współautora lub wyższy na poziomie konta magazynu.

Cloud Shell używa udziału plików platformy Azure na koncie magazynu w ramach określonej subskrypcji. Ze względu na odziedziczone uprawnienia użytkownicy z wystarczającymi uprawnieniami dostępu do subskrypcji mogą uzyskiwać dostęp do wszystkich kont magazynu i udziałów plików zawartych w subskrypcji.

Użytkownicy powinni zablokować dostęp do swoich plików, ustawiając uprawnienia na koncie magazynu lub na poziomie subskrypcji.

Konto magazynu Cloud Shell zawiera pliki utworzone przez użytkownika Cloud Shell w katalogu głównym, które mogą zawierać poufne informacje, w tym tokeny dostępu lub poświadczenia.

Obsługiwane regiony magazynu

Aby znaleźć bieżący region, możesz uruchomić env w powłoce Bash i zlokalizować zmienną ACC_LOCATION, lub w programie PowerShell uruchomić polecenie $env:ACC_LOCATION. Udziały plików otrzymują obraz o rozmiarze 5 GB utworzonym do utrwalania $HOME katalogu.

Cloud Shell maszyny istnieją w następujących regionach:

Warstwowy Region (Region)
Ameryka Północna i Południowa Wschodnie stany USA, Południowo-środkowe stany USA, Zachodnie stany USA
Europa Europa Północna, Europa Zachodnia
Azja i Pacyfik Indie Środkowe, Azja Południowo-Wschodnia

Należy wybrać region spełniający twoje wymagania.

Pomocnicze regiony magazynu

Jeśli używany jest pomocniczy region magazynu, skojarzone konto magazynu platformy Azure znajduje się w innym regionie jako maszyna Cloud Shell, do której je tworzysz. Możesz na przykład ustawić, że konto magazynu będzie znajdować się w Kanadzie Wschodniej, regionie pomocniczym, ale maszyna Cloud Shell nadal znajduje się w regionie podstawowym. Dane magazynowane znajdują się w Kanadzie, ale są przetwarzane w Estados Unidos.

Uwaga

Jeśli jest używany region pomocniczy, czas dostępu do plików i uruchamiania dla Cloud Shell może być wolniejszy.

Użytkownik może uruchomić polecenie (Get-CloudDrive | Get-AzStorageAccount).Location w programie PowerShell, aby zobaczyć lokalizację udziału plików.

Ograniczanie tworzenia zasobów za pomocą zasad zasobów platformy Azure

Konta magazynu utworzone w Cloud Shell są oznaczone tagiem ms-resource-usage:azure-cloud-shell. Jeśli chcesz uniemożliwić użytkownikom tworzenie kont magazynu w Cloud Shell, utwórz zasady zasobów platformy Azure dla tagów wyzwalanych przez ten konkretny tag.

Jak działa magazyn Cloud Shell

Cloud Shell utrwala pliki za pomocą obu następujących metod:

  • Tworzenie obrazu $HOME dysku katalogu w celu utrwalonej całej zawartości w katalogu. Obraz dysku jest zapisywany w określonym udziałie plików w lokalizacji acc_<User>.img , fileshare.storage.windows.net/fileshare/.cloudconsole/acc_<User>.imga następnie automatycznie synchronizuje zmiany.
  • Instalowanie określonego udziału plików w clouddrive katalogu w $HOME celu bezpośredniej interakcji z udziałem plików. /Home/<User>/clouddrive jest mapowany na fileshare.storage.windows.net/fileshare.

Uwaga

Wszystkie pliki w $HOME katalogu, takie jak klucze SSH, są utrwalane w obrazie dysku użytkownika, który jest przechowywany w zainstalowanym udziałie plików. Zastosuj najlepsze rozwiązania podczas utrwalania informacji w $HOME katalogu i zainstalowanego udziału plików.

polecenia clouddrive

clouddrive Użyj polecenia

W Cloud Shell można uruchomić polecenie o nazwie clouddrive, które umożliwia ręczne aktualizowanie udziału plików zainstalowanego do Cloud Shell.

Zrzut ekranu przedstawiający uruchamianie polecenia clouddrive w powłoce bash.

Listy clouddrive

Aby dowiedzieć się, który udział plików jest zainstalowany jako clouddrive, uruchom df polecenie .

Ścieżka pliku do usługi clouddrive zawiera nazwę konta magazynu i udział plików w adresie URL. Na przykład //storageaccountname.file.core.windows.net/filesharename

justin@Azure:~$ df
Filesystem                                          1K-blocks   Used  Available Use% Mounted on
overlay                                             29711408 5577940   24117084  19% /
tmpfs                                                 986716       0     986716   0% /dev
tmpfs                                                 986716       0     986716   0% /sys/fs/cgroup
/dev/sda1                                           29711408 5577940   24117084  19% /etc/hosts
shm                                                    65536       0      65536   0% /dev/shm
//mystoragename.file.core.windows.net/fileshareName 5368709120    64 5368709056   1% /home/justin/clouddrive

Instalowanie nowej usługi CloudDrive

Wymagania wstępne dotyczące ręcznego instalowania

Udział plików skojarzony z Cloud Shell można zaktualizować przy użyciu clouddrive mount polecenia .

Uwaga

W przypadku instalowania nowego udziału plików dla katalogu zostanie utworzony $HOME nowy obraz użytkownika. Poprzedni $HOME obraz jest przechowywany w poprzednim udziałie plików.

clouddrive mount Uruchom polecenie z następującymi parametrami:

clouddrive mount -s mySubscription -g myRG -n storageAccountName -f fileShareName

Aby wyświetlić więcej szczegółów, uruchom polecenie clouddrive mount -h, jak pokazano tutaj:

Zrzut ekranu przedstawiający uruchamianie polecenia instalacji usługi clouddrive w powłoce bash.

Odinstalowywanie usługi CloudDrive

Możesz odinstalować udział plików zainstalowany w celu Cloud Shell w dowolnym momencie. Ponieważ Cloud Shell wymaga użycia zainstalowanego udziału plików, Cloud Shell monituje o utworzenie i zainstalowanie innego udziału plików w następnej sesji.

  1. Uruchom polecenie clouddrive unmount.
  2. Potwierdzanie i potwierdzanie monitów.

Nieinstalowany udział plików nadal istnieje do momentu jego ręcznego usunięcia. Po odinstalowaniu Cloud Shell nie wyszukuje już tego udziału plików w kolejnych sesjach. Aby wyświetlić więcej szczegółów, uruchom polecenie clouddrive unmount -h, jak pokazano tutaj:

Zrzut ekranu przedstawiający uruchamianie polecenia unmount w usłudze clouddrive w powłoce bash.

Ostrzeżenie

Mimo że uruchomienie tego polecenia nie powoduje usunięcia żadnych zasobów, ręczne usunięcie grupy zasobów, konta magazynu lub udziału plików zamapowanego na Cloud Shell wymazuje $HOME obraz dysku katalogu i wszystkie pliki z udziału plików. Tej akcji nie można cofnąć.

Polecenia specyficzne dla programu PowerShell

Wyświetlanie listy udziałów plików platformy clouddrive Azure

Polecenie Get-CloudDrive cmdlet pobiera informacje o udziałach plików platformy Azure aktualnie instalowane przez element clouddrive w Cloud Shell.

Zrzut ekranu przedstawiający uruchamianie polecenia Get-CloudDrive w programie PowerShell.

Odmontować clouddrive

Udział plików platformy Azure, który jest instalowany do Cloud Shell w dowolnym momencie, można odinstalować udział plików platformy Azure. Polecenie Dismount-CloudDrive cmdlet odinstaluje udział plików platformy Azure z bieżącego konta magazynu. Odinstalowywanie clouddrive powoduje zakończenie bieżącej sesji.

Jeśli udział plików platformy Azure został usunięty, w następnej sesji zostanie wyświetlony monit o utworzenie i zainstalowanie nowego udziału plików platformy Azure.

Zrzut ekranu przedstawiający uruchamianie polecenia Dismount-CloudDrive w programie PowerShell.

Transferowanie plików lokalnych do Cloud Shell

Katalog clouddrive jest synchronizowany z blokiem magazynu Azure-Portal. Użyj tego bloku, aby przenieść pliki lokalne do lub z udziału plików. Aktualizowanie plików z poziomu Cloud Shell jest odzwierciedlane w graficznym interfejsie użytkownika magazynu plików podczas odświeżania bloku.

Pobieranie plików z Azure-Portal

Zrzut ekranu przedstawiający listę plików lokalnych w Azure-Portal.

  1. W Azure-Portal przejdź do zainstalowanego udziału plików.
  2. Wybierz plik docelowy.
  3. Wybierz przycisk Pobierz .

Pobieranie plików w usłudze Azure Cloud Shell

  1. W sesji usługi Azure Cloud Shell wybierz ikonę Przekaż/Pobierz pliki i wybierz opcję Pobierz.

  2. W oknie dialogowym Pobieranie pliku wprowadź ścieżkę do pliku, który chcesz pobrać.

    Zrzut ekranu przedstawiający okno dialogowe pobierania w Cloud Shell.

    Można pobierać tylko pliki znajdujące się w folderze $HOME .

  3. Wybierz przycisk Pobierz .

Przekazywanie plików

Zrzut ekranu przedstawiający sposób przekazywania plików w Azure-Portal.

  1. Przejdź do zainstalowanego udziału plików.
  2. Wybierz przycisk Przekaż.
  3. Wybierz plik lub pliki, które chcesz przekazać.
  4. Potwierdź przekazanie.

Teraz powinny zostać wyświetlone pliki, które są dostępne w katalogu clouddrive w Cloud Shell.

Uwaga

Jeśli musisz zdefiniować funkcję w pliku i wywołać ją z poleceń cmdlet programu PowerShell, należy uwzględnić operator kropki. Na przykład: . .\MyFunctions.ps1

Przekazywanie plików w usłudze Azure Cloud Shell

  1. W sesji usługi Azure Cloud Shell wybierz ikonę Przekaż/Pobierz pliki i wybierz opcję Przekaż. Przeglądarka otwiera okno dialogowe pliku.
  2. Wybierz plik, który chcesz przekazać, a następnie wybierz przycisk Otwórz .

Plik jest przekazywany do katalogu głównego folderu $HOME . Plik można przenieść po przekazaniu.

Następne kroki