Azure Migrate 设备发现的元数据

本文提供 Azure Migrate 设备发现的元数据的详细信息。

Azure Migrate 设备是“Azure Migrate: 发现和评估”工具使用的一种轻型设备,可发现在环境中运行的服务器,并将服务器配置和性能元数据发送到 Azure。

Azure Migrate 设备发现的元数据有助于评估服务器是否准备好迁移到 Azure、调整服务器大小以及计划好成本。 Azure 不会在任何许可证合规性审核中使用此数据。

为 VMware 服务器收集的元数据

设备从 VMware 环境中运行的服务器收集配置、性能元数据、有关已安装应用程序的数据、角色和功能(软件清单),以及依赖项数据(如果启用了无代理依赖项分析)。

下面是设备收集并发送到 Azure 的服务器元数据的完整列表:

数据 计数器
服务器详细信息
服务器 ID vm.Config.InstanceUuid
服务器名称 vm.Config.Name
vCenter Server ID VMwareClient.Instance.Uuid
服务器说明 vm.Summary.Config.Annotation
许可证产品名称 vm.Client.ServiceContent.About.LicenseProductName
操作系统类型 vm.SummaryConfig.GuestFullName
启动类型 vm.Config.Firmware
内核数 vm.Config.Hardware.NumCPU
内存 (MB) vm.Config.Hardware.MemoryMB
磁盘数目 vm.Config.Hardware.Device.ToList().FindAll(x => is VirtualDisk).count
磁盘大小列表 vm.Config.Hardware.Device.ToList().FindAll(x => is VirtualDisk)
网络适配器列表 vm.Config.Hardware.Device.ToList().FindAll(x => is VirtualEthernet).count
CPU 使用率 cpu.usage.average
内存利用率 mem.usage.average
处理器型号/名称 vm.Config.Hardware.CpuModel
处理器中的套接字数 vm.Config.Hardware.NumCpuPkgs
每磁盘详细信息
磁盘密钥值 disk.Key
Dikunit 数量 disk.UnitNumber
磁盘控制器密钥值 disk.ControllerKey.Value
预配量 (GB) virtualDisk.DeviceInfo.Summary
磁盘名称 使用 disk.UnitNumber, disk.Key 和 disk.ControllerKey.VAlue 生成此值
每秒读取操作数 virtualDisk.numberReadAveraged.average
每秒写入操作数 virtualDisk.numberWriteAveraged.average
读取吞吐量(MB/秒) virtualDisk.read.average
写入吞吐量(MB/秒) virtualDisk.write.average
每 NIC 详细信息
网络适配器名称 nic.Key
MAC 地址 ((VirtualEthernetCard)nic).MacAddress
IPv4 地址 vm.Guest.Net
IPv6 地址 vm.Guest.Net
读取吞吐量(MB/秒) net.received.average
写入吞吐量(MB/秒) net.transmitted.average
库存路径详细信息
名称 container.GetType().Name
子对象类型 container.ChildType
引用详细信息 container.MoRef
父级详细信息 Container.Parent
每个服务器的文件夹详细信息 ((Folder)container).ChildEntity.Type
每个服务器的数据中心详细信息 ((Datacenter)container).VmFolder
每个主机文件夹的数据中心详细信息 ((Datacenter)container).HostFolder
每个主机的群集详细信息 ((ClusterComputeResource)container).Host
每个服务器的主机详细信息 ((HostSystem)container).VM

性能元数据

下面是设备为在 VMware 上运行的服务器收集并发送到 Azure 的性能数据:

数据 计数器 评估影响
CPU 使用率 cpu.usage.average 建议的服务器大小/成本
内存利用率 mem.usage.average 建议的服务器大小/成本
磁盘读取吞吐量(MB/秒) virtualDisk.read.average 计算磁盘大小、存储成本和服务器大小
磁盘写入吞吐量(MB/秒) virtualDisk.write.average 计算磁盘大小、存储成本和服务器大小
每秒的磁盘读取操作次数 virtualDisk.numberReadAveraged.average 计算磁盘大小、存储成本和服务器大小
每秒的磁盘写入操作次数 virtualDisk.numberWriteAveraged.average 计算磁盘大小、存储成本和服务器大小
NIC 读取吞吐量(MB/秒) net.received.average 计算服务器大小
NIC 写入吞吐量(MB/秒) net.transmitted.average 计算服务器大小

为 Hyper-V 服务器收集的元数据

设备从 Hyper-V 环境中运行的服务器收集配置、性能元数据、有关已安装应用程序的数据、角色和功能(软件清单),以及依赖项数据(如果启用了无代理依赖项分析)。

下面是设备收集并发送到 Azure 的服务器元数据的完整列表。

数据 WMI 类 WMI 类属性
服务器详细信息
BIOS 的序列号 Msvm_BIOSElement BIOSSerialNumber
服务器类型(第 1 代或第 2 代) Msvm_VirtualSystemSettingData VirtualSystemSubType
服务器显示名称 Msvm_VirtualSystemSettingData ElementName
服务器版本 Msvm_ProcessorSettingData VirtualQuantity
内存(字节) Msvm_MemorySettingData VirtualQuantity
服务器可以使用的最大内存 Msvm_MemorySettingData 限制
已启用动态内存 Msvm_MemorySettingData DynamicMemoryEnabled
操作系统名称/版本/FQDN Msvm_KvpExchangeComponent GuestIntrinsicExchangeItems 名称数据
服务器电源状态 Msvm_ComputerSystem EnabledState
每磁盘详细信息
磁盘标识符 Msvm_VirtualHardDiskSettingData VirtualDiskId
虚拟硬盘类型 Msvm_VirtualHardDiskSettingData 类型
虚拟硬盘大小 Msvm_VirtualHardDiskSettingData MaxInternalSize
虚拟硬盘父级 Msvm_VirtualHardDiskSettingData ParentPath
每 NIC 详细信息
IP 地址(综合 NIC) Msvm_GuestNetworkAdapterConfiguration IPAddresses
已启用 DHCP(综合 NIC) Msvm_GuestNetworkAdapterConfiguration DHCPEnabled
NIC ID(综合 NIC) Msvm_SyntheticEthernetPortSettingData InstanceID
NIC MAC 地址(综合 NIC) Msvm_SyntheticEthernetPortSettingData 地址
NIC ID(旧 NIC) MsvmEmulatedEthernetPortSetting 数据 InstanceID
NIC MAC ID(旧 NIC) MsvmEmulatedEthernetPortSetting 数据 地址

性能数据

下面是设备收集并发送到 Azure 的服务器性能数据。

性能计数器类 计数器 评估影响
Hyper-V 虚拟机监控程序虚拟处理器 % 来宾运行时间 建议的服务器大小/成本
Hyper-V 动态内存服务器 当前压力 (%)
来宾可见物理内存 (MB)
建议的服务器大小/成本
Hyper-V 虚拟存储设备 读取的字节数/秒 计算磁盘大小、存储成本和服务器大小
Hyper-V 虚拟存储设备 写入的字节数/秒 计算磁盘大小、存储成本和服务器大小
Hyper-V 虚拟网络适配器 接收的字节数/秒 计算服务器大小
Hyper-V 虚拟网络适配器 发送的字节数/秒 计算服务器大小
  • CPU 使用率是所有附加到服务器的虚拟处理器的所有使用量之和。
  • 内存使用率为(当前压力 * 来宾可见物理内存)/100。
  • 从列出的 Hyper-V 性能计数器中可收集磁盘和网络利用率值。

为物理服务器收集的数据

设备从其他云(例如 AWS、GCP 等)上运行的物理服务器或服务器收集配置、性能元数据、有关已安装应用程序的数据、角色和功能(软件清单),以及依赖项数据(如果启用了无代理依赖项分析)。

Windows Server 元数据

下面是设备收集并发送到 Azure 的 Windows 服务器元数据的完整列表。

数据 WMI 类 WMI 类属性
FQDN Win32_ComputerSystem Domain、Name、PartOfDomain
处理器核心计数 Win32_PRocessor NumberOfCores
分配的内存 Win32_ComputerSystem TotalPhysicalMemory
BIOS 序列号 Win32_ComputerSystemProduct IdentifyingNumber
BIOS GUID Win32_ComputerSystemProduct UUID
启动类型 Win32_DiskPartition 检查 EFI/BIOS 类型 = GPT:System 的分区
OS 名称 Win32_OperatingSystem Caption
OS 版本 Win32_OperatingSystem 版本
OS 体系结构 Win32_OperatingSystem OSArchitecture
磁盘计数 Win32_DiskDrive Model、Size、DeviceID、MediaType、Name
磁盘大小 Win32_DiskDrive 大小
NIC 列表 Win32_NetworkAdapterConfiguration Description、Index
NIC IP 地址 Win32_NetworkAdapterConfiguration IPAddress
NIC MAC 地址 Win32_NetworkAdapterConfiguration MACAddress

Windows 服务器性能数据

下面是设备收集并发送到 Azure 的 Windows 服务器性能数据。

数据 WMI 类 WMI 类属性
CPU 使用率 Win32_PerfFormattedData_PerfOS_Processor PercentIdleTime
内存使用率 Win32_PerfFormattedData_PerfOS_Memory AvailableMBytes
NIC 计数 Win32_PerfFormattedData_Tcpip_NetworkInterface 获取网络设备计数。
每 NIC 接收的数据 Win32_PerfFormattedData_Tcpip_NetworkInterface BytesReceivedPerSec
每 NIC 传输的数据 BWin32_PerfFormattedData_Tcpip_NetworkInterface BytesSentPersec
磁盘计数 BWin32_PerfFormattedData_PerfDisk_PhysicalDisk 磁盘计数
磁盘详细信息 Win32_PerfFormattedData_PerfDisk_PhysicalDisk DiskWritesPerSec、DiskWriteBytesPerSec、DiskReadsPerSec、DiskReadBytesPerSec。

Linux Server 元数据

下面是设备收集并发送到 Azure 的 Linux 服务器元数据的完整列表。

数据 命令
FQDN cat /proc/sys/kernel/hostname, hostname -f
处理器核心计数 cat /proc/cpuinfo | awk '/^processor/{print $3}' | wc -l
分配的内存 cat /proc/meminfo | grep MemTotal | awk '{printf "%.0f", $2/1024}'
BIOS 序列号 lshw | grep "serial:" | head -n1 | awk '{print $2}'
/usr/sbin/dmidecode -t 1 | grep 'Serial' | awk '{ $1="" ; $2=""; print}'
BIOS GUID cat /sys/class/dmi/id/product_uuid
启动类型 [ -d /sys/firmware/efi ] && echo EFI || echo BIOS
OS 名称/版本 可以访问以下文件获取 OS 版本和名称:

/etc/os-release
/usr/lib/os-release
/etc/enterprise-release
/etc/redhat-release
/etc/oracle-release
/etc/SuSE-release
/etc/lsb-release
/etc/debian_version
OS 体系结构 uname -m
磁盘计数 fdisk -l | egrep 'Disk.*bytes' | awk '{print $2}' | cut -f1 -d ':'
启动磁盘 df /boot | sed -n 2p | awk '{print $1}'
磁盘大小 fdisk -l | egrep 'Disk.*bytes' | egrep $disk: | awk '{print $5}'
NIC 列表 ip -o -4 addr show | awk '{print $2}'
NIC IP 地址 ip addr show $nic | grep inet | awk '{print $2}' | cut -f1 -d "/"
NIC MAC 地址 ip addr show $nic | grep ether | awk '{print $2}'

Linux 服务器性能数据

下面是设备收集并发送到 Azure 的 Linux 服务器性能数据。

数据 命令
CPU 使用率 cat /proc/stat/ | grep 'cpu' /proc/stat
内存使用率 free | grep Mem | awk '{print $3/$2 * 100.0}'
NIC 计数 lshw -class network | grep eth[0-60] | wc -l
每 NIC 接收的数据 cat /sys/class/net/eth$nic/statistics/rx_bytes
每 NIC 传输的数据 cat /sys/class/net/eth$nic/statistics/tx_bytes
磁盘计数 fdisk -l | egrep 'Disk.*bytes' | awk '{print $2}' | cut -f1 -d ':'
磁盘详细信息 cat /proc/diskstats

软件清单数据

设备从 VMware 环境/Hyper-V 环境中运行的服务器、其他云(例如 AWS、GCP 等)上运行的物理服务器或服务器收集有关已安装应用程序的数据、角色和功能(软件清单)。

Windows 服务器应用程序数据

以下是设备从每个发现的 Windows 服务器中收集的软件清单数据:

数据 注册表位置
应用程序名称 HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall*
HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall*
DisplayName
版本 HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall*
HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall*
DisplayVersion
提供程序 HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall*
HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall*
发布服务器

Windows Server 功能数据

以下是设备从每个发现的 Windows 服务器中收集的功能数据:

数据 PowerShell Cmdlet 属性
名称 Get-WindowsFeature 名称
特征类型 Get-WindowsFeature FeatureType
Parent Get-WindowsFeature Parent

Windows Server 操作系统数据

以下是设备从每个发现的 Windows 服务器中收集的操作系统数据:

数据 WMI 类 WMI 类属性
名称 Win32_operatingsystem 标题
版本 Win32_operatingsystem 版本
体系结构 Win32_operatingsystem OSArchitecture

SQL Server 元数据

以下是设备从每个发现的 Windows 服务器中收集的 SQL Server 数据:

数据 注册表位置
名称 HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL installedInstance
版本 HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\Setup 版本
Service Pack HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\Setup SP
版本 HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\Setup 版本

Linux 服务器应用程序数据

以下是设备从每个发现的 Linux 服务器中收集的软件清单数据。 根据服务器的操作系统,运行一个或多个命令。

数据 命令
名称 rpm,dpkg-query,snap
版本 rpm,dpkg-query,snap
提供程序 rpm,dpkg-query,snap

Linux Server 操作系统数据

以下是设备从每个发现的 Linux 服务器中收集的操作系统数据:

数据 命令
名称
版本
从以下一个或多个文件收集:

/etc/os-release
/usr/lib/os-release
/etc/enterprise-release
/etc/redhat-release
/etc/oracle-release
/etc/SuSE-release
/etc/lsb-release
/etc/debian_version
体系结构 uname

SQL Server 实例和数据库数据

用于发现 VMware VM 的 Azure Migrate 设备还可以在 SQL Server 实例和数据库上收集数据。

SQL 数据库元数据

数据库元数据 视图/ SQL Server 属性
数据库的唯一标识符 sys.databases
服务器定义的数据库 ID sys.databases
数据库的名称 sys.databases
数据库的兼容级别 sys.databases
数据库的排序规则名称 sys.databases
数据库的状态 sys.databases
数据库的大小(以 MB 为单位) sys.master_files
包含数据文件的位置的驱动器号 SERVERPROPERTY 和 Software\Microsoft\MSSQLServer\MSSQLServer
数据库文件列表 sys.databases, sys.master_files
Service Broker 是否被启用 sys.databases
是否对数据库启用变更数据捕获 sys.databases
Always On 可用性组数据库和状态 sys.dm_hadr_database_replica_states

SQL Server 元数据

Server 元数据 视图/ SQL Server 属性
服务器名称 SERVERPROPERTY
FQDN 从安装的应用程序的发现派生的连接字符串
安装 ID sys.dm_server_registry
服务器版本 SERVERPROPERTY
服务器版本 SERVERPROPERTY
服务器主机平台 (Windows/Linux) SERVERPROPERTY
服务器的产品级别 (RTM SP CTP) SERVERPROPERTY
默认备份路径 SERVERPROPERTY
数据文件的默认路径 SERVERPROPERTY 和 Software\Microsoft\MSSQLServer\MSSQLServer
日志文件的默认路径 SERVERPROPERTY 和 Software\Microsoft\MSSQLServer\MSSQLServer
否。 服务器上的内核数 sys.dm_os_schedulers, sys.dm_os_sys_info
服务器排序规则名称 SERVERPROPERTY
否。 具有可见联机状态的服务器上的内核数 sys.dm_os_schedulers
唯一服务器 ID sys.dm_server_registry
是否启用 HA SERVERPROPERTY
是否启用缓冲池扩展 sys.dm_os_buffer_pool_extension_configuration
是否配置故障转移群集 SERVERPROPERTY
仅使用 Windows 身份验证模式的服务器 SERVERPROPERTY
服务器安装 PolyBase SERVERPROPERTY
否。 系统的逻辑 CPU 数 sys.dm_server_registry, sys.dm_os_sys_info
一个物理处理器包公开的逻辑内核数或物理内核数的比率 sys.dm_os_schedulers, sys.dm_os_sys_info
系统上的物理 CPU 数 sys.dm_os_schedulers, sys.dm_os_sys_info
服务器上次启动的日期和时间 sys.dm_server_registry
服务器最大内存使用量(以 MB 为单位) sys.dm_os_process_memory
所有数据库的用户总数 sys.databases, sys.logins
所有用户数据库的总大小 sys.databases
临时数据库的大小 sys.master_files, sys.configurations, sys.dm_os_sys_info
否。 登录名 sys.logins
链接服务器列表 sys.servers
代理作业列表 [msdb].[dbo].[sysjobs], [sys].[syslogins], [msdb].[dbo].[syscategories]
Always On 可用性组、副本及其状态 sys.availability_groups、sys.dm_hadr_availability_group_states、sys.availability_group_listeners、sys.availability_group_listener_ip_addresses、sys.availability_replicas、sys.dm_hadr_availability_replica_states
Always On 故障转移群集实例 sys.dm_hadr_cluster、sys.dm_hadr_cluster_members、sys.dm_hadr_cluster_networks

性能元数据

“性能” 视图/ SQL Server 属性 评估影响
SQL Server CPU 使用率 sys.dm_os_ring_buffers 推荐的 SKU 大小(CPU 维度)
SQL 逻辑 CPU 计数 sys.dm_os_sys_info 推荐的 SKU 大小(CPU 维度)
正在使用的 SQL 物理内存 sys.dm_os_process_memory 未使用
SQL 内存使用率百分比 sys.dm_os_process_memory 未使用
数据库 CPU 使用率 sys.dm_exec_query_stats, sys.dm_exec_plan_attributes 推荐的 SKU 大小(CPU 维度)
使用的数据库内存(缓冲池) sys.dm_os_buffer_descriptors 推荐的 SKU 大小(内存维度)
文件读取/写入 IO sys.dm_io_virtual_file_stats, sys.master_files 推荐的 SKU 大小(IO 维度)
读/写文件数 sys.dm_io_virtual_file_stats, sys.master_files 推荐的 SKU 大小(吞吐量维度)
文件 IO 停止读取/写入 (ms) sys.dm_io_virtual_file_stats, sys.master_files 推荐的 SKU 大小(IO 延迟维度)
文件大小 sys.master_files 推荐的 SKU 大小(存储维度)

ASP.NET Web 应用数据

用于发现 VM 的 Azure Migrate 设备还可以收集 ASP.NET Web 应用程序上的数据。

以下是该设备从环境中发现的每个 Windows Server 中收集的 Web 应用配置数据。

实体 数据
Web 应用 应用程序名称
配置路径
前端绑定
已启用的框架
承载 Web 服务器
Sub-Applications 和虚拟应用程序
应用程序池名称
运行时版本
托管管道模式
Web 服务器 服务器名称
服务器类型(当前仅限 IIS)
配置位置
版本
FQDN
用于发现的凭据
应用程序的列表

Java Web 应用数据

实体 数据
Web 应用 应用程序名称
Web 服务器 ID
Web 服务器名称
显示名称
目录
配置
绑定
发现的框架(可能包含 JVM 版本)
请求(CPU 请求)
限制(CPU 限制)
WorkloadType
应用程序暂存路径
静态文件夹
Web 服务器 OS 类型
操作系统名称
OS 版本。
操作系统体系结构
主机名
CatalinaHomes
Tomcat 版本
JVM 版本
用户名
用户 ID
组名称
组 ID

Spring Boot Web 应用数据

用于发现的 Azure Migrate 设备还可以收集 Spring Boot Web 应用程序上的数据。

以下是该设备从环境中发现的每个 Windows Server 中收集的 Web 应用配置数据。

实体 数据
Web 应用 应用程序名称
Maven 项目名称
JAR 文件位置
JAR 文件校验和
JAR 文件大小
Spring Boot 版本
Maven 生成 JDK 版本
应用程序属性文件
证书文件名
静态内容位置
应用程序端口
绑定端口(包括应用端口)
日志记录配置
JAR 文件上次修改时间
OS 运行时 OS 安装的 JDK 版本
JVM 选项
JVM 堆内存
OS 名称
OS 版本
环境变量

应用程序依赖关系数据

对于在 VMware 环境/Hyper-V 环境中运行的服务器、其他云(例如 AWS、GCP 等)上运行的物理服务器或服务器,Azure Migrate 设备可以收集有关服务器间依赖关系的数据。

Windows Server 依赖关系数据

下面是设备从已通过门户为无代理依赖项分析启用的每个 Windows 服务器收集的连接数据:

数据 命令
本地端口 netstat
本地 IP 地址 netstat
远程端口 netstat
远程 IP 地址 netstat
TCP 连接状态 netstat
进程 ID netstat
活动连接数 netstat
数据 WMI 类 WMI 类属性
进程名称 Win32_Process ExecutablePath
进程参数 Win32_Process CommandLine
应用程序名称 Win32_Process ExecutablePath 属性的 VersionInfo.ProductName 参数

Linux Server 依赖关系数据

下面是设备从已为无代理依赖项分析启用的每个 Linux 服务器收集的连接数据。

数据 命令
本地端口 netstat
本地 IP 地址 netstat
远程端口 netstat
远程 IP 地址 netstat
TCP 连接状态 netstat
活动连接数 netstat
进程 ID netstat
进程名称 ps
进程参数 ps
应用程序名称 dpkg 或 rpm

后续步骤