Отслеживайте процесс миграции с помощью панели мониторинга, включающей SQL Server на базе Azure Arc

Применимо к:SQL Server

Панель мониторинга миграции — это удобное представление, в котором отображаются все экземпляры SQL Server, включенные Azure Arc и их готовность к миграции. SQL Server, включенный в Azure Arc, автоматически создает оценку для миграции в Azure. Эта оценка играет важную роль в успешности миграции и модернизации облака. С помощью этой панели мониторинга можно отслеживать процесс миграции на большом масштабе. Готовность проецируется в виде свойств в плоскость управления Azure, что позволяет использовать организационные, тегы и возможности запросов, собственные для Azure.

Панель мониторинга предоставляет следующие возможности:

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

Проверка оценки миграции

Доступ к панели мониторинга миграции можно получить следующим образом:

  • На портале Azure найдите Azure Arc и перейдите в центр Azure Arc.
  • На левой панели разверните службы данных и перейдите на серверы SQL.
  • Перейдите на вкладку "Панель мониторинга миграции ".

Скриншот, показывающий панель управления миграцией для SQL Server, включенную с помощью Azure Arc.

Сводка обнаруженных экземпляров и баз данных SQL Server

В первом разделе панели мониторинга представлен обзор всех инстанс SQL Server и баз данных, доступных вам. Также можно увидеть распределение экземпляров по версиям и выпускам.

Скриншот, на котором показана панель мониторинга миграции, отображающая экземпляры и базы данных SQL Server, а также их распределение по версиям и редакциям.

Сводка по оценке миграции SQL Server

В этом разделе панели мониторинга представлен обзор оценки миграции и готовности к миграции экземпляров SQL Server, включенных Azure Arc. Вы можете узнать, сколько экземпляров доступно для оценки. Готовность к миграции для каждого предложения Azure SQL отображается отдельно.

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

запрос Azure Resource Graph

Azure Resource Graph предоставляет эффективные и производительные средства для запроса свойств готовности экземпляров SQL Server, подключенных через Azure Arc. Ниже приведены некоторые примеры запросов.

resources
 | where type == 'microsoft.azurearcdata/sqlserverinstances'
 | where properties.migration.assessment.assessmentUploadTime > ago(14d) and properties.migration.assessment.enabled == true and isnotnull(parse_json(properties.migration.assessment.skuRecommendationResults))
 | extend azureSqlDatabaseRecommendationStatus = tostring(properties.migration.assessment.skuRecommendationResults.azureSqlDatabase.recommendationStatus)
 | extend azureSqlManagedInstanceRecommendationStatus = tostring(properties.migration.assessment.skuRecommendationResults.azureSqlManagedInstance.recommendationStatus)
 | extend azureSqlVirtualMachineRecommendationStatus = tostring(properties.migration.assessment.skuRecommendationResults.azureSqlVirtualMachine.recommendationStatus)
 | extend serverAssessments = tostring(properties.migration.assessment.serverAssessments)
 | extend subscriptionId = extract(@"/subscriptions/([^/]+)", 1, id)
 | extend resourceGroup = extract(@"/resource[g/G]roups/([^/]+)", 1, id)
 | mv-expand platformStatus = pack_array(
     pack("platform", "Azure SQL Database", "status", azureSqlDatabaseRecommendationStatus),
     pack("platform", "Azure SQL Managed Instance", "status", azureSqlManagedInstanceRecommendationStatus),
     pack("platform", "Azure SQL Virtual Machine", "status", azureSqlVirtualMachineRecommendationStatus)
   )
 | extend platformIncludedString = strcat('"AppliesToMigrationTargetPlatform":', strcat('"', replace(" ", "", tolower(tostring(platformStatus["platform"]))), '"'))
 | extend platformHasIssues = tolower(serverAssessments) has tolower(platformIncludedString)
 | project Platform = tostring(platformStatus["platform"]), status = tostring(platformStatus["status"]), tostring(serverAssessments), id, platformHasIssues
 | extend finalStatus = case(
     status == "Ready" and platformHasIssues, "Ready with Conditions",
     status == "Ready", "Ready",
     status == "NotReady", "NotReady",
     isnull(status) or status !in ("Ready", "NotReady", "Ready with Conditions"), "Unknown",
     "Unknown")
 | summarize TotalAssessed = count(), Ready = countif(finalStatus == "Ready"), NotReady = countif(finalStatus == "NotReady"),
     ReadyWithConditions = countif(finalStatus == "Ready with Conditions"), Unknown = countif(finalStatus == "Unknown")
     by Platform
az graph query -q "resources | where type =~ 'microsoft.hybridcompute/machines' | extend machineId = tolower(tostring(id)), datacenter = iif(isnull(tags.Datacenter), '', tags.Datacenter), status = tostring(properties.status) | extend mssqlinstalled = coalesce(tobool(properties.detectedProperties.mssqldiscovered),false) | extend pgsqlinstalled = coalesce(tobool(properties.detectedProperties.pgsqldiscovered),false) | extend mysqlinstalled = coalesce(tobool(properties.detectedProperties.mysqldiscovered),false) | extend osSku = properties.osSku, osName = properties.osName, osVersion = properties.osVersion | extend coreCount = tostring(properties.detectedProperties.logicalCoreCount), totalPhysicalMemoryinGB = tostring(properties.detectedProperties.totalPhysicalMemoryInGigabytes)  | extend operatingSystem = iif(isnotnull(osSku), osSku, osName) | where mssqlinstalled or mysqlinstalled or pgsqlinstalled | project id ,name, type, resourceGroup, subscriptionId, location, kind, osVersion, status, osSku,coreCount,totalPhysicalMemoryinGB,tags, mssqlinstalled, mysqlinstalled, pgsqlinstalled | sort by (tolower(tostring(name))) asc"