Прочитать на английском

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


Переместить системные разделы Azure Event Grid в другой регион

В этой статье охватываются рекомендуемые подходы, рекомендации и принципы перемещения системных тем сетки событий в другой регион.

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

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

Ниже приведены общие шаги, описанные в этой статье.

  • Экспортируйте группу ресурсов, содержащую учетную запись хранения Azure и связанный с ней системный раздел, в шаблон Диспетчера ресурсов. Кроме того, шаблон можно экспортировать только для системного раздела. Если вы воспользуетесь данным вариантом действий, не забудьте переместить источник событий Azure (в этом примере — учетную запись хранения Azure) в другой регион, прежде чем начинать перемещать системный раздел. Затем в экспортированном шаблоне для системной темы обновите внешний идентификатор учетной записи хранения в целевом регионе.
  • Измените шаблон, добавив свойство endpointUrl для указания веб-перехватчика, который подписывается на системный раздел. При экспорте системного раздела подписка на него (в данном случае это веб-перехватчик) также экспортируется в шаблон, но свойство endpointUrl не включается. Поэтому необходимо обновить его, чтобы оно указывало на конечную точку, подписывающуюся на тему. Кроме того, измените значение свойства location на новое расположение или регион. Для других типов обработчиков событий необходимо обновить только расположение.
  • Используйте шаблон для развертывания ресурсов в целевом регионе. Необходимо будет указать имена учетной записи хранения и системного раздела, который будет создан в целевом регионе.
  • Проверьте развертывание. Убедитесь, что веб-перехватчик вызывается при отправке файла в хранилище BLOB-объектов в целевом регионе.
  • Чтобы завершить перемещение, удалите ресурсы (источник события и системный раздел) из исходного региона.

Предпосылки

Подготовьте

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

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

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

    Снимок экрана: страница группы ресурсов.

  3. В меню слева выберите Экспорт шаблона в разделе Параметры, а затем на панели инструментов выберите Скачать.

    Снимок экрана: страница экспорта шаблона учетной записи хранения.

  4. Найдите скачанный из портала ZIP-файл и распакуйте его в любую выбранную папку. Этот zip-файл содержит шаблон и файлы параметров JSON.

  5. Откройте template.json в редакторе на ваш выбор.

  6. URL веб-перехватчика не экспортируется в шаблон. Поэтому выполните следующие действия.

    1. В файле шаблона найдите веб-перехватчик.

    2. В разделе Свойства добавьте символ запятой (,) в конце последней строки. В нашем примере это значение выглядит следующим образом: "preferredBatchSizeInKilobytes": 64.

    3. Добавьте свойство endpointUrl со значением, заданным для URL-адреса веб перехватчика, как показано в следующем примере.

      "destination": {
          "properties": {
              "maxEventsPerBatch": 1,
              "preferredBatchSizeInKilobytes": 64,
              "endpointUrl": "https://mysite.azurewebsites.net/api/updates"
          },
          "endpointType": "WebHook"
      }
      

      Примечание

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

  7. Обновите location для ресурса аккаунт хранения на целевой регион или местоположение. Информацию о кодах расположений см. в статье Расположения Azure. Код региона — это имя региона без пробелов. Например, West US и westus равнозначны.

    "type": "Microsoft.Storage/storageAccounts",
    "apiVersion": "2019-06-01",
    "name": "[parameters('storageAccounts_spegridstorage080420_name')]",
    "location": "westus",
    
  8. Повторите шаг, чтобы обновить ресурс location для системной темы в шаблоне.

    "type": "Microsoft.EventGrid/systemTopics",
    "apiVersion": "2020-04-01-preview",
    "name": "[parameters('systemTopics_spegridsystopic080420_name')]",
    "location": "westus",
    
  9. Сохраните шаблон.

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

Разверните шаблон, чтобы создать учетную запись хранения и системную тему для нее в целевом регионе.

  1. На портале Azure выберите Создать ресурс.
  2. В поле Поиск в Marketplace введите развертывание шаблона, затем нажмите ENTER.
  3. Выберите развертывание шаблона.
  4. Выберите Создать.
  5. Выберите Создать собственный шаблон в редакторе.
  6. Выберите Загрузить файл и следуйте инструкциям, чтобы загрузить файл template.json, скачанный в предыдущем разделе.
  7. Нажмите кнопку Сохранить, чтобы сохранить шаблон.
  8. На странице Настраиваемое развертывание выполните следующие действия.
    1. Выберите подписку Azure.

    2. Выберите существующую группу ресурсов в целевом регионе или создайте новую.

    3. Для Region, выберите целевой регион. Если выбрана существующая группа ресурсов, этот параметр доступен только для чтения.

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

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

      Снимок экрана: страница развертывания шаблона Resource Manager.

    6. В нижней части страницы выберите Проверить и создать.

    7. На странице Проверить и создать проверьте параметры и нажмите кнопку Создать.

Проверьте

  1. После успешного развертывания выберите Перейти к группе ресурсов.
  2. На странице Группа ресурсов убедитесь, что источник событий (в этом примере — учетная запись хранения Azure) и системный раздел были созданы.
  3. Загрузите файл в контейнер Azure Blob Storage и убедитесь, что webhook получил событие. Дополнительные сведения см. в статье Отправка события в конечную точку.

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

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

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

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

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

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

    Снимок экрана: удаление группы ресурсов.

  3. На странице подтверждения введите имя группы ресурсов и выберите Удалить.