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 |