Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
✔️ Область применения: классические общие папки SMB, созданные с помощью поставщика ресурсов Microsoft.Storage
✖️ Не применяется: все файловые ресурсы NFS, включая: файловые ресурсы, созданные с использованием поставщика ресурсов Microsoft.FileShares (предварительная версия), или классические файловые ресурсы, созданные с использованием поставщика ресурсов Microsoft.Storage
Эта статья о миграции — одна из нескольких, включающих ключевые слова NAS и Azure Data Box. Проверьте, относится ли эта статья к вашему сценарию:
- Источник данных: запоминающее устройство, подключаемое к сети (NAS)
- Маршрут миграции: NAS ⇒ DataBox ⇒ общая папка Azure
- На локальных серверах файлы не кэшируются: так как окончательная цель заключается в использовании общих папок Azure непосредственно в облаке, нет плана использовать "Azure File Sync".
Если ваш сценарий отличается, ознакомьтесь с таблицей руководств по миграции.
В этой статье описываются комплексные рекомендации по планированию, развертыванию и настройке сетей для перехода с устройства NAS на функциональные общие папки Azure. В этом руководстве используется Azure DataBox для массового переноса данных (автономный перенос данных).
Цели миграции
Цель — переместить общие папки с устройства NAS в Azure, чтобы они стали собственными общими папками Azure. Вы можете использовать собственные общие папки Azure без Windows Server. Миграция должна быть выполнена таким образом, чтобы гарантировать целостность рабочих данных и их доступность во время миграции. Последнее означает сведение времени простоя к минимуму, чтобы оно соответствовало стандартному периоду обслуживания или только немного превышало его.
Обзор миграции
Процесс миграции состоит из нескольких этапов. Вам потребуется развернуть учетные записи хранения Azure и общие папки, а также настроить сеть. Затем вы перенесете файлы с помощью Azure Data Box и Robocopy для синхронизации. Наконец, вы перенесете пользователей и приложения на новые общие папки Azure. В следующих разделах все этапы процесса миграции описаны подробно.
Совет
Если вы вернётесь к этой статье, используйте навигацию справа, чтобы перейти к этапу миграции, на котором вы остановились.
Этап 1. Определение необходимого количества общих папок Azure
На этом шаге вы определите, сколько общих файловых хранилищ Azure вам потребуется. Тома могут содержать большее количество папок, к которым вы в настоящее время предоставляете локальный доступ как к общим папкам SMB пользователям и приложениям. В зависимости от количества общих папок, которые вы хотите перенести в облако, можно использовать сопоставление 1:1 или группирование общих папок.
Используйте сопоставление 1:1
Если у вас небольшое количество акций, рекомендуется сопоставление 1:1. Самый простой способ представить этот сценарий — вообразить локальную папку, которая совпадает 1:1 с файловой общей папкой Azure.
Использование группировки общего доступа
Если у вас есть большое количество общих папок, рассмотрите группировку общих папок. Например, если у отдела кадров (HR) 15 общих папок, возможно, стоит хранить все данные HR в одной общей папке Azure. Таким образом, для этой группы локальных общих папок требуется только одна общая папка Azure в облаке.
Этап 2. Развертывание ресурсов хранилища Azure
На этом этапе вы создадите учетные записи хранения Azure и настроите общие файлы в них.
Помните, что файловое хранилище Azure развертывается в облаке в учетной записи хранения на Azure. Для общих папок HDD (стандартный) такая конфигурация делает учетную запись хранилища целью масштабирования для таких показателей производительности, как операции ввода-вывода в секунду и пропускная способность. Если вы размещаете несколько файловых ресурсов в одной учетной записи хранения, вы создаете общий пул IOPS и пропускную способность для этих ресурсов.
Как правило, вы можете объединить несколько файловых ресурсов Azure в одну учетную запись хранения данных, если у вас есть архивные ресурсы или вы ожидаете в них низкую ежедневную активность. Однако если у вас есть общие ресурсы, которые активно используются многими пользователями и/или приложениями, рекомендуется развернуть учетные записи хранения с одной файловой долей каждой. Эти ограничения не применяются к учетным записям хранения типа FileStorage (SSD), где производительность предоставляется и гарантируется для каждого раздела.
Примечание.
Одна подписка в одном регионе Azure может содержать не более 250 учетных записей хранения. При увеличении квоты можно создавать до 500 учетных записей хранения в каждом регионе. Дополнительные сведения см. в разделе "Увеличение квот учетных записей хранилища Azure".
Еще одним фактором при развертывании учетной записи хранения является избыточность. См. избыточность для Azure Files.
Если вы создали список общих папок, необходимо сопоставить каждую общую папку с учетной записью хранения, в которую она будет создана.
Имена ресурсов также важны. Например, при группировании нескольких дисковых ресурсов для отдела кадров в учетную запись хранения Azure, этой учетной записи следует присвоить соответствующее имя. Точно так же файловым хранилищам Azure следует присваивать имена, аналогичные тем, которые используются для их локальных аналогов.
Теперь разверните соответствующее количество учетных записей хранения Azure с соответствующим количеством общих папок Azure, следуя инструкциям в статье "Создание общей папки SMB". В большинстве случаев необходимо убедиться, что регион каждой учетной записи хранения совпадает.
Этап 3. Определение необходимого количества устройств Azure DataBox
Приступайте к выполнению этого этапа только после завершения предыдущего. Здесь вам нужно будет создать ресурсы хранилища Azure (учетные записи хранения и общие папки). При заказе DataBox, вам нужно указать, в какие учетные записи хранения перемещаются данные DataBox.
На этом этапе вам нужно соотнести результаты плана миграции из предыдущего этапа с ограничениями доступных параметров DataBox. Эти рекомендации помогут вам составить план — понять, какие параметры DataBox стоит выбрать и сколько из них потребуется вам для того, чтобы переместить общие папки NAS в общие папки Azure.
Чтобы определить, сколько устройств и какого типа вам нужно, учтите следующие важные ограничения:
- Любой Azure DataBox позволяет перемещать данные в 10 учетных записей хранения.
- Каждый вариант DataBox обладает собственной доступной ёмкостью. См. раздел Варианты DataBox.
Проверьте по своему плану миграции, сколько учетных записей хранения вы решили создать и сколько общих папок должно быть в каждой из них. Затем посмотрите на размер каждого сетевого ресурса на вашем NAS. Объединение этих сведений позволит вам оптимизировать выбранные параметры и решить, какое устройство должно отправлять данные в учетные записи хранения. Вы можете использовать два устройства DataBox для перемещения файлов в одну учетную запись хранения, но не разделяйте содержимое одного файлового хранилища между двумя устройствами DataBox.
Варианты DataBox
Для стандартной миграции необходимо выбрать один или несколько из этих двух вариантов DataBox:
- DataBox: самый популярный вариант. Вам будет отправлено износоустойчивое устройство DataBox, которое работает по типу NAS. Его полезная емкость составляет 80 ТиБ. Дополнительные сведения см. в документации по DataBox.
- DataBox Heavy. Этот вариант включает износоустойчивое устройство DataBox на колесах, работающее как NAS, с емкостью 1 ПиБ. Пригодная емкость уменьшена примерно на 20 % из-за шифрования и накладных расходов файловой системы. Дополнительные сведения см. в документации по DataBox Heavy.
Предупреждение
Диски Data Box не рекомендуется перенести в общие папки Azure. Диски Data Box не сохраняют метаданные файла, такие как разрешения доступа (ACL) и другие атрибуты.
Этап 4. Предоставление временного сервера Windows Server
Пока вы ожидаете доставку одного или нескольких Azure Data Box, вы уже можете развернуть один или несколько серверов Windows Server, которые понадобятся для выполнения заданий RoboCopy.
- Первый вариант использования этих серверов — копирование файлов в Data Box.
- Второе использование этих серверов — нагнать изменения, которые произошли на устройстве NAS, пока DataBox был в пути. Такой подход позволяет сократить время простоя на стороне источника до минимума.
Скорость выполнения заданий Robocopy зависит в основном от следующих факторов:
- количество операций ввода-вывода в секунду (IOPS) на исходных и целевых хранилищах
- доступная пропускная способность сети между ними
См. дополнительные сведения: вопросы IOPS и пропускной способности - возможность быстро обрабатывать файлы и папки в пространстве имен
. Дополнительные сведения: скорость обработки - Количество изменений между запусками RoboCopy
Поиск дополнительных сведений: Избегайте ненужной работы.
Важно учитывать указанные сведения при принятии решения о количестве оперативной памяти и потоков, которые вы выделите временным Windows Server.
Этап 5. Подготовка к использованию общих папок Azure
Чтобы сэкономить время, выполните этот этап в ожидании доставки Data Box. На этом этапе вы сможете принять решение о том, как ваши серверы и пользователи смогут пользоваться файловыми ресурсами Azure. Наиболее важными решениями являются следующие.
- Сеть. Разрешите своим сетям маршрутизацию трафика SMB.
- Проверка подлинности. Настройте учетные записи хранения Azure для проверки подлинности Kerberos. Присоединение вашей учетной записи хранения к AdConnect и домену позволит приложениям и пользователям использовать удостоверение личности AD для аутентификации.
- Авторизация: Списки контроля доступа на уровне общего доступа (ACL) для каждой общей папки Azure позволят пользователям и группам Active Directory получить доступ к данной папке. Внутри общей папки Azure будут применяться собственные списки контроля доступа NTFS. Авторизация на основе списков управления доступом к файлам и папкам работает так же, как и для локальных общих папок SMB.
- Непрерывность бизнес-процессов. Интеграция общих папок Azure в существующую среду часто требует сохранения существующих адресов общих папок. Если вы еще не используете пространства имен DFS, рекомендуется установить его в вашей среде. Вы сможете сохранять адреса общих папок, используемые пользователями и сценариями, без изменений. DFS-N следует использовать в качестве службы маршрутизации пространства имен для SMB путем перенаправления целевых объектов DFS-Namespace в общие папки Azure после их миграции.
В этом видео показано, как безопасно предоставлять общие папки Azure непосредственно информационным работникам и приложениям за пять простых шагов.
Видео ссылается на выделенную документацию по следующим темам. Обратите внимание, что Azure Active Directory теперь является идентификатором Microsoft Entra. Дополнительные сведения см. в разделе Новое название для Azure AD.
Этап 6. Копирование файлов на устройство Data Box
Когда ваш DataBox прибудет, необходимо настроить его с ненарушенным сетевым подключением к устройству NAS. Следуйте инструкциям в документации по установке для того типа устройства DataBox, который вы заказали.
В зависимости от типа DataBox, вам могут быть доступны инструменты копирования DataBox. На этом этапе они не рекомендуются для миграции в общие папки Azure, так как они не копируют файлы с полной точностью в DataBox. Вместо этого используйте RoboCopy.
Когда вы получите свое устройство DataBox, оно будет содержать уже подготовленные общие папки SMB, доступные для каждой учетной записи хранения, указанной во время заказа.
- Если файлы попадают в общую папку SSD Azure, для каждой учетной записи хранения SSD "Хранилище файлов" будет один общий ресурс SMB.
- Если файлы попадают в учетную запись HDD, она будет содержать три общих ресурса SMB для хранения с оплатой по мере использования. Для миграции важны только общие папки, которые заканчиваются на
_AzFiles. Игнорируйте все общие папки блочных и страничных BLOB-объектов.
Выполните действия, описанные в документации по Azure DataBox:
- Подключение к Data Box
- Копирование данных в Data Box
- Подготовка DataBox к переходу в Azure
В документации DataBox указана команда RoboCopy. однако, команда не подходит для сохранения полной целостности файлов и папок. Вместо нее используйте эту команду:
Robocopy /MT:32 /NP /NFL /NDL /B /MIR /IT /COPY:DATSO /DCOPY:DAT /UNILOG:<FilePathAndName> <SourcePath> <Dest.Path>
- Дополнительные сведения об отдельных флагах RoboCopy см. в таблице в следующем разделе о RoboCopy.
- Чтобы узнать больше о том, как правильно определить количество потоков
/MT:n, оптимизировать скорость Robocopy и успешно внедрить Robocopy в центр обработки данных, ознакомьтесь с разделом об устранении неполадок с Robocopy.
Совет
В качестве альтернативы Robocopy в Data Box создана служба копирования данных. Эту службу можно использовать для загрузки файлов в Data Box с полной точностью. Следуйте указаниям в этом руководстве, посвященному службе копирования данных, и убедитесь, что задан правильный целевой объект общей папки Azure.
Этап 7. Синхронизация Robocopy из NAS
Когда Data Box сообщит, что все файлы и папки помещены в запланированные общие папки Azure, вы можете приступить к этому этапу. Дополнительное копирование с помощью RoboCopy необходимо только в том случае, если данные на NAS могли измениться с момента начала копирования на Data Box. В некоторых сценариях, например если вы используете общую папку для архивации, вы можете запретить внесение изменений в общую папку на NAS до завершения миграции. Вы также можете обеспечить соблюдение бизнес-требований, предоставив к общим папкам NAS доступ только для чтения на время миграции.
Если общая папка должна быть доступна для чтения и записи во время миграции и период простоя должен быть минимальным, выполните этап синхронизации Robocopy, прежде чем предоставить пользователям прямой доступ к общей папке Azure.
На этом этапе вы выполните задания RoboCopy для обновления облачных общих папок с последними изменениями, внесенными в NAS с момента их переноса на DataBox. Синхронизация при помощи RoboCopy может произойти быстро или занять значительное время, в зависимости от количества изменений, которые произошли в ваших общих хранилищах NAS.
Запустите первое локальное копирование в целевой папке Windows Server:
- Определите первое расположение на устройстве NAS.
- Найдите соответствующую общую папку Azure.
- Подключите общую папку Azure в качестве локального сетевого диска на временном сервере Windows Server.
- Запустите копию с помощью RoboCopy, как описано.
Подключение к файловому ресурсу Azure
Перед использованием средства Robocopy необходимо сделать общую папку Azure доступной по протоколу SMB. Самый простой способ — подключить общую папку в качестве локального сетевого диска к Windows Server, который планируется использовать для Robocopy.
Внимание
Прежде чем успешно подключить общую папку Azure к локальному серверу Windows Server, необходимо выполнить этап 5. Подготовка к использованию общих папок Azure.
Когда вы будете готовы, просмотрите статью "Использование общей папки Azure с Windows" и подключите общую папку Azure, для которой вы хотите запустить синхронизацию RoboCopy для NAS.
RoboCopy
Следующая команда RoboCopy скопирует только различия (обновленные файлы и папки) из хранилища NAS в файловое хранилище Azure.
robocopy <SourcePath> <Dest.Path> /MT:20 /R:2 /W:1 /B /MIR /IT /COPY:DATSO /DCOPY:DAT /NP /NFL /NDL /XD "System Volume Information" /UNILOG:<FilePathAndName>
| Коммутатор | Значение |
|---|---|
/MT:n |
Разрешает выполнение Robocopy в многопоточном режиме. По умолчанию параметр n имеет значение 8. Максимум — 128 потоков. Хотя большое количество потоков помогает насытить доступную пропускную способность, это не означает, что ваша миграция всегда будет быстрее с большим количеством потоков. Тесты с Azure Files показывают, что диапазон от 8 до 20 обеспечивает сбалансированную производительность для первичного выполнения копирования. На последующие запуски /MIR постепенно оказывают влияние доступные вычислительные мощности и доступная пропускная способность сети. Для последующих запусков указываемое количество потоков нужно привести в соответствие с числом ядер процессора и количеством потоков, приходящихся на каждое ядро. Определите, нужно ли зарезервировать ядра для других задач рабочего сервера. Тесты с Azure Files показали, что 64 потока обеспечивают хорошую производительность, но только если процессоры могут поддерживать их одновременно. |
/R:n |
Максимальное число повторных попыток для файла, который не удалось скопировать с первого раза. Robocopy повторит попытку определенное количество раз (n), после чего объявит невозможность скопировать этот файл во время этого выполнения. Вы можете оптимизировать производительность выполнения: выберите значение "2" или "3", если вы считаете, что проблемы с истечением времени ожидания вызывали сбои в прошлом. Это может быть типичной проблемой для связи по каналам WAN. Выберите вариант "Без повторных попыток" или значение "1", если вы считаете, что файл не удалось скопировать, так как он активно использовался. Попытка снова через несколько секунд не всегда достаточно, чтобы состояние использования файла изменилось. Возможно, пользователям или приложениям, которые удерживают этот файл открытым, потребуется больше времени. В этом случае, если принять тот факт, что файл не был скопирован, и попытаться скопировать его в одном из следующих запланированных запусков Robocopy, это может привести к успешному копированию файла. В этом случае текущее выполнение завершится быстрее, без затрат времени на повторные попытки, которые все равно в большинстве случаев завершаются сбоем копирования из-за того, что файлы остаются открытыми по истечении времени ожидания повторных попыток. |
/W:n |
Указывает время ожидания Robocopy перед попыткой копирования файла, который не был успешно скопирован во время предыдущей попытки.
n — это количество секунд ожидания между повторными попытками.
/W:n часто используется вместе с /R:n. |
/B |
Выполняет команду Robocopy в том же режиме, что и приложение резервного копирования. Этот параметр позволяет Robocopy перемещать файлы, для которых у текущего пользователя нет разрешений. Переключатель резервного копирования зависит от запуска команды Robocopy в консоли с правами администратора или в окне PowerShell. Если вы используете Robocopy для работы с Azure Files, убедитесь, что вы подключаете общую папку Azure с помощью ключа доступа к учетной записи хранилища, а не удостоверения домена. В противном случае сообщения об ошибках могут не позволить найти очевидное решение проблемы. |
/MIR |
(Зеркалирование источника в целевой объект.) Позволяет Robocopy копировать только различия между исходным и целевым объектами. Будут скопированы пустые подкаталоги. Элементы (файлы или папки), которые были изменены или не существуют в целевой папке, будут скопированы. Элементы, которые существуют в целевой системе, но не в источнике, будут удалены из цели. При использовании этого параметра структуры исходной и целевой папок должны соответствовать друг другу.
Соответствие означает, что вы выполняете копирование с правильного уровня источника и папки на соответствующий уровень папки в целевом объекте. Только тогда "догоняющее копирование" будет успешным. Если объекты источника и назначения не совпадают, использование /MIR приведет к увеличению числа операций удаления и повторного копирования. |
/IT |
Обеспечивает сохранение точности данных в определенных зеркальных сценариях.
Например, если в файле происходит изменение ACL и между двумя выполнениями Robocopy обновляется атрибут, он помечается как скрытый. Без параметра /IT команда Robocopy может упустить изменение ACL и не передать его в целевое расположение. |
/COPY:[copyflags] |
Точность копирования файла. По умолчанию: /COPY:DAT. Флаги копирования: D = данные, A = атрибуты, T = метки времени, S = безопасность = NTFS ACLs, O = информация о владельце, U = аудиторская информация. Данные аудита не могут храниться в общей папке Azure. |
/DCOPY:[copyflags] |
Точность воспроизведения при копировании каталогов. По умолчанию: /DCOPY:DA. Флаги копирования: D = данные, A = атрибуты, T = метки времени. |
/NP |
Указывает, что ход копирования каждого файла и папки не отображается. Отображение хода выполнения значительно снижает производительность копирования. |
/NFL |
Указывает, что имена файлов не регистрируются. Улучшается производительность копирования. |
/NDL |
Указывает, что имена каталогов не регистрируются. Улучшается производительность копирования. |
/XD |
Указывает исключаемые каталоги. При выполнении Robocopy в корне тома рассмотрите возможность исключения скрытой папки System Volume Information. Если она используется по назначению, вся информация в ней относится к конкретному тому в этой конкретной системе и может быть легко восстановлена по требованию. Копирование этой информации не принесет никакой пользы ни в облаке, ни при последующем копировании обратно на другой том Windows. Отказ от хранения этого содержимого не должен считаться потерей данных. |
/UNILOG:<file name> |
Записывает состояние в файл журнала в формате Юникод. (Перезаписывает существующий журнал.) |
/L |
Только для тестового запуска перечислены должны быть только файлы. Они не будут копироваться, не будут удалены и не будут добавлены метки времени. Зачастую используется вместе с /TEE для вывода на консоль. Флаги из примера скрипта (такие как /NP, /NFL и /NDL) потребуется удалить, чтобы обеспечить корректную документацию результатов теста. |
/Z |
Используйте осторожно копирует файлы в режиме перезапуска. Эта настройка рекомендуется только для использования в нестабильной сетевой среде. Он значительно сокращает производительность копирования из-за дополнительных записей в журнал. |
/ZB |
Используйте с осторожностью Использует режим перезапуска. Если доступ запрещен, то для этого параметра используется режим резервного копирования. Этот параметр значительно сокращает производительность копирования из-за дополнительных контрольных точек. |
Внимание
Мы рекомендуем использовать Windows Server 2022. При использовании Windows Server 2019 убедитесь, что установлено последнее исправление или хотя бы обновление ОС KB5005103. Оно содержит важные исправления для определенных сценариев Robocopy.
Совет
Обратитесь к разделу "Устранение неполадок", если средство RoboCopy влияет на вашу производственную среду, сообщает о большом количестве ошибок или не выполняется достаточно быстро.
Переключение пользователей на новую систему
При первом запуске команды RoboCopy у пользователей и приложений сохраняется доступ к файлам на устройстве NAS и возможность их изменять. Возможно, что RoboCopy обработал каталог, переходит к следующему, а затем пользователь в исходном расположении (NAS) добавляет, изменяет или удаляет файл, который теперь не будет обработан в этом текущем запуске RoboCopy. Это поведение является ожидаемым.
При первом запуске выполняется перемещение большого объема обработанных данных в общую папку Azure. Создание первой копии займет некоторое время. Ознакомьтесь с разделом Устранение неполадок для получения дополнительных сведений о влиянии на скорость Robocopy.
После завершения начального сеанса выполните команду еще раз.
Когда вы запустите RoboCopy для того же общего ресурса во второй раз, это завершится быстрее, так как нужно будет лишь передать изменения, произошедшие с момента последнего запуска. Вы можете запускать повторяющиеся задания для одного и того же общего ресурса.
При анализе допустимого времени простоя необходимо прекратить доступ пользователей к общим папкам на основе NAS. Это можно сделать любым способом, который не позволит пользователям изменять структуру и содержимое файлов и папок. Например, можно указать в DFS-Namespace несуществующее расположение или изменить корневой список ACL в общей папке.
Запустите RoboCopy ещё один последний раз. Он выявит любые изменения, которые могли быть пропущены. Сколько времени занимает последний шаг, зависит от скорости сканирования RoboCopy. Вы можете оценить время (равное времени простоя), измерив, сколько времени занял предыдущий запуск.
Создайте общую папку в папке на сервере Windows Server и, если возможно, настройте развертывание DFS-N, чтобы оно указывало на нее. Не забудьте установить те же разрешения на уровне общего доступа, что и в SMB-ресурсе вашей NAS. Если у вас есть устройство NAS корпоративного класса, присоединенное к домену, то идентификаторы безопасности пользователей автоматически сопоставляются с пользователями, существующими в Active Directory, так как RoboCopy копирует файлы и метаданные в полном объеме. Если вы применяли локальных пользователей на устройстве NAS, потребуется повторно создать их в качестве локальных пользователей Windows Server и сопоставить существующие идентификаторы безопасности, которые средство RoboCopy переместило на сервер Windows Server, с идентификаторами безопасности новых локальных пользователей Windows Server.
На этом миграция общей папки или группы общих папок в общий корневой каталог или том завершена.
Можно попытаться выполнить несколько операций копирования параллельно. Рекомендуем обрабатывать один файл в общем доступе Azure за раз.
Устранение неполадок
Скорость и частота успешных запусков RoboCopy будут зависеть от нескольких факторов:
- количество операций ввода-вывода в секунду (IOPS) на исходных и целевых хранилищах
- доступная пропускная способность сети между источником и назначением;
- возможность быстрой обработки файлов и папок в пространстве имен;
- число изменений между запусками средства Robocopy.
- размер и количество файлов, которые необходимо скопировать.
Рекомендации по числу операций ввода-вывода в секунду и пропускной способности сети
В этой категории необходимо рассмотреть возможности исходного хранилища, целевого хранилища и сети, соединяющей их. Максимальная возможная пропускная способность определяется самым медленным из этих трех компонентов. Убедитесь, что сетевая инфраструктура настроена для обеспечения оптимальных скоростей передачи на максимально возможном уровне.
Внимание
При копировании с максимальной скоростью это часто наиболее желаемо, но подумайте об использовании вашей локальной сети и устройства NAS для других, часто критически важных бизнес-задач.
Копирование как можно быстрее может оказаться нежелательным, если существует риск, что перенос данных может монополизировать доступные ресурсы.
- Подумайте, когда в вашей среде лучше выполнять миграцию: в течение дня, в нерабочее время или в выходные дни.
- Рассмотрите возможность настройки качества обслуживания сети (QoS) на сервере Windows для ограничения скорости RoboCopy.
- Избегайте ненужной работы для инструментов миграции.
Средство RoboCopy дает возможность вставлять задержки между пакетами, указывая переключатель /IPG:n, где n измеряется в миллисекундах между пакетами RoboCopy. Использование этого параметра позволяет избежать монополизации ресурсов на устройствах с ограниченным доступом к данным и перегруженных сетевых соединений.
/IPG:n не может использоваться для точного регулирования пропускной способности сети вплоть до определенных значений в Мбит/с. Используйте Network QoS Windows Server вместо этого. RoboCopy полностью зависит от протокола SMB для всех сетевых нужд. Использование SMB — это причина, по которой средство RoboCopy не может влиять на пропускную способность сети, но может замедлить ее использование.
Аналогичная логика применима к показателям IOPS, наблюдаемым на NAS. Размер кластера на томе NAS, размеры пакетов и ряд других факторов влияют на наблюдаемые IOPS. Появление задержки между пакетами часто является самым простым способом управления нагрузкой на NAS. Протестируйте несколько значений, например от 20 миллисекунд (n = 20) до кратных этому числу. После введения временной задержки можно оценить, могут ли другие приложения работать должным образом. Эта стратегия оптимизации позволит вам найти оптимальную скорость работы RoboCopy в вашей среде.
Скорость обработки
Средство RoboCopy перейдет к пространству имен, на которое оно указывает, и оценит каждый файл и каждую папку для копирования. Оценка каждого файла будет производиться во время первоначального копирования и во время зеркального копирования. Например, при повторяющихся запусках RoboCopy с параметром /MIR по отношению к одному и тому же исходному и целевому расположению хранилища. Эти повторяющиеся запуски полезны для сокращения времени простоя пользователей и приложений, а также для повышения общей частоты успешных перенесенных файлов.
Мы часто по умолчанию рассматриваем пропускную способность как наиболее ограничивающий фактор миграции, и это может быть правдой. Но возможность перечисления пространства имен может значительно повлиять на общее время копирования для более крупных пространств имен с меньшими файлами. Учтите, что копирование 1 ТиБ маленьких файлов займет значительно больше времени, чем копирование 1 ТиБ меньшего количества файлов, но большего размера, если все остальные переменные остаются одинаковыми. Таким образом, при переносе большого количества небольших файлов может возникнуть замедление передачи. Это ожидаемое поведение.
Причиной этой разницы является вычислительная мощность, необходимая для прохода по пространству имен. Средство RoboCopy поддерживает многопоточные копии с помощью параметра /MT:n, где n означает количество используемых потоков. Поэтому при подготовке компьютера специально для RoboCopy рассмотрите количество ядер процессора и количество потоков, которое они предоставляют. Наиболее часто используются два потока на ядро. Количество ядер и потоков в компьютере является важной информацией для принятия решения о том, какие значения многопоточности в /MT:n следует указать. Также определите, сколько заданий RoboCopy планируется выполнять параллельно на определенном компьютере.
Большее количество потоков будет копировать наш пример 1 TiB небольших файлов значительно быстрее, чем меньшее количество потоков. В то же время вложение дополнительных ресурсов в 1 ТиБ больших файлов может не дать пропорциональных преимуществ. При высоком количестве потоков будет предпринята попытка одновременного копирования больших файлов по сети. Эта дополнительная сетевая активность увеличивает вероятность того, что она будет ограничена пропускной способностью или числом операций ввода-вывода в секунду в хранилище.
Во время первого копирования RoboCopy в пустой целевой каталог или дифференциального запуска с большим количеством измененных файлов вас, вероятно, ограничивает пропускная способность вашей сети. Начните с большого количества потоков для первоначального запуска. Большое количество потоков, даже превышающее количество потоков, доступных в текущий момент времени на компьютере, позволяет получить максимальный уровень доступной пропускной способности сети. На последующих запусках с параметром /MIR постепенно отражается влияние обрабатываемых элементов. Меньшее количество изменений при выполнении задания по определению отличий означает уменьшение объема транспорта данных по сети. Теперь скорость больше зависит от способности обрабатывать элементы пространства имен, чем от перемещения их по сетевому каналу. Для последующих запусков указываемое число потоков нужно привести в соответствие с числом ядер процессора и числом потоков, приходящихся на каждое ядро. Определите, нужно ли зарезервировать ядра для других задач, которые может иметь рабочий сервер.
Совет
Основное правило: первый запуск RoboCopy, при котором перемещается большой объем данных по сети с высокой задержкой, выигрывает от увеличения количества задействованных потоков (/MT:n). При последующих запусках копируется меньше отличий, и, скорее всего, произойдет переход от ограничений пропускной способности сети к ограничениям вычислительных ресурсов. В этих обстоятельствах часто лучше установить количество потоков RoboCopy равным фактически доступным потокам на компьютере. Чрезмерное выделение ресурсов в этом сценарии может привести к увеличению числа переключений контекста в процессоре, что, в свою очередь, может снизить скорость копирования.
Устранение лишней работы
Избегайте крупномасштабных изменений в пространстве имен. Например, перемещение файлов между каталогами, изменение свойств в большом масштабе или изменение разрешений (ACL NTFS). В частности, изменение списков управления доступом может оказать существенное влияние, поскольку они часто при изменении оказывают каскадный эффект на файлы, находящиеся ниже в иерархии папок. Возможны следующие последствия.
- Возросшее время выполнения задания RoboCopy, так как каждый файл и папка, затрагиваемые изменением ACL, нуждаются в обновлении
- При повторном использовании данных, перемещенных ранее, может потребоваться повторное копирование. Например, придется заново копировать данные при изменении структуры папок после того, как файлы из них уже были скопированы. Задание RoboCopy не может "отменить" изменения в пространстве имен. Следующее задание должно очистить файлы, которые ранее были перенесены в старую структуру папок, и снова передать файлы в новую структуру папок.
Другим важным аспектом является эффективное использование средства RoboCopy. С помощью рекомендуемого скрипта RoboCopy вы создадите и сохраните файл журнала для ошибок. Ошибки копирования могут возникать, и это нормально. Из-за этих ошибок часто требуется многократное использование инструмента копирования, такого как RoboCopy. Например, первоначальный запуск, скажем, из NAS в DataBox или с сервера в общую папку Azure, а также один или несколько дополнительных запусков с параметром /MIR для обнаружения и повторной попытки копирования файлов, которые не были скопированы.
Вы должны быть готовы к выполнению нескольких циклов RoboCopy для заданной области пространства имен. Последовательные запуски будут выполняться быстрее, так как операций копирования будет меньше, но их скорость ограничена скоростью обработки пространства имен. При выполнении нескольких циклов можно ускорить каждый из них, сделав так, чтобы RoboCopy не прилагал чрезмерных усилий для копирования всего в каждом цикле. Эти параметры RoboCopy могут значительно повлиять на результат.
-
/R:nn = периодичность повторного копирования невыполненного файла и -
/W:nn = интервал в секундах между повторными попытками
/R:5 /W:5 является разумным параметром, который можно изменить в соответствии с ситуацией. В этом примере копирование неудачного файла будет повторяться пять раз, с интервалом в 5 секунд между повторными попытками. Если файл все же не удается скопировать, следующая задача RoboCopy повторит попытку. Часто файлы, которые не удалось скопировать из-за их использования или проблем с тайм-аутом, в конечном итоге можно успешно скопировать таким образом.