實體伺服器探索和評量的支援矩陣
本文摘要說明使用 Azure Migrate:探索和評估工具來評估是否要將實體伺服器移轉至 Azure 時的必要條件和支援需求。 如果您想要將實體伺服器移轉至 Azure,則請參閱移轉支援矩陣。
若要評估實體伺服器,您必須建立專案,並將「Azure Migrate:探索和評量」工具新增至該專案。 在您新增此工具之後,請部署 Azure Migrate 設備。 設備會持續探索內部部署伺服器,並將伺服器的中繼資料和效能資料傳送至 Azure。 探索完成之後,請將探索到的伺服器收集到群組,然後對群組執行評量。
限制
支援 | 詳細資料 |
---|---|
評量限制 | 您可以在單一專案中探索及評估最多 35,000 個實體伺服器。 |
專案限制 | 您可以在 Azure 訂用帳戶中建立多個專案。 除了實體伺服器之外,專案還可以在 VMware 和 Hyper-V 上納入伺服器,數量最多為每個伺服器的評量限制。 |
探索 | Azure Migrate 設備最多可以探索 1000 部實體伺服器。 |
評量 | 您最多可以在單一群組中新增 35,000 部伺服器。 您最多可以在單一評估中評估 35,000 部伺服器。 |
深入了解評估。
實體伺服器需求
實體伺服器部署:實體伺服器可以是獨立伺服器,也可以部署到叢集。
伺服器類型:裸機伺服器、在內部部署環境或 Amazon Web Services (AWS)、Google Cloud Platform (GCP) 和 Xen 這類其他雲端執行的虛擬化伺服器。
注意
目前,Azure Migrate 不支援探索半虛擬化伺服器。
作業系統:所有 Windows 和 Linux 作業系統均可進行移轉評估。
Windows 伺服器的權限
- 若使用 Windows 伺服器,請對已加入網域的伺服器使用網域帳戶,並對未加入網域的伺服器使用本機帳戶。
- 針對實體探索,不支援以下層格式 (domain\username) 和 UPN 格式 (username@domain.com) 指定使用者名稱。
您可以使用下列兩種方式中的其中一種來建立使用者帳戶。
選項 1
建立具有伺服器上管理員權限的帳戶。 使用此帳戶來:
- 透過通用訊息模型 (CIM) 連線,以線上提取設定和效能資料。
- 執行軟體清查 (已安裝應用程式的探索)。
- 使用 PowerShell 遠端,以啟用無代理程式相依性分析。
注意
如果您想要執行軟體清查 (探索已安裝的應用程式),並在 Windows 伺服器上啟用無代理程式相依性分析,則建議您使用選項 1。
選項 2
- 將使用者帳戶新增至下列群組:[遠端管理使用者]、[效能監視器使用者] 和 [效能記錄使用者]。
- 如果 [遠端管理使用者] 群組不存在,則請將下列使用者帳戶新增至 WinRMRemoteWMIUsers_ 群組。
- 帳戶需要有這些權限,設備才能建立與伺服器的 CIM 連線,並從此處所列的 Windows Management Instrumentation (WMI) 類別提取所需的設定和效能中繼資料。
- 在某些情況下,將帳戶新增至這些群組可能不會從 WMI 類別傳回所需的資料。 使用者帳戶控制 (UAC) 可能會篩選此帳戶。 若要克服 UAC 篩選,使用者帳戶必須具有目標伺服器上 CIMV2 命名空間和子命名空間的必要權限。 若要啟用必要權限,請參閱為 Azure Migrate 設備進行疑難排解。
注意
若為 Windows Server 2008 和 2008 R2,請確定伺服器上已安裝 Windows Management Framework 3.0。
為了探索 Windows 伺服器上的 SQL Server 資料庫,因此同時支援 Windows 和 SQL Server 驗證。 您可以在設備設定管理員中提供這兩種驗證類型的認證。 Azure Migrate 需要屬於 sysadmin 伺服器角色的 Windows 使用者帳戶。
Linux 伺服器的權限
若為 Linux 伺服器,您可以根據要執行的功能,透過下列兩種方式的其中一種來建立使用者帳戶。
選項 1
您在要探索的伺服器上必須要有 sudo 使用者帳戶。 使用此帳戶來:
- 提取設定和效能中繼資料。
- 執行軟體清查 (已安裝應用程式的探索)。
- 使用安全殼層 (SSH) 連線,以啟用無代理程式相依性分析。
您需要在 /usr/bin/bash 上啟用 sudo 存取權,才能執行 Linux 伺服器中繼資料中所列出的命令。 除了這些命令之外,使用者帳戶也需要有可供執行 ls 和 netstat 命令的權限,才能執行無代理程式相依性分析。
請確定您啟用 NOPASSWD,讓帳戶執行必要的命令,而不會在每次叫用 sudo 命令時都提示輸入密碼。
Azure Migrate and Modernize 支援使用具有 sudo 存取權的帳戶來探索下列 Linux OS 發行版本:
作業系統 版本 Red Hat Enterprise Linux 5.1、5.3、5.11、6.x、7.x、8.x、9.x Ubuntu 12.04、14.04、16.04、18.04、20.04、22.04 Oracle Linux 6.1、6.7、6.8、6.9、7.2、7.3、7.4、7.5、7.6、7.7、7.8、7.9、8、8.1、8.3、8.5 SUSE Linux 10、11 SP4、12 SP1、12 SP2、12 SP3、12 SP4、15 SP2、15 SP3 Debian 7、8、9、10、11 Amazon Linux 2.0.2021 CoreOS 容器 2345.3.0
注意
如果您想要執行軟體清查 (探索已安裝的應用程式),並在 Linux 伺服器上啟用無代理程式相依性分析,則建議您使用選項 1。
選項 2
如果您無法提供具有 sudo 存取權的根帳戶或使用者帳戶,則可以在設備伺服器的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AzureAppliance 登錄中,將
isSudo
登錄機碼設定為值0
。 使用下列命令來提供具有必要功能的非根帳戶:Command 目的 setcap CAP_DAC_READ_SEARCH+eip /usr/sbin/fdisk
setcap CAP_DAC_READ_SEARCH+eip /sbin/fdisk (如果 /usr/sbin/fdisk 不存在)收集磁碟設定資料。 setcap "cap_dac_override,cap_dac_read_search,cap_fowner,cap_fsetid,cap_setuid,
cap_setpcap,cap_net_bind_service,cap_net_admin,cap_sys_chroot,cap_sys_admin,
cap_sys_resource,cap_audit_control,cap_setfcap=+eip" /sbin/lvm收集磁碟效能資料。 setcap CAP_DAC_READ_SEARCH+eip /usr/sbin/dmidecode 收集 BIOS 序號。 chmod a+r /sys/class/dmi/id/product_uuid 收集 BIOS GUID。 若要在伺服器上執行無代理程式相依性分析,請使用下列命令,確定您也已經在 /bin/netstat 和 /bin/ls 檔案上設定所需的權限:
sudo setcap CAP_DAC_READ_SEARCH,CAP_SYS_PTRACE=ep /bin/ls
sudo setcap CAP_DAC_READ_SEARCH,CAP_SYS_PTRACE=ep /bin/netstat
Azure Migrate 設備需求
Azure Migrate 會使用 Azure Migrate 設備來進行探索和評估。 實體伺服器的設備可以在虛擬機器 (VM) 或實體伺服器上執行。
- 了解實體伺服器的設備需求。
- 了解設備必須在公用和政府雲端中存取的 URL。
- 使用從 Azure 入口網站下載的 PowerShell 指令碼,來設定設備。
- 在 Azure Government 中,使用此指令碼來部署設備。
連接埠存取
下表摘要說明評估的連接埠需求。
裝置 | 連線 |
---|---|
設備 | TCP 連接埠 3389上的輸入連線,以允許遠端桌面對設備連線。 連接埠 44368 上的輸入連線,可使用下列 URL 從遠端存取設備管理應用程式: https://<appliance-ip-or-name>:44368 。連接埠 443 (HTTPS) 上的輸出連線,用以將探索和效能中繼資料傳送至 Azure Migrate and Modernize。 |
實體伺服器 | Windows:WinRM 連接埠 5985 (HTTP) 上的輸入連線,用以從 Windows 伺服器提取設定和效能中繼資料。 Linux:連接埠 22 (TCP) 上的輸入連線,用以從 Linux 伺服器提取設定和效能中繼資料。 |
軟體清查需求
除了探索伺服器之外,「Azure Migrate:探索和評估」還可以在伺服器上執行軟體清查作業。 軟體清查會列出使用 Azure Migrate and Modernize 所探索到並在 Windows 和 Linux 伺服器上執行的應用程式、角色和功能。 其可讓您找出並規劃專為內部部署工作負載量身打造的移轉路徑。
支援 | 詳細資料 |
---|---|
支援的伺服器 | 您可以在從每個 Azure Migrate 設備探索到的最多 1,000 部伺服器上執行軟體清查。 |
作業系統 | 伺服器只要執行的 Windows 和 Linux 版本符合伺服器需求且具有所需的存取權限,就都會受到支援。 |
伺服器需求 | Windows 伺服器必須已啟用 PowerShell 遠端功能,且已安裝 PowerShell 2.0 版或更新版本。 WMI 必須在 Windows 伺服器上啟用並設為可供使用,才能收集伺服器上所安裝角色和功能的詳細資料。 Linux 伺服器必須啟用 SSH 連線,並確保下列命令可以在 Linux 伺服器上執行,才能提取應用程式資料:list、tail、awk、grep、locate、head、sed、ps、print、sort、uniq。 根據作業系統類型和所使用的套件管理員類型,以下是一些其他命令:rpm/snap/dpkg、yum/apt-cache、mssql-server。 |
Windows 伺服器存取權 | Windows 伺服器的來賓使用者帳戶。 |
Linux 伺服器存取權 | 所有 Linux 伺服器的標準使用者帳戶 (非 sudo 存取權)。 |
連接埠存取 | Windows 伺服器需要連接埠 5985 (HTTP) 的存取權。 Linux 伺服器需要連接埠 22 (TCP) 的存取權。 |
探索 | 系統會使用設備上新增的伺服器認證直接連線至伺服器,以執行軟體清查。 設備會使用 PowerShell 遠端功能從 Windows 伺服器收集軟體清查的相關資訊,以及使用 SSH 連線從 Linux 伺服器收集軟體清查的相關資訊。 軟體清查是無代理程式作業。 伺服器上不會安裝任何代理程式。 |
SQL Server 執行個體和資料庫的探索需求
軟體清查會識別 SQL Server 執行個體。 設備會使用此資訊,嘗試透過設備設定管理員中所提供的 Windows 驗證或 SQL Server 驗證認證,來連線至個別的 SQL Server 執行個體。 設備只能連線至具有直視性網路的 SQL Server 執行個體。 軟體清查本身可能不需要直視性網路。
設備連線後,便會收集 SQL Server 執行個體和資料庫的設定與效能資料。 設備會每 24 小時更新 SQL Server 設定資料一次,並且每 30 秒擷取效能資料一次。
支援 | 詳細資料 |
---|---|
支援的伺服器 | 僅支援在 VMware、Microsoft Hyper-V 和實體/裸機環境中執行 SQL Server 的伺服器,以及 AWS 和 GCP 這類其他公用雲端的基礎結構即服務 (IaaS) 伺服器。 您最多可以從單一設備探索到 750 個 SQL Server 執行個體或 15,000 個 SQL 資料庫 (視何者較少)。 建議您確定限定設備探索 600 部以下執行 SQL 的伺服器,以避免調整問題。 |
Windows 伺服器 | 支援 Windows Server 2008 及更新版本。 |
Linux 伺服器 | 目前不支援。 |
驗證機制 | 同時支援 Windows 和 SQL Server 驗證。 您可以在設備設定管理員中提供這兩種驗證類型的認證。 |
SQL Server 存取 | 若要探索 SQL Server 執行個體和資料庫,Windows 或 SQL Server 帳戶必須是 sysadmin 伺服器角色的成員,或具有每個 SQL Server 執行個體的這些權限。 |
SQL Server 版本 | 支援 SQL Server 2008 及更新版本。 |
SQL Server 版本 | 支援 Enterprise、Standard、Developer 和 Express 版本。 |
支援的 SQL 設定 | 支援探索獨立、高可用性和具災害保護的 SQL 部署。 也支援探索由 Always On 容錯移轉叢集執行個體和 Always On 可用性群組提供技術支援的高可用性和災害復原 SQL 部署。 |
支援的 SQL 服務 | 僅支援 SQL Server 資料庫引擎。 不支援探索 SQL Server Reporting Services、SQL Server Integration Services 和 SQL Server Analysis Services。 |
注意
根據預設,Azure Migrate 會使用最安全的方式連線至 SQL 執行個體。 即,Azure Migrate and Modernize 會加密 Azure Migrate 設備與來源 SQL Server 執行個體之間的通訊,方法是將 TrustServerCertificate
屬性設定為 true
。 此外,傳輸層會使用安全通訊端層來加密通道,並略過憑證鏈結以驗證信任。 因此,您必須將設備伺服器設定為信任憑證的根授權單位。
不過,您可以在設備上選取 [編輯 SQL Server 連線屬性] 來修改連線設定。 深入了解以瞭解要選擇的內容。
設定 SQL Server 探索的自訂登入
使用下列範例指令碼來建立登入,並使用必要權限來進行佈建。
Windows 驗證
-- Create a login to run the assessment
use master;
DECLARE @SID NVARCHAR(MAX) = N'';
CREATE LOGIN [MYDOMAIN\MYACCOUNT] FROM WINDOWS;
SELECT @SID = N'0x'+CONVERT(NVARCHAR, sid, 2) FROM sys.syslogins where name = 'MYDOMAIN\MYACCOUNT'
IF (ISNULL(@SID,'') != '')
PRINT N'Created login [MYDOMAIN\MYACCOUNT] with SID = ' + @SID
ELSE
PRINT N'Login creation failed'
GO
-- Create user in every database other than tempdb, model, and secondary AG databases (with connection_type = ALL) and provide minimal read-only permissions.
USE master;
EXECUTE sp_MSforeachdb '
USE [?];
IF (''?'' NOT IN (''tempdb'',''model''))
BEGIN
DECLARE @is_secondary_replica BIT = 0;
IF CAST(PARSENAME(CAST(SERVERPROPERTY(''ProductVersion'') AS VARCHAR), 4) AS INT) >= 11
BEGIN
DECLARE @innersql NVARCHAR(MAX);
SET @innersql = N''
SELECT @is_secondary_replica = IIF(
EXISTS (
SELECT 1
FROM sys.availability_replicas a
INNER JOIN sys.dm_hadr_database_replica_states b
ON a.replica_id = b.replica_id
WHERE b.is_local = 1
AND b.is_primary_replica = 0
AND a.secondary_role_allow_connections = 2
AND b.database_id = DB_ID()
), 1, 0
);
'';
EXEC sp_executesql @innersql, N''@is_secondary_replica BIT OUTPUT'', @is_secondary_replica OUTPUT;
END
IF (@is_secondary_replica = 0)
BEGIN
CREATE USER [MYDOMAIN\MYACCOUNT] FOR LOGIN [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON sys.sql_expression_dependencies TO [MYDOMAIN\MYACCOUNT];
GRANT VIEW DATABASE STATE TO [MYDOMAIN\MYACCOUNT];
END
END'
GO
-- Provide server level read-only permissions
use master;
GRANT SELECT ON sys.sql_expression_dependencies TO [MYDOMAIN\MYACCOUNT];
GRANT EXECUTE ON OBJECT::sys.xp_regenumkeys TO [MYDOMAIN\MYACCOUNT];
GRANT EXECUTE ON OBJECT::sys.xp_instance_regread TO [MYDOMAIN\MYACCOUNT];
GRANT VIEW DATABASE STATE TO [MYDOMAIN\MYACCOUNT];
GRANT VIEW SERVER STATE TO [MYDOMAIN\MYACCOUNT];
GRANT VIEW ANY DEFINITION TO [MYDOMAIN\MYACCOUNT];
GO
-- Provide msdb specific permissions
use msdb;
GRANT EXECUTE ON [msdb].[dbo].[agent_datetime] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysjobsteps] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[syssubsystems] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysjobhistory] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[syscategories] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysjobs] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysmaintplan_plans] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[syscollector_collection_sets] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysmail_profile] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysmail_profileaccount] TO [MYDOMAIN\MYACCOUNT];
GRANT SELECT ON [msdb].[dbo].[sysmail_account] TO [MYDOMAIN\MYACCOUNT];
GO
-- Clean up
--use master;
-- EXECUTE sp_MSforeachdb 'USE [?]; DROP USER [MYDOMAIN\MYACCOUNT]'
-- DROP LOGIN [MYDOMAIN\MYACCOUNT];
--GO
SQL Server 驗證
--- Create a login to run the assessment
use master;
-- NOTE: SQL instances that host replicas of Always On availability groups must use the same SID for the SQL login.
-- After the account is created in one of the members, copy the SID output from the script and include this value
-- when executing against the remaining replicas.
-- When the SID needs to be specified, add the value to the @SID variable definition below.
DECLARE @SID NVARCHAR(MAX) = N'';
IF (@SID = N'')
BEGIN
CREATE LOGIN [evaluator]
WITH PASSWORD = '<provide a strong password>'
END
ELSE
BEGIN
DECLARE @SQLString NVARCHAR(500) = 'CREATE LOGIN [evaluator]
WITH PASSWORD = ''<provide a strong password>''
, SID = ' + @SID
EXEC SP_EXECUTESQL @SQLString
END
SELECT @SID = N'0x'+CONVERT(NVARCHAR(100), sid, 2) FROM sys.syslogins where name = 'evaluator'
IF (ISNULL(@SID,'') != '')
PRINT N'Created login [evaluator] with SID = '''+ @SID +'''. If this instance hosts any Always On Availability Group replica, use this SID value when executing the script against the instances hosting the other replicas'
ELSE
PRINT N'Login creation failed'
GO
-- Create user in every database other than tempdb, model, and secondary AG databases (with connection_type = ALL) and provide minimal read-only permissions.
USE master;
EXECUTE sp_MSforeachdb '
USE [?];
IF (''?'' NOT IN (''tempdb'',''model''))
BEGIN
DECLARE @is_secondary_replica BIT = 0;
IF CAST(PARSENAME(CAST(SERVERPROPERTY(''ProductVersion'') AS VARCHAR), 4) AS INT) >= 11
BEGIN
DECLARE @innersql NVARCHAR(MAX);
SET @innersql = N''
SELECT @is_secondary_replica = IIF(
EXISTS (
SELECT 1
FROM sys.availability_replicas a
INNER JOIN sys.dm_hadr_database_replica_states b
ON a.replica_id = b.replica_id
WHERE b.is_local = 1
AND b.is_primary_replica = 0
AND a.secondary_role_allow_connections = 2
AND b.database_id = DB_ID()
), 1, 0
);
'';
EXEC sp_executesql @innersql, N''@is_secondary_replica BIT OUTPUT'', @is_secondary_replica OUTPUT;
END
IF (@is_secondary_replica = 0)
BEGIN
CREATE USER [evaluator] FOR LOGIN [evaluator];
GRANT SELECT ON sys.sql_expression_dependencies TO [evaluator];
GRANT VIEW DATABASE STATE TO [evaluator];
END
END'
GO
-- Provide server level read-only permissions
USE master;
GRANT SELECT ON sys.sql_expression_dependencies TO [evaluator];
GRANT EXECUTE ON OBJECT::sys.xp_regenumkeys TO [evaluator];
GRANT EXECUTE ON OBJECT::sys.xp_instance_regread TO [evaluator];
GRANT VIEW DATABASE STATE TO [evaluator];
GRANT VIEW SERVER STATE TO [evaluator];
GRANT VIEW ANY DEFINITION TO [evaluator];
GO
-- Provide msdb specific permissions
USE msdb;
GRANT EXECUTE ON [msdb].[dbo].[agent_datetime] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysjobsteps] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[syssubsystems] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysjobhistory] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[syscategories] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysjobs] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysmaintplan_plans] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[syscollector_collection_sets] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysmail_profile] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysmail_profileaccount] TO [evaluator];
GRANT SELECT ON [msdb].[dbo].[sysmail_account] TO [evaluator];
GO
-- Clean up
--use master;
-- EXECUTE sp_MSforeachdb 'USE [?]; BEGIN TRY DROP USER [evaluator] END TRY BEGIN CATCH PRINT ERROR_MESSAGE() END CATCH;'
-- BEGIN TRY DROP LOGIN [evaluator] END TRY BEGIN CATCH PRINT ERROR_MESSAGE() END CATCH;
--GO
Web 應用程式探索需求
軟體清查會識別所探索到伺服器上的現有網頁伺服器角色。 如果發現伺服器已安裝網頁伺服器,則 Azure Migrate and Modernize 會探索伺服器上的 Web 應用程式。
您可以同時在設備上新增網域和非網域認證。 請確定所使用的帳戶在來源伺服器上具有本機系統管理員權限。 Azure Migrate and Modernize 會自動將認證對應至個別伺服器,因此您不需要手動進行對應。 最重要的是,這些認證絕對不會傳送給 Microsoft,且會保留在來源環境中執行的設備上。
設備連線之後,會收集 ASP.NET Web 應用程式 (IIS 網頁伺服器) 和 Java Web 應用程式 (Tomcat 伺服器) 的設定資料。 Web 應用程式組態資料每隔 24 小時會更新一次。
支援 | ASP.NET Web 應用程式 | Java Web 應用程式 |
---|---|---|
Stack | VMware、Hyper-V 和實體伺服器。 | VMware、Hyper-V 和實體伺服器。 |
Windows 伺服器 | 支援 Windows Server 2008 R2 及更新版本。 | 不支援。 |
Linux 伺服器 | 不支援。 | Ubuntu Linux 16.04/18.04/20.04、Debian 7/8 和 Red Hat Enterprise Linux 5/6/7。 |
網頁伺服器版本 | IIS 7.5 和更新版本。 | Tomcat 8 或更新版本。 |
必要權限 | 本機系統管理員。 | root 或 sudo 使用者。 |
注意
資料待用時及資料傳輸期間一律會進行加密。
相依性分析需求 (無代理程式)
相依性分析可協助您分析所探索到伺服器之間的相依性。 您可以在 Azure Migrate 專案中使用地圖檢視來輕鬆地將相依性視覺化。 您可以使用相依性將相關伺服器加以群組以移轉至 Azure。 下表摘要說明用於設定無代理程式相依性分析的需求。
支援 | 詳細資料 |
---|---|
支援的伺服器 | 您可以在每個設備探索到的最多 1,000 部伺服器上啟用無代理程式相依性分析。 |
作業系統 | 伺服器只要執行的 Windows 和 Linux 版本符合伺服器需求且具有所需的存取權限,就都會受到支援。 |
伺服器需求 | Windows 伺服器必須已啟用 PowerShell 遠端功能,且已安裝 PowerShell 2.0 版或更新版本。 Linux 伺服器必須已啟用 SSH 連線,並確保下列命令可以在 Linux 伺服器上執行:touch、chmod、cat、ps、grep、echo、sha256sum、awk、netstat、ls、sudo、dpkg、rpm、sed、getcap、which、date。 |
Windows 伺服器存取權 | 來賓使用者帳戶 |
Linux 伺服器存取權 | 具有執行 ls 和 netstat 命令權限的 sudo 使用者帳戶。 如果您要提供 sudo 使用者帳戶,則請確定您啟用 NOPASSWD,讓帳戶執行必要的命令,而不會在每次叫用 sudo 命令時都提示輸入密碼。 或者,您可以建立使用者帳戶,而使用者帳戶具有使用下列命令所設定 /bin/netstat 和 /bin/ls 檔案上的 CAP_DAC_READ_SEARCH 和 CAP_SYS_PTRACE 權限: sudo setcap CAP_DAC_READ_SEARCH,CAP_SYS_PTRACE=ep usr/bin/ls sudo setcap CAP_DAC_READ_SEARCH,CAP_SYS_PTRACE=ep usr/bin/netstat |
連接埠存取 | Windows 伺服器需要連接埠 5985 (HTTP) 的存取權。 Linux 伺服器需要連接埠 22 (TCP) 的存取權。 |
探索方法 | 系統會使用設備上新增的伺服器認證直接連線至伺服器,以執行無代理程式相依性分析。 設備會使用 PowerShell 遠端功能從 Windows 伺服器收集相依性資訊,以及使用 SSH 連線從 Linux 伺服器收集相依性資訊。 伺服器不會為了提取相依性資料而安裝任何代理程式。 |
代理程式型相依性分析需求
相依性分析可協助您識別所要評估並移轉至 Azure 的內部部署伺服器之間的相依性。 下表摘要說明用於設定代理程式型相依性分析的需求。 目前,只有實體伺服器才支援代理程式型相依性分析。
需求 | 詳細資料 |
---|---|
部署之前 | 請先備妥專案,並在專案中新增「Azure Migrate:探索和評量」工具。 請在設定 Azure Migrate 設備以探索內部部署伺服器之後,部署相依性視覺效果。 了解如何第一次建立專案。 了解如何將評估工具新增至現有專案。 了解如何設定 Azure Migrate 設備,以評估 Hyper-V、VMware 或實體伺服器。 |
Azure Government | 在 Azure Government 中無法使用相依性視覺效果。 |
Log Analytics | Azure Migrate and Modernize 會使用 Azure 監視器記錄中的服務對應解決方案來實現相依性視覺效果。 請將新的或現有的 Log Analytics 工作區與專案建立關聯。 新增專案的工作區之後,您就無法修改該工作區。 此工作區必須位於和專案相同的訂閱中。 此工作區必須位於「美國東部」、「東南亞」或「西歐」區域。 其他區域中的工作區則無法與專案相關聯。 此工作區必須位於支援服務對應的區域中。 您可以在任何區域中監視 Azure VM。 VM 本身不限於 Log Analytics 工作區所支援的區域。 在 Log Analytics 中,與 Azure Migrate and Modernize 相關聯的工作區會標記上移轉專案金鑰和專案名稱。 |
必要的代理程式 | 在您要分析的每部伺服器上安裝下列代理程式: - Microsoft Monitoring Agent (MMA) - 相依性代理程式 如果內部部署伺服器未連線至網際網路,則需要下載 Log Analytics 閘道,並將其安裝至伺服器。 深入了解如何安裝 Dependency Agent 和 MMA。 |
Log Analytics 工作區 | 此工作區必須位於和專案相同的訂用帳戶中。 Azure Migrate and Modernize 可支援位於美國東部、東南亞和西歐區域的工作區。 此工作區必須位於支援服務對應的區域中。 您可以在任何區域中監視 Azure VM。 VM 本身不限於 Log Analytics 工作區所支援的區域。 新增專案的工作區之後,您就無法修改該工作區。 |
成本 | 「服務對應」解決方案在前 180 天不會產生任何費用。 從您將 Log Analytics 工作區關聯至專案的那一天開始算起。 180 天後,將會套用標準 Log Analytics 費用。 在相關聯的 Log Analytics 工作區中使用非服務對應的解決方案則會產生 Log Analytics 的標準費用。 刪除專案時,工作區不會自動刪除。 刪除專案之後,服務對應使用量就不是免費的。 每個節點都會根據 Log Analytics 工作區的付費層收費。 如果您的專案是在 Azure Migrate 正式發行 (在 2018 年 2 月 28 日 GA) 之前所建立,則可能會產生其他服務對應費用。 為了確保您只在 180 天後才付費,建議您建立新的專案。 在正式發行之前建立的工作區仍需收取費用。 |
管理 | 當您向工作區註冊代理程式時,請使用專案所提供的識別碼和金鑰。 您可以使用 Azure Migrate and Modernize 外部的 Log Analytics 工作區。 如果您刪除相關聯的專案,工作區並不會自動刪除。 請手動將其刪除。 除非您刪除專案,否則請不要刪除 Azure Migrate and Modernize 所建立的工作區。 如果這樣做,則相依性視覺效果功能不會如預期般運作。 |
網際網路連線能力 | 如果伺服器未連線到網際網路,請在伺服器上安裝 Log Analytics 閘道。 |
Azure Government | 不支援代理程式型的相依性分析。 |
下一步
準備探索實體伺服器。