Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
С помощью помощника по миграции Azure NetApp Files вы можете устанавливать пиринговые подключения и переносить тома из локальной среды ONTAP или Cloud Volumes ONTAP в Azure NetApp Files.
Требования
- В ONTAP или Cloud Volumes ONTAP необходимо использовать ONTAP 9.10.0 или более поздней версии.
- Права на лицензию SnapMirror необходимо получить и применить к локальному кластеру ONTAP или Cloud Volumes ONTAP. Обратитесь к группе учетной записи, чтобы привлечь специалиста по технологиям Azure к применению лицензии к локальному кластеру хранилища.
- Блокировка моментальных снимков должна быть отключена для томов в исходном кластере. Если блокировка моментальных снимков включена, вы получите
Last transfer errorсообщение. Сведения об отключении блокировки моментальных снимков см. в документации ONTAP. - Убедитесь, что топология сети поддерживается для Azure NetApp Files. Убедитесь, что вы установили подключение из локального хранилища к Azure NetApp Files.
- Делегированное адресное пространство подсети для размещения томов Azure NetApp Files должно иметь по крайней мере семь свободных IP-адресов: шесть для пиринга кластера и один для доступа к данным томов миграции.
- Делегированное адресное пространство подсети должно иметь соответствующий размер, чтобы разместить больше сетевых интерфейсов Azure NetApp Files. Ознакомьтесь с рекомендациями по планированию сети Azure NetApp Files, чтобы обеспечить соответствие требованиям для делегированного размера подсети.
- Чтобы воспользоваться помощником по миграции, тома Azure NetApp Files должны постоянно использовать стандартные сетевые функции. Дополнительные сведения о настройке сетевых функций см. в разделе "Настройка сетевых функций".
- Помощник по миграции отправит запрос на пиринг в локально развернутый кластер хранилища. Запросы на пиринг должны быть приняты в локальном кластере в течение 60 минут. По истечении 60 минут запрос на пиринг больше нельзя принять, и пиринг завершится ошибкой. Если это произойдёт, вам потребуется начать сначала.
- Перед созданием нового запроса на пиринг кластера убедитесь, что предыдущие запросы на пиринг кластера удалены и больше не отображаются в исходном кластере.
- Перед переносом томов, предназначенных для другой подписки, необходимо выполнить миграцию из одного исходного кластера с помощью одной подписки Azure. Пиринг кластера завершается ошибкой при использовании второй подписки Azure и одного и того же внешнего исходного кластера.
- Если вы используете Azure RBAC для разделения роли управления хранилищем Azure NetApp Files с целью распределения задач управления томами, когда тома находятся в одном наборе одноуровневых сетей, обратите внимание, что внешние системы ONTAP, подключенные к этому набору, не подчиняются этим ролям, определяемым в Azure. Внешний администратор хранилища может иметь ограниченную видимость для всех томов в наборе одноуровневых элементов с подробными сведениями о метаданных уровня хранилища.
- При создании каждого тома миграции алгоритм размещения томов Azure NetApp Files пытается повторно использовать ту же систему хранения Azure NetApp Files, что и все ранее созданные тома в подписке, чтобы уменьшить количество сетевых карт или IP-адресов, используемых в делегированной подсети. Если это невозможно, потребляются дополнительные семь сетевых адаптеров.
- Помощник по миграции переносит данные томов, включая списки управления доступом на уровне каталогов и файлов (ACL). Все разрешения на уровне общего доступа не переносятся и необходимо повторно создавать вручную.
- Если локальный том содержит несколько общих папок (например, корневую папку и вложенные папки, указывающие на подкаталоги), то на томе Azure NetApp Files создается только основная папка. Чтобы проверить, какие общие ресурсы существуют в томах локальной системы, используйте команду vserver:
vserver cifs share showvserver cifs share access-control show
- Локальные тома FlexGroup не могут быть перенесены в большие тома Azure NetApp Files. Исключите тома FlexGroup из миграции.
- При выполнении миграции не включите такие функции, как резервное копирование. Включите только функции после завершения миграции.
Подсказка
Сведения о создании тома миграции и кластеров пиринга для помощника по миграции см. в примере сценария рабочего процесса помощника по миграции PowerShell.
Перед тем как начать
Необходимо создать ресурсы ExpressRoute или VPN, чтобы обеспечить сетевое подключение из внешнего кластера NetApp ONTAP к целевому кластеру Azure NetApp Files. Существует несколько способов обеспечения сетевого подключения. Подключение включает этот набор правил брандмауэра, которые являются двунаправленными:
- ICMP
- TCP 11104
- TCP 11105
- HTTPS
Сетевое подключение должно быть обеспечено для всех IC LIFs в исходном кластере ко всем IC LIFs в конечной точке Azure NetApp Files.
Замечание
Помощник по миграции копирует все содержимое тома, включая каталоги, файлы, метаданные файлов (например, владелец, дата создания, дата изменения) и существующие моментальные снимки. Вы несете ответственность за настройку целевого тома Azure NetApp Files с помощью LDAP или Active Directory.
Перенос томов
Проверка подлинности с помощью Azure Active Directory для получения маркера OAuth. Этот маркер используется для последующих вызовов API.
Создайте запрос API миграции для создания томов Azure NetApp Files для каждого локального тома, который планируется перенести.
Это важно
Убедитесь, что размер и другие свойства томов в целевых хранилищах соответствуют размерам и характеристикам источника.
Необходимо создать том Azure NetApp Files с квотой на 20% или более, чем у исходного тома. Тома Azure NetApp Files используют размер логической емкости. Исходный том может быть меньше из-за дедупликации и сжатия. Чтобы правильно определить размер тома Azure NetApp Files, используйте логическое пространство, сообщаемое томом, который вы мигрируете. После миграции вы можете непрерывно уменьшить объем Azure NetApp Files, чтобы предотвратить избыточное выделение ресурсов.
Значения «удаленного пути» — это названия узлов, серверов и томов вашего внутреннего хранилища.
PUT: https://<region>.management.azure.com/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.NetApp/netAppAccounts/<account-name>/capacityPools/<capacity-pool-name>/volumes/Migvolfinal?api-version=2025-07-01 Body: { "type":"Microsoft.NetApp/netAppAccounts/capacityPools/volumes", "location":"<LOCATION>", "properties":{ "volumeType":"Migration", "dataProtection":{ "replication":{ "endpointType":"Dst", "replicationSchedule":"Hourly", "remotePath":{ "externalHostName":"<external-host-name>", "serverName":"<server-name>", "volumeName":"<volume-name>" } } }, "serviceLevel":"<service-level>", "creationToken":"<token>", "usageThreshold":<value>, "exportPolicy":{ "rules":[ { "ruleIndex":1, "unixReadOnly":false, "unixReadWrite":true, "cifs":<true|false>, "nfsv3":<true|false>, "nfsv41":<true|false>, "allowedClients":"0.0.0.0/0", "kerberos5ReadOnly":<true|false>, "kerberos5ReadWrite":<true|false>, "kerberos5iReadOnly":<true|false>, "kerberos5iReadWrite":<true|false>, "kerberos5pReadOnly":<true|false>, "kerberos5pReadWrite":<true|false>, "hasRootAccess":<true|false> } ] }, "protocolTypes":[ "<protocols>" ], "subnetId":"/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<virtual-network-name>/subnets/<subnet>", "networkFeatures":"Standard", "isLargeVolume":"false" } }Выполните запрос API пиринга кластера для каждого целевого тома миграции Azure NetApp Files в локальный кластер. Повторите этот шаг для каждого тома миграции. Каждый вызов должен содержать список интеркластерных LIFs локальных кластеров. IP-адреса одноранговых узлов должны соответствовать вашей локальной сети.
Замечание
Пиринг кластеров поддерживает только одну активную подписку между заданной парой исходных и целевых кластеров. Если для одной пары кластеров создается вторая подписка, то процесс пиринга завершится ошибкой. В одной зоне только одна активная подписка может быть перенесена одновременно; Однако миграции между различными зонами поддерживаются и будут успешно завершены.
Замечание
Каждому узлу в системе ONTAP требуется IC LIF. Каждый IC LIF должен быть указан здесь.
PUT https://<region>.management.azure.com/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.NetApp/netAppAccounts/<account-name>/capacityPools/<capacity-pool-name>/volumes/<volume-names>/peerExternalCluster?api-version=2025-07-01 Body: { "PeerAddresses":[ "<LIF address>", "<LIF address>", "<LIF address>", "<LIF address>" ] }Посмотрите заголовок результата.
Azure-AsyncOperationСкопируйте идентификатор.В вашей системе ONTAP или Cloud Volumes ONTAP примите одноранговый запрос кластера от Azure NetApp Files, отправив запрос GET с использованием идентификатора Azure-AsyncOperation.
POST https://<region>.management.azure.com/subscriptions/<subscription-ID>/providers/Microsoft.NetApp/locations/<location>/operationResults/<Azure-AsyncOperation>?api-version=2025-07-01...Замечание
Эта операция может занять время. Проверьте состояние запроса. Считайте задачу выполненной, когда состояние отображает "Успешно". Если
Azure-AsyncOperationне отвечает успешно через час или завершился с ошибкой, выполните командуpeerExternalClusterеще раз. Убедитесь, что конфигурация сети между внешней системой ONTAP или Облачными томами ONTAP и делегированной подсетью Azure NetApp Files работает перед продолжением работы.{ "id": "/subscriptions/<subscriptionID>/providers/Microsoft.NetApp/locations/southcentralus/operationResults/00000-aaaa-1111-bbbb-22222222222", "name": "<name>", "status": "Succeeded", "name": "<name>", "status": "Succeeded", "startTime": "2023-11-02T07:48:53.6563893Z", "endTime": "2023-11-02T07:53:25.3253982Z", "percentComplete": 100.0, "properties": { "peerAcceptCommand": "cluster peer create -ipspace <IP-SPACE-NAME> -encryption-protocol-proposed tls-psk -peer-addrs <peer-addresses-list>", "passphrase": "<passphrase>" } }После получения успешного состояния скопируйте и вставьте строку
peerAcceptCommandв командную строку для локальных томов, за которым следует строка с парольной фразой.Замечание
peerAcceptCommandЕсли строка в тексте ответа пуста, пиринг уже установлен. Пропустите этот шаг для соответствующего объема миграции.authorizeExternalReplicationОтправьте запрос API для томов миграции. Повторите этот запрос для каждого тома данных миграции.POST: https://<region>.management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.NetApp/netAppAccounts/<account-name>/capacityPools/<capacity-pool-name>/volumes/<volume-names>/authorizeExternalReplication?api-version=2025-07-01Примите одноранговый запрос виртуальной машины хранилища из Azure NetApp Files, отправив запрос GET с помощью идентификатора Azure-AsyncOperation на шаге 4.
GET https://<region>.management.azure.com/subscriptions/<subscription-ID>/providers/Microsoft.NetApp/locations/<location>/operationResults/<>?api-version=2025-07-01&...Ответ выглядит следующим образом:
{ "id": "/subscriptions/00000000-aaaa-0000-aaaa-0000000000000/providers/Microsoft.NetApp/locations/southcentralus/operationResults/00000000-aaaa-000-aaaa-000000000000" "name": "00000000-aaaa-000-aaaa-000000000000", "status": "Succeeded", "name": "00000000-aaaa-0000-aaaa-0000000000000", "status": "Succeeded", "startTime": "2023-11-02T07:48:53.6563893Z", "endTime": "2023-11-02T07:53:25.3253982Z", "percentComplete": 100.0, "properties": { "svmPeeringCommand": "vserver peer accept -vserver on-prem-svm-name -peer-vserver destination-svm-name", } }Разрешить завершению передачи базовых данных. Вы можете отслеживать состояние репликации с помощью портала Azure или REST API.
После получения ответа скопируйте команду CLI из
svmPeeringCommandв ONTAP CLI.Завершив передачу базовых данных, выберите время для отключения локальных томов, чтобы предотвратить запись новых данных.
Если после базовой передачи данные были изменены, отправьте запрос "Выполнить передачу репликации", чтобы записать все добавочные данные, записанные после завершения базовой передачи. Повторите эту операцию для каждого тома миграции.
POST https://<region>.management.azure.com/subscriptions/<subscription-ID>/resourceGroups/<resource-group-names>/providers/Microsoft.NetApp/netAppAccounts/<account-name>>/capacityPools/<capacity-pool>/volumes/<volumes>/performReplicationTransfer?api-version=2025-07-01Разорвать связь репликации. Чтобы разорвать репликацию на портале, перейдите в меню репликации каждого тома и выберите "Разорвать пиринг". Можно также отправить запрос API:
POST https://<region>.management.azure.com/subscriptions/<subscription-ID>/resourceGroups/<resource-group>/providers/Microsoft.NetApp/netAppAccounts/<NetApp-account>/capacityPools/<capacity-pool-name>>/volumes/<volumes>/breakReplication?api-version=2025-07-01Замечание
После разрыва связи репликации не выполняйте никаких команд (таких как
snapmirrorилиsnapmirror delete); эти команды делают тома Azure NetApp Files недоступными для использования.Удалите связь миграции и репликации. Если удаленная репликация является последней миграцией, связанной с вашей подпиской, удаляются связанные одноранговые узлы кластера и межкластерные LIFs.
POST https://<region>.management.azure.com/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.NetApp/netAppAccounts/<NetApp-account>/capacityPools/<capacity-pool>/volumes/<volume-names>/finalizeExternalReplication?api-version=2025-07-01Завершение репликации удаляет все сведения об пиринге в Azure NetApp Files. Вручную убедитесь, что все данные репликации удаляются в кластере ONTAP. Если какие-либо сведения об пиринге
cluster peer deleteостаются, выполните команду.