Перемещение Центры событий Azure в другой регион

В этой статье показано, как скопировать пространство имен Центров событий и параметры конфигурации в другой регион.

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

Необходимые компоненты

  • Убедитесь, что службы и функции, используемые вашей учетной записью, поддерживаются в целевом регионе.

  • Если вы включили функцию записи для центров событий в пространстве имен, переместите служба хранилища Azure или учетные записи Azure Data Lake Store 2-го поколения перед перемещением пространства имен Центров событий. Кроме того, можно переместить в другой регион группу ресурсов, содержащую пространства имен хранилища и Центров событий, выполнив действия, аналогичные описанным в этой статье.

  • Если пространство имен Центров событий находится в кластере Центров событий, перед выполнением действий, описанных в этой статье, переместите выделенный кластер в целевой регион. Для создания кластера Центров событий можно также воспользоваться шаблоном быстрого запуска на сайте GitHub. Чтобы создать только кластер, удалите в шаблоне часть пространства имен JSON.

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

  • Определите все зависимые ресурсы. Центры событий — это система обмена сообщениями, которая позволяет приложениям публиковать и подписываться на сообщения. Рассмотрите, требуется ли в целевом приложении поддержка обмена сообщениями для того же набора зависимых служб, что и в исходном целевом объекте.

Простой

Сведения о возможных простоях см. в статье Cloud Adoption Framework для Azure: выбор метода перемещений.

Рекомендации по конечным точкам службы

Конечные точки службы виртуальной сети для Центры событий Azure ограничить доступ к указанной виртуальной сети. Конечные точки также могут ограничить доступ к списку диапазонов адресов IPv4 (интернет-протокол версии 4). Любой пользователь, подключающийся к центрам событий за пределами этих источников, запрещен доступ. Если конечные точки службы были настроены в исходном регионе для ресурса Центров событий, то же самое необходимо сделать в целевом.

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

Рекомендации по частной конечной точке

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

Для успешного отдыха Центров событий в целевом регионе необходимо создать виртуальную сеть и подсеть перед фактической базой отдыха.

Подготовить

В начале экспортируйте шаблон диспетчера ресурсов Resource Manager. Этот шаблон содержит параметры, описывающие пространство имен Центров событий.

  1. Войдите на портал Azure.

  2. Выберите пункт Все ресурсы, а затем требуемое пространство имен Центров событий.

  3. На странице Пространство имен Центров событий выберите Экспорт шаблона в разделе Автоматизация левого меню.

  4. Нажмите кнопку Скачать на странице Экспорт шаблона.

    Снимок экрана: место загрузки шаблона Resource Manager

  5. Найдите скачанный c портала ZIP-файл и распакуйте его в любую выбранную папку.

    В ZIP-файле содержатся файлы JSON, включающие шаблон и скрипты для развертывания шаблона.

Изменение шаблона

Измените шаблон, изменив имя и регион пространства имен Центров событий.

  1. Выберите Развертывание шаблона.

  2. В портал Azure нажмите кнопку "Создать".

  3. Выберите Создать собственный шаблон в редакторе.

  4. Выберите Загрузить файл и следуйте инструкциям, чтобы загрузить файл template.json, скачанный в предыдущем разделе.

  5. В файле template.json назовите пространство имен Центров событий, задав значение по умолчанию имени пространства имен. В этом примере для имени пространства имен Центров событий по умолчанию присваивается значение namespace-name.

     "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
     "contentVersion": "1.0.0.0",
     "parameters": {
         "namespaces_name": {
             "defaultValue": "namespace-name",
             "type": "String"
         },
     },
    
  6. Измените свойство location в файле template.json на целевой регион. В этом примере значение целевого региона устанавливается равным centralus.

    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults",
            "apiVersion": "2023-07-01",
            "name": "[parameters('vaults_name')]",
            "location": "centralus",
    
        },
    
    ]
    
    
     "resources": [
     {
         "type": "Microsoft.EventHub/namespaces",
         "apiVersion": "2023-01-01-preview",
         "name": "[parameters('namespaces_name')]",
         "location": "centralus",
    
      },
     {
         "type": "Microsoft.EventHub/namespaces/authorizationrules",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_name'), '/RootManageSharedAccessKey')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
         ],
         "properties": {
             "rights": [
                 "Listen",
                 "Manage",
                 "Send"
             ]
         }
     },
     {
         "type": "Microsoft.EventHub/namespaces/networkrulesets",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_name'), '/default')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
         ],
         "properties": {
             "publicNetworkAccess": "Enabled",
             "defaultAction": "Deny",
             "virtualNetworkRules": [
                 {
                     "subnet": {
                         "id": "[concat(parameters('virtualNetworks_vnet_akv_externalid'), '/subnets/default')]"
                     },
                     "ignoreMissingVnetServiceEndpoint": false
                 }
             ],
             "ipRules": [],
             "trustedServiceAccessEnabled": false
         }
     },
     {
         "type": "Microsoft.EventHub/namespaces/privateEndpointConnections",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_peterheesbus_name'), '/81263915-15d5-4f14-8d65-25866d745a66')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_peterheesbus_name'))]"
         ],
         "properties": {
             "provisioningState": "Succeeded",
             "privateEndpoint": {
                 "id": "[parameters('privateEndpoints_pvs_eventhub_externalid')]"
             },
             "privateLinkServiceConnectionState": {
                 "status": "Approved",
                 "description": "Auto-Approved"
             }
         }
     }
    

    Чтобы получить коды расположения регионов, см. статью Расположения Azure. Код региона — это имя региона без пробелов, Central US = centralus.

  7. Удалите ресурсы частной конечной точки типа в шаблоне.

     {
         "type": "Microsoft.EventHub/namespaces/privateEndpointConnections",
    
     }
    
  8. Если вы настроили конечную точку службы в центрах событий, в networkrulesets разделе в разделе virtualNetworkRulesдобавьте правило для целевой подсети. Убедитесь, что ignoreMissingVnetServiceEndpointдля флага _ задано Falseзначение , чтобы IaC не развертывал центры событий в случае, если конечная точка службы не настроена в целевом регионе.

    _parameter.json_

    {
      "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
    
        "target_vnet_externalid": {
          "value": "virtualnetwork-externalid"
        },
        "target_subnet_name": {
          "value": "subnet-name"
        }
      }
    }
    

    _template.json

    {
        "type": "Microsoft.EventHub/namespaces/networkrulesets",
        "apiVersion": "2023-01-01-preview",
        "name": "[concat(parameters('namespaces_name'), '/default')]",
        "location": "centralus",
        "dependsOn": [
            "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
        ],
        "properties": {
            "publicNetworkAccess": "Enabled",
            "defaultAction": "Deny",
            "virtualNetworkRules": [
                {
                    "subnet": {
                        "id": "[concat(parameters('target_vnet_externalid), concat('/subnets/', parameters('target_subnet_name')]"
                    },
                    "ignoreMissingVnetServiceEndpoint": false
                }
            ],
            "ipRules": [],
            "trustedServiceAccessEnabled": false
        }
    },
    
    
  9. Нажмите кнопку Сохранить, чтобы сохранить шаблон.

Повторное развертывание

  1. На портале Azure выберите Создать ресурс.

  2. В поле Поиск по Marketplace введите развертывание шаблона и выберите Шаблоны развертывания (использование настраиваемых шаблонов).

  3. Выберите Создать собственный шаблон в редакторе.

  4. Выберите "Загрузить файл", а затем следуйте инструкциям, чтобы загрузить файл template.json , измененный в последнем разделе.

  5. На странице Настраиваемое развертывание выполните следующие действия:

    1. Выберите подписку Azure.
    2. Выберите существующую группу ресурсов или создайте новую. Если исходное пространство имен находилось в кластере Центров событий, выберите группу ресурсов, содержащую кластер в целевом регионе.
    3. Выберите целевое расположение или регион. Если выбрана существующая группа ресурсов, этот параметр доступен только для чтения.
    4. В разделе SETTINGS сделайте следующее:
      1. Введите новое имя пространства имен.

        Развертывание шаблона Resource Manager

      2. Если исходное пространство имен находилось в кластере Центров событий, введите имена группы ресурсов и кластера Центров событий во внешнем идентификаторе.

        /subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<CLUSTER'S RESOURCE GROUP>/providers/Microsoft.EventHub/clusters/<CLUSTER NAME>
        
      3. Если Центры событий в пространстве имен используют учетную запись служба хранилища для записи событий, укажите имя группы ресурсов и учетную запись хранения для StorageAccounts_<original storage account name>_external поля.

        /subscriptions/0000000000-0000-0000-0000-0000000000000/resourceGroups/<STORAGE'S RESOURCE GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>
        
    5. В нижней части страницы выберите Review + create (Проверить и создать).
    6. На странице Просмотр и создание проверьте параметры и нажмите кнопку Создать.
  6. Параметры конфигурации сети (частные конечные точки) необходимо повторно настроить в новых центрах событий.

Отмена или очистка

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

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

Чтобы удалить пространство имен Центров событий (исходное или целевое) с помощью портала Azure, сделайте следующее.

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

  2. Выберите целевое пространство имен для удаления и на панели инструментов нажмите кнопку Удалить.

    Снимок экрана: удаление пространства имен — кнопка

  3. Подтвердите удаление на странице Удалить пространство имен. Для этого введите имя пространства имен и нажмите кнопку Удалить.

Следующие шаги

В этом руководстве вы узнали, как переместить пространство имен Центров событий из одного региона в другой.

Инструкции по перемещению кластера Центров событий из одного региона в другой регион см . в статье "Перемещение центров событий в другой регион ".

Дополнительные сведения о перемещении ресурсов между регионами и аварийном восстановлении в Azure см. по следующей ссылке: