Краткое руководство. Создание и использование общей папки SMB Azure
Статья
Файлы Azure — это простая в использовании облачная файловая система от корпорации Майкрософт. Вы можете подключить общие папки Azure SMB в операционных системах Windows, Linux и macOS. В этой статье показано, как создать общую папку Azure с помощью портал Azure, Azure CLI или Azure PowerShell.
Применяется к
Это краткое руководство относится только к общим папкам SMB Azure. Общие папки SMB уровня "Стандартный" и "Премиум" поддерживают локально избыточное хранилище (LRS) и хранилище, избыточное между зонами (ZRS). Общие папки уровня "Стандартный" также поддерживают геоизбыточное хранилище (GRS) и геоизбыточное хранилище (GZRS). Дополнительные сведения см. в разделе Файлы Azure избыточности.
Тип общей папки
SMB
NFS
Стандартные общие папки (GPv2), LRS/ZRS
Стандартные общие папки (GPv2), GRS/GZRS
Общие папки уровня "Премиум" (FileStorage), LRS/ZRS
В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.
Начало работы с Azure Cloud Shell
Вариант
Пример и ссылка
Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. При нажатии кнопки Попробовать код или команда не копируется в Cloud Shell автоматически.
Чтобы открыть Cloud Shell в браузере, перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell.
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure.
Чтобы использовать Azure Cloud Shell, выполните следующие действия:
Запустите Cloud Shell.
Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.
Вставьте код или команду в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.
Нажмите клавишу ВВОД, чтобы запустить код или команду.
Если вы хотите установить и использовать PowerShell локально, вам потребуется модуль Azure PowerShell 7.0.0 или более поздней версии. Рекомендуется установить последнюю доступную версию. Чтобы узнать, какую версию модуля Azure PowerShell вы используете, выполните команду Get-InstalledModule Az. Если вам необходимо выполнить обновление, ознакомьтесь со статьей, посвященной установке модуля Azure PowerShell. Если PowerShell запускается локально, необходимо также выполнить команду Login-AzAccount, чтобы войти в учетную запись Azure. Чтобы использовать многофакторную проверку подлинности, необходимо указать идентификатор клиента Azure, например Login-AzAccount -TenantId <TenantId>.
Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.
Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.
Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
Для работы с этой статьей требуется Azure CLI версии 2.0.4 или более поздней. Если вы используете Azure Cloud Shell, последняя версия уже установлена.
По умолчанию команды Azure CLI возвращают нотацию объектов JavaScript (JSON), которая является стандартным способом отправки и получения сообщений из REST API. Для облегчения работы с ответами в формате JSON в некоторых примерах в этой статье с командами Azure CLI используется параметр запроса. Этот параметр использует язык запросов JMESPath для синтаксического анализа JSON. Дополнительные сведения о том, как обрабатывать результаты выполнения команд Azure CLI с применением языка запросов JMESPath, см. в руководстве по JMESPath.
Учетная запись хранения — это общий пул для хранения, в котором можно развернуть файловые ресурсы Azure или другие ресурсы хранения, например большие двоичные объекты или очереди. Учетная запись хранения может содержать неограниченное число файловых ресурсов. В общем ресурсе может храниться любое число файлов, насколько это позволяет емкость учетной записи хранения.
Чтобы создать учетную запись хранения с помощью портала Azure, выполните следующие действия:
В разделе Службы Azure выберите элемент Учетные записи хранения
Нажмите кнопку +Создать , чтобы создать учетную запись хранения.
В разделе Сведения о проекте выберите подписку Azure, в которой будет создана учетная запись хранения. Если у вас только одна подписка, она должна быть подпиской по умолчанию.
Если вы хотите создать новую группу ресурсов, выберите "Создать" и введите имя, например myexamplegroup.
В разделе " Сведения об экземпляре" укажите имя учетной записи хранения. Возможно, потребуется добавить несколько случайных чисел, чтобы сделать его глобально уникальным именем. Имя учетной записи хранения может включать только символы в нижнем регистре и цифры. Его длина должна составлять от 3 до 24 символов. Запишите имя учетной записи хранения. Он понадобится вам позже.
В регионе выберите регион, в который нужно создать учетную запись хранения.
В основной службе выберите Файлы Azure.
В поле Производительность оставьте значение по умолчанию Стандартный.
В поле Избыточность выберите Локально избыточное хранилище (LRS).
Нажмите кнопку "Просмотр и создание ", чтобы просмотреть параметры. Azure выполнит окончательную проверку.
После завершения проверки щелкните Создать. Должно появиться уведомление о том, что развертывание выполняется.
Когда появится уведомление о завершении развертывания, выберите "Перейти к ресурсу".
Создание группы ресурсов с помощью PowerShell
Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими. Если у вас еще нет группы ресурсов Azure, создайте ее с помощью командлета New-AzResourceGroup. Для создания учетной записи хранения требуется группа ресурсов.
В следующем примере создается группа ресурсов с именем myResourceGroup в регионе "Западная часть США 2".
Создание учетной записи хранения с помощью PowerShell
Учетная запись хранения представляет собой общий пул носителей, который можно использовать для развертывания общих папок Azure.
В этом примере создается учетная запись хранения с помощью командлета New-AzStorageAccount. Учетная запись хранения получает имя mystorageaccount<случайное число>, и в переменной $storageAcct сохраняется ссылка на эту учетную запись. Имена учетных записей хранения должны быть уникальными. Чтобы сделать имя уникальным, добавьте к имени случайное число, выполнив команду Get-Random.
Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими. Если у вас еще нет группы ресурсов Azure, ее можно создать с помощью команды az group create. Для создания учетной записи хранения требуется группа ресурсов.
В следующем примере создается группа ресурсов с именем myResourceGroup в расположении Западная часть США 2.
export resourceGroupName="myResourceGroup"
region="westus2"
az group create \
--name $resourceGroupName \
--location $region \
--output none
Создание учетной записи хранения с помощью CLI
Учетная запись хранения представляет собой общий пул носителей, который можно использовать для развертывания общих папок Azure.
В следующем примере создается учетная запись хранения с использованием команды az storage account create. Имена учетных записей хранения должны быть уникальными. Чтобы сделать имя уникальным, добавьте к имени случайное число, выполнив команду $RANDOM.
Чтобы создать общий файловый ресурс Azure, выполните приведенные ниже действия.
Выберите учетную запись хранения на панели мониторинга.
В меню службы в разделе хранилища данных выберите общие папки.
В меню в верхней части страницы общих папок выберите + Файловый ресурс. Откроется страница Создать файловый ресурс.
В поле "Имя" введите myshare. Имена общих папок должны быть всеми буквами нижнего регистра, цифрами и отдельными дефисами, и должны начинаться и заканчиваться буквой нижнего регистра или цифрой. Имя не может содержать два последовательных дефиса. Дополнительные сведения об именовании общих папок и файлов см. в разделе Именование и ссылки на общие папки, каталоги, файлы и метаданные.
Оставьте оптимизированную транзакцию для уровня Access.
Перейдите на вкладку "Резервное копирование". По умолчанию резервное копирование включено при создании общей папки Azure с помощью портал Azure. Если вы хотите отключить резервное копирование для общей папки, снимите флажок "Включить резервное копирование ". Если вы хотите включить резервное копирование, можно оставить значения по умолчанию или создать хранилище служб восстановления в том же регионе и подписке, что и учетная запись хранения. Чтобы создать новую политику резервного копирования, нажмите кнопку "Создать новую политику".
Выберите "Просмотр и создание " и "Создать ", чтобы создать общую папку Azure.
Теперь, когда вы создали учетную запись хранения, вы можете создать свою первую общую папку Azure, используя командлет New-AzRmStorageShare. В этом примере создается файловый ресурс с именем myshare с квотой на 1024 ГиБ. Квота может быть не более 100 ТиБ.
Теперь, когда вы создали учетную запись хранения, вы можете создать первую общую папку Azure с помощью команды az storage share-rm create. В этом примере создается файловый ресурс с именем myshare с квотой на 1024 ГиБ. Квота может быть не более 100 ТиБ.
Чтобы создать каталог с именем myDirectory в корне файлового ресурса Azure, выполните команду az storage directory create:
Примечание.
Если вы не предоставляете учетные данные командам, Azure CLI запрашивает ключ учетной записи хранения. Вы также можете указать ключ учетной записи хранения с помощью команды, например переменной или --account-key $storageAccountKey обычного текста, например --account-key "your-storage-account-key-here".
Сначала необходимо создать или выбрать файл для отправки. Сделайте это независимо от того, что вы видите подходящим. Когда вы решили отправить файл, выполните следующие действия:
В меню сверху выберите Отправить. Откроется панель Отправка файлов.
Чтобы открыть окно для поиска локальных файлов, щелкните значок папки.
Выберите файл и щелкните Открыть.
На странице "Отправка файлов" проверьте имя файла и нажмите кнопку "Отправить".
После отправки файл должен отобразиться в списке на странице myDirectory.
Чтобы продемонстрировать, как отправить файл с помощью командлета Set-AzStorageFileContent, сначала необходимо создать нужный файл на временном диске PowerShell Cloud Shell.
Этот пример указывает текущую дату и время в новом файле на временном диске, а затем загружает этот файл в файловый ресурс.
# this expression will put the current date and time into a new file on your scratch drive
cd "~/CloudDrive/"
Get-Date | Out-File -FilePath "SampleUpload.txt" -Force
# this expression will upload that newly created file to your Azure file share
Set-AzStorageFileContent `
-Context $storageAcct.Context `
-ShareName $shareName `
-Source "SampleUpload.txt" `
-Path "myDirectory\SampleUpload.txt"
При работе в PowerShell локально ~/CloudDrive/ следует заменить путем, который имеется на вашем компьютере.
После отправки файла можно использовать командлет Get-AzStorageFile , чтобы убедиться, что файл был отправлен в общую папку Azure.
Чтобы продемонстрировать передачу файла с помощью команды az storage file upload, сначала создайте файл для отправки на временном диске Cloud Shell. В следующем примере создается, а затем отправляется файл.
cd ~/clouddrive/
date > SampleUpload.txt
az storage file upload \
--account-name $storageAccountName \
--share-name $shareName \
--source "SampleUpload.txt" \
--path "myDirectory/SampleUpload.txt"
При работе в Azure CLI локально следует заменить ~/clouddrive путем, который имеется на вашем компьютере.
После отправки файла можно с помощью команды az storage file list убедиться, что файл отправлен в общую папку Azure:
az storage file list \
--account-name $storageAccountName \
--share-name $shareName \
--path "myDirectory" \
--output table
Вы можете скачать копию отправленного файла, щелкнув этот файл правой кнопкой мыши и выбрав Скачать. Дальнейшие действия будут зависеть от используемой операционной системы и браузера.
С помощью командлета Get-AzStorageFileContent вы можете скачать копию только что отправленного файла на временный диск Cloud Shell.
# Delete an existing file by the same name as SampleDownload.txt, if it exists because you've run this example before.
Remove-Item `
-Path "SampleDownload.txt" `
-Force `
-ErrorAction SilentlyContinue
Get-AzStorageFileContent `
-Context $storageAcct.Context `
-ShareName $shareName `
-Path "myDirectory\SampleUpload.txt" `
-Destination "SampleDownload.txt"
Скачав файл, вы можете использовать Get-ChildItem командлет, чтобы увидеть, что файл был скачан на жесткий диск PowerShell Cloud Shell.
С помощью команды az storage file download можно скачать копию файла, ранее отправленного на временный диск Cloud Shell:
# Delete an existing file by the same name as SampleDownload.txt, if it exists, because you've run this example before
rm -f SampleDownload.txt
az storage file download \
--account-name $storageAccountName \
--share-name $shareName \
--path "myDirectory/SampleUpload.txt" \
--dest "./SampleDownload.txt" \
--output none
По завершении работы с руководством удалите группу ресурсов. Удаление группы ресурсов удаляет учетную запись хранения, общую папку Azure и все другие ресурсы, развернутые в группе ресурсов.
Если в учетной записи хранения есть блокировки, сначала их нужно удалить. Перейдите к учетной записи хранения и выберите "Блокировки параметров>". Если перечислены какие-либо блокировки, удалите их.
Прежде чем удалить группу ресурсов, может потребоваться удалить хранилище служб восстановления Azure Backup.
Выберите Главная, а затем Группы ресурсов.
Выберите группу ресурсов, которую нужно удалить.
Выберите команду Удалить группу ресурсов. Откроется окно с предупреждением о ресурсах, которые будут удалены вместе с группой ресурсов.
Введите имя группы ресурсов и выберите Удалить.
По завершении можно использовать командлет Remove-AzResourceGroup для удаления группы ресурсов и всех ресурсов, содержащихся в группе ресурсов.
Remove-AzResourceGroup -Name myResourceGroup
По завершении можно удалить группу ресурсов и все ресурсы, содержащиеся в группе ресурсов, с помощью az group delete команды: