Поделиться через


Используйте моментальные снимки общего доступа с Azure Files

Azure Files позволяет создавать моментальные снимки общих папок SMB и NFS. Моментальные снимки фиксируют состояние общей папки на определенный момент времени. В этой статье описываются возможности, предоставляемые моментальными снимками общей папки, и способы их использования для восстановления предыдущих версий файлов.

Внимание

Моментальные снимки файлового ресурса обеспечивают защиту только на уровне файлов. Они не препятствуют удалению жировых пальцев в общей папке или учетной записи хранения. Чтобы защитить учетную запись хранения от случайного удаления, можно включить обратимое удаление или заблокировать учетную запись хранения и (или) группу ресурсов.

Применяется к

Модель управления Модель выставления счетов Уровень медиа Избыточность малый и средний бизнес NFS
Microsoft.Storage Настроенная версия 2 HDD (стандартный) Локальное (LRS) Да Нет
Microsoft.Storage Настроенная версия 2 HDD (стандартный) Зона (ZRS) Да Нет
Microsoft.Storage Настроенная версия 2 HDD (стандартный) Гео (GRS) Да Нет
Microsoft.Storage Настроенная версия 2 HDD (стандартный) GeoZone (GZRS) Да Нет
Microsoft.Storage Настроенная версия v1 SSD (премиум) Локальное (LRS) Да Да
Microsoft.Storage Настроенная версия v1 SSD (премиум) Зона (ZRS) Да Да
Microsoft.Storage Оплата по мере использования HDD (стандартный) Локальное (LRS) Да Нет
Microsoft.Storage Оплата по мере использования HDD (стандартный) Зона (ZRS) Да Нет
Microsoft.Storage Оплата по мере использования HDD (стандартный) Гео (GRS) Да Нет
Microsoft.Storage Оплата по мере использования HDD (стандартный) GeoZone (GZRS) Да Нет

Когда следует использовать снимки общего доступа

Защита от ошибок приложения и повреждения данных

Приложения, использующие файловые ресурсы, выполняют операции, такие как запись, чтение, хранение, передача и обработка. Если приложение неправильно настроено или возникнет непреднамеренная ошибка, вы можете случайно перезаписать или повредить несколько блоков. Чтобы помочь защититься от таких сценариев, можно сделать снимок общего ресурса перед развертыванием нового кода приложения. Если в результате нового внедрения появляется ошибка или сбой в приложении, можно вернуться к предыдущей версии ваших данных на этом файловом хранилище.

Защита от случайного удаления или нежелательных изменений

Предположим, что вы работаете над текстовым файлом, расположенным в общем доступе. Закрыв текстовый файл, вы теряете возможность откатить изменения. В таких случаях необходимо восстановить предыдущую версию файла. Вы можете воспользоваться моментальными снимками общего доступа, чтобы восстановить предыдущие версии файла, если он случайно переименован или удален.

Общие цели архивации

После создания файл-шары можно периодически создавать её моментальные снимки для резервного копирования данных. Создаваемый периодически моментальный снимок файловых ресурсов позволяет поддерживать предыдущие версии данных, которые могут использоваться для аудита или аварийного восстановления. Рекомендуем использовать резервное копирование хранилища файлов Azure для создания и управления моментальными снимками. Вы также можете самостоятельно создавать моментальные снимки и управлять ими, используя портал Azure, Azure PowerShell или Azure CLI.

Возможности

Моментальный снимок общего ресурса — это копия данных на определенный момент времени, предназначенная только для чтения. Возможность совместного доступа к моментальным снимкам предоставляется на уровне файловых ресурсов. Извлечение предоставляется на уровне отдельных файлов, чтобы позволить восстановление отдельных файлов. Моментальные снимки общего ресурса имеют ту же избыточность, что и соответствующий общий файловый ресурс Azure. При выборе георедуктантного хранилища для своей учетной записи моментальный снимок общего доступа также будет храниться дублировано в парном регионе.

Вы можете восстановить полную общую папку с помощью SMB, NFS, REST API, портал Azure, клиентской библиотеки или PowerShell/CLI. Вы можете просматривать моментальные снимки общей папки с помощью REST API, SMB или NFS. Вы можете извлечь список версий каталога или файла, а также подключить определенную версию напрямую в качестве диска (доступно только в Windows — см. Ограничения).

После создания моментального снимка общего ресурса его можно читать, копировать или удалять, но нельзя изменять. Вы не можете скопировать весь снимок состояния общего доступа на другую учетную запись хранения. Вам нужно выполнять это для каждого файла с помощью AzCopy или других механизмов копирования.

Моментальный снимок файловой папки идентичен базовой файловой папке. Единственным отличием является то, что к URI общей ссылки добавляется значение DateTime, чтобы указать время создания моментального снимка. Например, если URI общего ресурса — https://storagesample.file.core.windows.net/myshare, то URI моментального снимка этого ресурса будет иметь такой вид:

https://storagesample.file.core.windows.net/myshare?sharesnapshot=2024-12-09T17:44:51.0000000Z

Снимки общего доступа сохраняются до тех пор, пока они не будут явно удалены или пока не будет удалена общая файловая площадка. Вы не можете удалить объект общего доступа и сохранить снимки состояния общего доступа. Рабочий процесс удаления автоматически удаляет моментальные снимки, когда вы удаляете расшаренную папку. Вы можете перечислить моментальные снимки, связанные с базовым файловым хранилищем, чтобы отслеживать текущие снимки.

При создании моментального снимка файлового ресурса файлы в системных свойствах файлового ресурса копируются в моментальный снимок файлового ресурса с такими же значениями. Метаданные основных файлов и файловых хранилищ также копируются в моментальный снимок общего ресурса, если только вы не укажете отдельные метаданные для моментального снимка при его создании.

Использование пространства

По своей природе моментальные снимки являются инкрементными. Сохраняются только те данные, которые изменились после вашего последнего моментального снимка. Это сводит к минимуму время, необходимое для создания моментального снимка общей папки, и экономит затраты на хранение данных, так как плата взимается только за измененное содержимое. Все операции записи в объект или свойство, или операции обновления метаданных считаются измененным содержимым и хранятся в моментальном снимке файлового ресурса.

Чтобы сэкономить место, можно удалить моментальный снимок файлового ресурса за период, когда изменчивость данных была наибольшей.

Несмотря на то, что моментальные снимки общего ресурса сохраняются инкрементально, вам нужно хранить только самый последний моментальный снимок, чтобы восстановить общий ресурс. При удалении моментального снимка удаляются только данные, уникальные для этого снимка. Активные моментальные снимки содержат все сведения, необходимые для просмотра и восстановления данных (с момента создания моментального снимка общего ресурса) в исходное или другое расположение. Восстановление может быть выполнено на уровне элементов.

Моментальные снимки не учитываются в отношении максимального ограничения размера общей папки 100 ТиБ. Нет ограничений на общий объем пространства, занимаемого моментальными снимками общей папки, или на объем, который моментальные снимки конкретной общей папки могут использовать. Ограничения учетной записи хранения по-прежнему применяются.

Ограничения

Максимальное количество моментальных снимков, которое допускается для файловых долей Azure, составляет 200 на одну файловую долю. После создания 200 моментальных снимков общего ресурса необходимо удалить старые моментальные снимки, чтобы создать новые. Моментальные снимки можно хранить до 10 лет.

Нет ограничений на одновременные вызовы для создания моментальных снимков.

Поддерживаются только API управления файлами (AzRmStorageShare) для резервных копий в Azure NFS. API передачи данных файлов (AzStorageShare) не поддерживаются.

Копирование данных из моментального снимка обратно в общий ресурс

Операции копирования, которые включают файлы и снимки общих ресурсов, подчиняются следующим правилам:

Можно скопировать отдельные файлы из моментального снимка файлового ресурса в его основной ресурс или в любое другое место. Вы можете восстановить более раннюю версию файла или полностью весь файловый ресурс, копируя файлы по отдельности из моментального снимка ресурса. Снимок состояния общего ресурса не преобразован в базовый общий ресурс.

Моментальный снимок ресурса остается неизменным после копирования, но базовый файловый ресурс перезаписывается копией данных, доступных в моментальном снимке ресурса. Все восстановленные файлы считаются измененным содержимым.

Можно скопировать файл из моментального снимка файла общего доступа в другое место под другим именем. Полученный конечный файл является записываемым файлом, а не моментальным снимком. В данном случае ваша базовая общая папка не затрагивается.

Если конечный файл перезаписывается с помощью копии, любые моментальные снимки, связанные с исходным конечным файлом, остаются неизменными.

Общие рекомендации

Автоматизируйте резервные копии для восстановления данных всякий раз, когда это возможно. Автоматические действия более надежны, чем ручные процессы и помогают улучшить защиту данных и возможности восстановления. Вы можете использовать резервное копирование файловых ресурсов Azure (только для файловых ресурсов SMB), REST API, клиентский пакет SDK или скрипты для автоматизации.

Перед развертыванием планировщика моментальных снимков файлового ресурса тщательно продумайте частоту и период хранения моментальных снимков, чтобы избежать ненужных расходов.

Моментальные снимки общих папок SMB

Клиенты, использующие общие папки SMB Azure, могут создавать, перечислять, удалять и восстанавливать их из моментальных снимков общих папок.

Создание снимка состояния общей папки SMB

Вы можете создать моментальный снимок общей папки SMB Azure с помощью портала Azure, Azure PowerShell или Azure CLI.

Чтобы создать моментальный снимок существующей общей папки, войдите в портал Azure и выполните следующие действия.

  1. На портале перейдите к общей папке.

  2. Выберите моментальные снимки, а затем нажмите кнопку "Добавить моментальный снимок " и " ОК".

    Снимок экрана вкладки

Список моментальных снимков файловых ресурсов SMB

Вы можете перечислить все моментальные снимки для файлового хранилища с помощью портала Azure, Azure PowerShell или Azure CLI.

Чтобы получить список всех моментальных снимков для существующей общей папки, войдите в портал Azure и выполните следующие действия.

  1. На портале перейдите к общей папке.

  2. В вашем файловом хранилище выберите Моментальные снимки.

  3. На вкладке "Моментальные снимки" выберите моментальный снимок из списка.

    Снимок экрана: вкладка

  4. Откройте этот моментальный снимок для просмотра файлов, которые он содержит.

Восстановление из моментального снимка общей папки SMB

Чтобы восстановить файлы из моментального снимка, войдите в портал Azure и выполните следующие действия.

  1. На портале перейдите к общей папке.

  2. На вашем совместном хранилище выберите Снимки.

  3. На вкладке моментального снимка общей папки щелкните правой кнопкой мыши файл, который требуется восстановить, и нажмите кнопку "Восстановить ".

    Снимок экрана вкладки моментального снимка: выбран qstestfile, функция восстановления выделена.

  4. Нажмите кнопку "Перезаписать исходный файл " и нажмите кнопку "ОК".

    Снимок экрана: всплывающее окно с опцией восстановления, выбрано перезаписать исходный файл.

Теперь неизмененную версию файла необходимо восстановить.

Удаление моментальных снимков общих папок SMB

Существующие моментальные снимки общего доступа никогда не перезаписываются. Их необходимо удалить явным образом. Снимки общего доступа можно удалить с помощью портала Azure, Azure PowerShell или Azure CLI.

Прежде чем удалить снимок разделяемого ресурса, необходимо снять все блокировки на учетной записи хранения. Перейдите к учетной записи для хранения данных и выберите Параметры>Блокировки. Если перечислены какие-либо блокировки, удалите их.

Чтобы удалить моментальный снимок существующего файлового хранилища, войдите в портал Azure и выполните следующие действия.

  1. В поле поиска в верхней части портала Azure введите и выберите аккаунты хранения.

  2. Выберите учетную запись хранения, содержащую общую папку, для которой требуется удалить моментальные снимки.

  3. Выберите элементы Хранение данных>Общие папки.

  4. Выберите файловый ресурс, для которого требуется удалить один или несколько моментальных снимков, а затем выберите Операции>Моментальные снимки. Будут перечислены все существующие моментальные снимки для общей папки.

  5. Выберите моментальные снимки, которые нужно удалить, и нажмите кнопку "Удалить".

    Снимок экрана: вкладка

Использование файлового снимка общей папки SMB в Windows

Как и при использовании локальных моментальных снимков теневого копирования томов (VSS), вы можете просматривать моментальные снимки из подключенной общей папки Azure с помощью вкладки "Предыдущие версии" в Windows.

  1. В проводнике перейдите в подключенную общую папку.

    Снимок экрана подключенной общей папки в Проводнике.

  2. Перейдите к элементу или родительскому элементу, который требуется восстановить. Щелкните правой кнопкой мыши и выберите в меню пункт Свойства.

    Снимок экрана: меню правой кнопкой мыши для выбранного каталога.

  3. Выберите пункт Предыдущие версии, чтобы просмотреть список моментальных снимков общего доступа для этого каталога.

  4. Чтобы открыть моментальный снимок, выберите Открыть.

    Снимок экрана: вкладка

  5. Выберите Восстановить. Это действие копирует содержимое всего каталога рекурсивно в то исходное местоположение, которое было на момент создания моментального снимка.

    Снимок экрана: вкладка

    Примечание.

    Если файл не изменился, вы не увидите предыдущую версию этого файла, так как этот файл является той же версией, что и моментальный снимок. Это схоже с принципом работы на файловом сервере Windows.

Подключение снимка состояния файлового ресурса SMB в Linux

Если вы хотите подключить определенный снимок состояния общей папки SMB Azure в Linux, необходимо указать параметр snapshot в составе команды mount, где snapshot указано время создания конкретного снимка в формате, таком как @GMT-2023.01.05-00.08.20. Этот snapshot параметр поддерживается в ядре Linux с версии 4.19.

После создания моментального снимка общей папки следуйте этим инструкциям, чтобы подключить его.

  1. В портале Azure перейдите к учетной записи хранилища, содержащей файловое хранилище, моментальный снимок которого вы хотите монтировать.

  2. Выберите Хранилище данных > Общие папки и выберите общую папку.

  3. Выберите операции моментальных снимков > и обратите внимание на имя моментального снимка, который вы хотите подключить. Имя моментального снимка будет временной меткой GMT, как видно на снимке экрана ниже.

    Снимок экрана, показывающий, как найти имя моментального снимка файлового ресурса и метку времени в портале Azure.

  4. Преобразуйте метку времени в формат, ожидаемый mount командой, которая составляет @GMT-year.month.day-hour.minutes.seconds. В этом примере вы преобразуете 2023-01-05T00:08:20.000000Z в @GMT-2023.01.05-00.08.20.

  5. mount Выполните команду, используя время GMT, чтобы указать snapshot значение. Обязательно замените <storage-account-name>, <file-share-name>, и метку времени GMT своими значениями. ".cred" файл содержит учетные данные, используемые для подключения к общей папке.

    sudo mount -t cifs //<storage-account-name>.file.core.windows.net/<file-share-name> /media/<file-share-name>/snapshot1 -o credentials=/etc/smbcredentials/snapshottestlinux.cred,[email protected]
    
  6. Если вы можете просмотреть снимок в пути /media/<file-share-name>/snapshot1, то подключение выполнено успешно.

Если монтирование завершается сбоем, см. статью «Устранение неполадок с подключением и доступом к файлам Azure (SMB)».

Моментальные снимки общего доступа к файлам NFS

Клиенты, использующие общие файлы NFS Azure, могут создавать, просматривать, удалять и восстанавливать из снимков общих ресурсов.

Внимание

Перед созданием моментальных снимков необходимо подключить общую папку. Если вы создаете новый общий ресурс NFS и выполняете создание моментальных снимков до его подключения, то попытка получить список моментальных снимков для этого ресурса вернет пустой список. Мы рекомендуем удалить все моментальные снимки, сделанные до первого монтирования, и создать их заново после монтирования общей папки.

Ограничения моментальных снимков NFS

Поддерживаются только API управления файлами (AzRmStorageShare) для резервных копий в Azure NFS. API передачи данных файлов (AzStorageShare) не поддерживаются.

Azure Backup в настоящее время не поддерживается для общих папок NFS.

AzCopy в настоящее время не поддерживается для общих папок NFS. Чтобы скопировать данные из общей папки Или моментального снимка NFS Azure, используйте средства копирования файловой системы, такие как rsync или fpsync.

Моментальные снимки файлового хранилища NFS Azure доступны во всех публичных облачных регионах Azure.

Создание моментального снимка файловой общей папки NFS

Вы можете создать моментальный снимок файлового хранилища NFS Azure, используя портал Azure, Azure PowerShell или Azure CLI.

Чтобы создать моментальный снимок существующей общей папки, войдите в портал Azure и выполните следующие действия.

  1. В поле поиска в верхней части портала Azure введите и выберите аккаунты хранения.

  2. Выберите учетную запись хранения FileStorage, содержащую общую папку NFS Azure, для которой вы хотите сделать снимок.

  3. Выберите элементы Хранение данных>Общие папки.

  4. Выберите общую папку, для которой нужно создать снимок, а затем выберите Операции>Снимки.

  5. Нажмите + Добавить моментальный снимок. Добавьте необязательный комментарий и нажмите кнопку "ОК".

Снимок экрана: добавление моментального снимка общей папки.

Список моментальных снимков общих ресурсов NFS

Вы можете перечислить все моментальные снимки для файлового хранилища с помощью портала Azure, Azure PowerShell или Azure CLI.

Чтобы получить список всех снапшотов для существующего файлового хранилища, войдите в портал Azure и выполните следующие действия.

  1. В поле поиска в верхней части портала Azure введите и выберите аккаунты хранения.

  2. Выберите учетную запись хранения, содержащую файловый ресурс Azure NFS, для которого вы хотите просмотреть список моментальных снимков.

  3. Выберите элементы Хранение данных>Общие папки.

  4. Выберите общую папку, для которой нужно перечислить моментальные снимки.

  5. Выберите Операции>Моментальные снимки, и все существующие моментальные снимки для общей папки будут перечислены.

Восстановление из моментального снимка общей папки NFS Azure

Чтобы подключить моментальный снимок файловой доли NFS Azure к виртуальной машине Linux (клиент NFS) и выполнить восстановление файлов, выполните следующие действия.

  1. Выполните следующую команду в консоли. См. Параметры монтирования для других рекомендуемых параметров монтирования. Чтобы повысить производительность копирования, подключите снимок с nconnect для использования нескольких TCP-каналов.

    sudo mount -o vers=4,minorversion=1,proto=tcp,sec=sys $server:/nfs4account/share /media/nfs
    
  2. Измените каталог /media/nfs/.snapshots , чтобы просмотреть доступные моментальные снимки. Каталог .snapshots скрыт по умолчанию, но вы можете получить доступ и прочитать из него, как и любой каталог.

    cd /media/nfs/.snapshots
    
  3. Перечислите содержимое папки .snapshots.

    ls
    
  4. Каждый моментальный снимок имеет собственный каталог, который служит точкой восстановления. Перейдите в каталог моментальных снимков, для которого требуется восстановить файлы.

    cd <snapshot-name>
    
  5. Список содержимого каталога для просмотра списка файлов и каталогов, которые можно восстановить.

    ls
    
  6. Скопируйте все файлы и каталоги из моментального снимка в каталог восстановления , чтобы завершить восстановление.

    cp -r <snapshot-name> ../restore
    

Теперь файлы и каталоги из моментального снимка должны быть доступны в каталоге /media/nfs/restore .

Удаление моментальных снимков общих папок NFS

Существующие моментальные снимки общего доступа никогда не перезаписываются. Их необходимо удалить явным образом. Снимки общего доступа можно удалить с помощью портала Azure, Azure PowerShell или Azure CLI.

Прежде чем удалить снимок разделяемого ресурса, необходимо снять все блокировки на учетной записи хранения. Перейдите к учетной записи для хранения данных и выберите Параметры>Блокировки. Если перечислены какие-либо блокировки, удалите их.

Чтобы удалить моментальный снимок существующего файлового хранилища, войдите в портал Azure и выполните следующие действия.

  1. В поле поиска в верхней части портала Azure введите и выберите аккаунты хранения.

  2. Выберите учетную запись FileStorage, содержащую облачную общую папку NFS Azure, из которой требуется удалить моментальные снимки.

  3. Выберите элементы Хранение данных>Общие папки.

  4. Выберите файловый ресурс, для которого требуется удалить один или несколько моментальных снимков, а затем выберите Операции>Моментальные снимки. Все существующие моментальные снимки для объекта файлового обмена будут перечислены.

  5. Выберите моментальные снимки, которые нужно удалить, и нажмите кнопку "Удалить".

    Снимок экрана: удаление моментальных снимков файлового хранилища.

См. также