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


Перемещение Azure Monitor в рабочую область Log Analytics в другой регион

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

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

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

Рабочая область Log Analytics не поддерживает перенос данных рабочей области из одного региона в другой и связанных устройств. Вместо этого необходимо создать рабочую область Log Analytics в целевом регионе и перенастроить устройства и параметры в новой рабочей области.

На приведенной ниже схеме показан шаблон перемещения рабочей области Log Analytics. Красные линии потока представляют повторное развертывание целевого экземпляра вместе с перемещением данных и обновлением доменов и конечных точек.

Схема, иллюстрирующая шаблон перемещений рабочей области Log Analytics.

Перемещение в поддержку зоны доступности

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

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

Службы с поддержкой зон доступности Azure предназначены для обеспечения правильного уровня надежности и гибкости. Их можно настроить двумя способами. Они могут быть избыточными по зонам с автоматической репликацией между зонами или зональными экземплярами, закрепленными в определенной зоне. Эти подходы также можно объединить. Дополнительные сведения об зональной архитектуре, избыточной между зонами, см . в рекомендациях по использованию зональных зон и регионов.

Если вы хотите переместить рабочую область Log Analytics в регион, поддерживающий зоны доступности:

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

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

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

    • Подключенные агенты — введите журналы в рабочую область и запросите таблицу heartbeat, чтобы получить список подключенных агентов.

      Heartbeat
      | summarize by Computer, Category, OSType, _ResourceId
      
    • Параметры диагностики — ресурсы могут отправлять журналы в Диагностику Azure или выделенные таблицы в вашей рабочей области. Введите журналы в рабочей области и выполните этот запрос для ресурсов, которые отправляют данные в таблицу AzureDiagnostics:

      AzureDiagnostics
      | where TimeGenerated > ago(12h)
      | summarize by  ResourceProvider , ResourceType, Resource
      | sort by ResourceProvider, ResourceType
      

      Выполните этот запрос для ресурсов, которые отправляют данные в выделенные таблицы:

      search *
      | where TimeGenerated > ago(12h)
      | where isnotnull(_ResourceId)
      | extend ResourceProvider = split(_ResourceId, '/')[6]
      | where ResourceProvider !in ('microsoft.compute', 'microsoft.security')
      | extend ResourceType = split(_ResourceId, '/')[7]
      | extend Resource = split(_ResourceId, '/')[8]
      | summarize by tostring(ResourceProvider) , tostring(ResourceType), tostring(Resource)
      | sort by ResourceProvider, ResourceType
      
    • Установленные решения: выберите устаревшие решения на панели навигации рабочей области для списка установленных решений.

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

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

    • Оповещения — чтобы вывести оповещения, выберите Оповещения в области навигации рабочей области, а затем выберите Управление правилами генерации оповещений на панели инструментов. Предупреждения в рабочих областях, созданных после 1 июня 2019 года, или в рабочих областях, которые были обновлены с устаревшего API оповещений Log Analytics до API scheduledQueryRules, можно включить в шаблон.

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

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

  • Убедитесь, что ваша подписка Azure позволяет создавать рабочие области Log Analytics в целевом регионе.

Простой

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

Подготовить

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

Примечание.

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

  1. Войдите на портал Azure и щелкните Группы ресурсов.

  2. Найдите группу ресурсов, содержащую вашу рабочую область, и щелкните ее.

  3. Чтобы просмотреть ресурс оповещений, установите флажок Показать скрытые типы.

  4. Выберите фильтр Типы. Выберите рабочую область Log Analytics, решение, SavedSearches, microsoft.insights/scheduledqueryrules, defaultQueryPack и другие имеющиеся ресурсы, связанные с рабочей областью (например, учетную запись службы автоматизации). Затем выберите Применить.

  5. Выберите рабочую область, решения, сохраненные поисковые запросы, оповещения, пакеты запросов и другие ресурсы, связанные с рабочей областью (например, учетную запись службы автоматизации). Затем на панели инструментов выберите Экспорт шаблона.

    Примечание.

    Нельзя экспортировать Microsoft Sentinel с шаблоном. Вам необходимо подключить Sentinel к целевой рабочей области.

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

  7. Выберите Изменить параметры на панели инструментов, чтобы открыть файл parameters.json в интерактивном редакторе.

  8. Чтобы изменить параметры, измените свойство value в разделе parameters. Приведем пример:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "workspaces_name": {
          "value": "my-workspace-name"
        },
        "workspaceResourceId": {
          "value": "/subscriptions/resource-id/resourceGroups/resource-group-name/providers/Microsoft.OperationalInsights/workspaces/workspace-name"
        },
        "alertName": {
          "value": "my-alert-name"
        },
        "querypacks_name": {
          "value": "my-default-query-pack-name"
        }
      }
    }
    
  9. Выберите в редакторе команду Сохранить.

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

  1. Выберите Изменить шаблон на панели инструментов, чтобы открыть файл template.json в интерактивном редакторе.

  2. Чтобы отредактировать целевой регион, в котором будет развернута рабочая область Log Analytics, измените свойство location в разделе resources в интерактивном редакторе.

    Чтобы получить коды расположения регионов, см. статью Место расположения данных в Azure. Код региона — это имя региона без пробелов. Например, для региона Центральная часть США это centralus.

  3. Удалите ресурсы связанных служб microsoft.operationalinsights/workspaces/linkedservices, если они присутствуют в шаблоне. Эти ресурсы необходимо перенастроить вручную в целевой рабочей области.

    Следующий пример шаблона включает рабочую область, сохраненный поиск, решения, оповещение и пакет запросов:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "workspaces_name": {
          "type": "String"
        },
        "workspaceResourceId": {
          "type": "String"
        },
        "alertName": {
          "type": "String"
        },
        "querypacks_name": {
          "type": "String"
        }
      },
      "variables": {},
      "resources": [
        {
          "type": "microsoft.operationalinsights/workspaces",
          "apiVersion": "2020-08-01",
          "name": "[parameters('workspaces_name')]",
          "location": "france central",
          "properties": {
            "sku": {
              "name": "pergb2018"
            },
            "retentionInDays": 30,
            "features": {
              "enableLogAccessUsingOnlyResourcePermissions": true
            },
            "workspaceCapping": {
              "dailyQuotaGb": -1
            },
            "publicNetworkAccessForIngestion": "Enabled",
            "publicNetworkAccessForQuery": "Enabled"
          }
        },
        {
          "type": "Microsoft.OperationalInsights/workspaces/savedSearches",
          "apiVersion": "2020-08-01",
          "name": "[concat(parameters('workspaces_name'), '/2b5112ec-5ad0-5eda-80e9-ad98b51d4aba')]",
          "dependsOn": [
            "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspaces_name'))]"
          ],
          "properties": {
            "category": "VM Monitoring",
            "displayName": "List all versions of curl in use",
            "query": "VMProcess\n| where ExecutableName == \"curl\"\n| distinct ProductVersion",
            "tags": [],
            "version": 2
          }
        },
        {
          "type": "Microsoft.OperationsManagement/solutions",
          "apiVersion": "2015-11-01-preview",
          "name": "[concat('Updates(', parameters('workspaces_name'))]",
          "location": "france central",
          "dependsOn": [
            "[resourceId('microsoft.operationalinsights/workspaces', parameters('workspaces_name'))]"
          ],
          "plan": {
            "name": "[concat('Updates(', parameters('workspaces_name'))]",
            "promotionCode": "",
            "product": "OMSGallery/Updates",
            "publisher": "Microsoft"
          },
          "properties": {
            "workspaceResourceId": "[resourceId('microsoft.operationalinsights/workspaces', parameters('workspaces_name'))]",
            "containedResources": [
              "[concat(resourceId('microsoft.operationalinsights/workspaces', parameters('workspaces_name')), '/views/Updates(', parameters('workspaces_name'), ')')]"
            ]
          }
        }
        {
          "type": "Microsoft.OperationsManagement/solutions",
          "apiVersion": "2015-11-01-preview",
          "name": "[concat('VMInsights(', parameters('workspaces_name'))]",
          "location": "france central",
          "plan": {
            "name": "[concat('VMInsights(', parameters('workspaces_name'))]",
            "promotionCode": "",
            "product": "OMSGallery/VMInsights",
            "publisher": "Microsoft"
          },
          "properties": {
            "workspaceResourceId": "[resourceId('microsoft.operationalinsights/workspaces', parameters('workspaces_name'))]",
            "containedResources": [
              "[concat(resourceId('microsoft.operationalinsights/workspaces', parameters('workspaces_name')), '/views/VMInsights(', parameters('workspaces_name'), ')')]"
            ]
          }
        },
        {
          "type": "microsoft.insights/scheduledqueryrules",
          "apiVersion": "2021-08-01",
          "name": "[parameters('alertName')]",
          "location": "france central",
          "properties": {
            "displayName": "[parameters('alertName')]",
            "severity": 3,
            "enabled": true,
            "evaluationFrequency": "PT5M",
            "scopes": [
              "[parameters('workspaceResourceId')]"
            ],
            "windowSize": "PT15M",
            "criteria": {
              "allOf": [
                {
                  "query": "Heartbeat | where computer == 'my computer name'",
                  "timeAggregation": "Count",
                  "operator": "LessThan",
                  "threshold": 14,
                  "failingPeriods": {
                    "numberOfEvaluationPeriods": 1,
                    "minFailingPeriodsToAlert": 1
                  }
                }
              ]
            },
            "autoMitigate": true,
            "actions": {}
          }
        },
        {
          "type": "Microsoft.OperationalInsights/querypacks",
          "apiVersion": "2019-09-01-preview",
          "name": "[parameters('querypacks_name')]",
          "location": "francecentral",
          "properties": {}
        },
        {
          "type": "Microsoft.OperationalInsights/querypacks/queries",
          "apiVersion": "2019-09-01-preview",
          "name": "[concat(parameters('querypacks_name'), '/00000000-0000-0000-0000-000000000000')]",
          "dependsOn": [
            "[resourceId('Microsoft.OperationalInsights/querypacks', parameters('querypacks_name'))]"
          ],
          "properties": {
            "displayName": "my-query-name",
            "body": "my-query-text",
            "related": {
              "categories": [],
              "resourceTypes": [
                  "microsoft.operationalinsights/workspaces"
              ]
            },
            "tags": {
              "labels": []
            }
          }
        }
      ]
    }
    
  4. Выберите Сохранить в интерактивном редакторе.

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

  1. Щелкните Подписка, чтобы выбрать подписку, в которой будет развернута целевая рабочая область.

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

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

  4. Нажмите кнопку Проверить и создать, чтобы проверить свой шаблон.

  5. Щелкните Создать, чтобы развернуть рабочую область и выбранный ресурс в целевом регионе.

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

    • Подключение агентов — используйте любой из доступных параметров, включая правила сбора данных, чтобы настроить необходимые агенты на виртуальных машинах и в наборах масштабирования виртуальных машин, а также указать новую целевую рабочую область в качестве назначения.
    • Параметры диагностики — обновите параметры диагностики в идентифицированных ресурсах с целевой рабочей областью в качестве назначения.
    • Установка решений — некоторые решения, например Microsoft Sentinel, требуют определенной процедуры подключения и не были включены в шаблон. Их следует подключать к новой рабочей области отдельно.
    • Настройка API сборщика данных — настройте экземпляры API сборщика данных на отправку данных в целевую рабочую область.
    • Настройка правил генерации оповещений — когда оповещения не экспортируются в шаблон, их необходимо настроить вручную в целевой рабочей области.
  7. Убедитесь, что новые данные не принимаются в исходной рабочей области. Выполните следующий запрос в исходной рабочей области и убедитесь в отсутствии приема после миграции:

    search *
    | where TimeGenerated > ago(12h)
    | summarize max(TimeGenerated) by Type
    

После подключения источников данных к целевой рабочей области принятые данные сохраняются в целевой рабочей области. Более старые данные остаются в исходной рабочей области и подчиняются политике хранения. Вы можете выполнить запрос между рабочими областями. Если обеим рабочим областям назначено одно имя, используйте полное имя (subscriptionName/resourceGroup/componentName) в ссылке на рабочую область.

Ниже приведен пример запроса для двух рабочих областей с одним именем:

union 
  workspace('subscription-name1/<resource-group-name1/<original-workspace-name>')Update, 
  workspace('subscription-name2/<resource-group-name2/<target-workspace-name>').Update, 
| where TimeGenerated >= ago(1h)
| where UpdateState == "Needed"
| summarize dcount(Computer) by Classification

Игнорировать

Если нужно отменить исходную рабочую область, удалите экспортированные ресурсы или группу ресурсов, которая их содержит:

  1. Выберите целевую группу ресурсов на портале Azure.

  2. На странице Обзор сделайте следующее:

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

Очистка

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

Если вам больше не нужен доступ к старым данным в исходной рабочей области, сделайте следующее:

  1. Выберите исходную группу ресурсов на портале Azure.
  2. Выберите все ресурсы, которые необходимо удалить, а затем на панели инструментов выберите Удалить.