이 문서에서는 Azure Migrate: 검색 및 평가 도구를 사용하여 Azure로 마이그레이션할 물리적 서버를 평가할 때의 필수 구성 요소 및 지원 요구 사항을 요약합니다. 물리적 서버를 Azure로 마이그레이션하려면 마이그레이션 지원 매트릭스를 참조하세요.
물리적 서버를 평가하려면 프로젝트를 만들고 프로젝트에 Azure Migrate: 검색 및 평가 도구를 추가합니다. 도구를 추가한 후 Azure Migrate 어플라이언스를 배포합니다. 이 어플라이언스는 지속적으로 온-프레미스 서버를 검색하고 서버 메타데이터 및 성능 데이터를 Azure에 보냅니다. 검색이 완료되면 발견된 서버를 그룹으로 모으고 그룹에 대한 평가를 실행합니다.
제한 사항
지원 | 세부 정보 |
---|---|
평가 제한 | 단일 프로젝트에서 최대 35,000개의 물리적 서버를 검색하고 평가할 수 있습니다. |
프로젝트 제한 | Azure 구독에서 여러 프로젝트를 만들 수 있습니다. 물리 서버 외에도 프로젝트는 VMware 및 Hyper-V의 서버를 각각 평가 한도에 도달할 때까지 포함할 수 있습니다. |
검색 | Azure Migrate 어플라이언스는 최대 1,000대의 물리적 서버를 검색할 수 있습니다. |
평가 | 단일 그룹에 최대 35,000개 서버를 추가할 수 있습니다. 단일 평가에서 최대 35,000대의 서버를 평가할 수 있습니다. |
평가에 대해 자세히 알아봅니다.
물리적 서버 요구 사항
물리적 서버 배포: 물리적 서버는 독립 실행형이거나 클러스터에 배포할 수 있습니다.
서버 유형: 운영 체제 미설치 서버, 온-프레미스에서 실행되는 가상화된 서버 또는 AWS(Amazon Web Services), GCP(Google Cloud Platform) 및 Xen과 같은 다른 클라우드
참고
현재 Azure Migrate는 반가상화된 서버 검색을 지원하지 않습니다.
운영 체제: 모든 Windows 및 Linux 운영 체제를 마이그레이션에 대해 평가할 수 있습니다.
주의
이 문서에서는 EOS(지원 종료)에 도달한 Windows Server 버전을 참조합니다. Microsoft는 공식적으로 다음 운영 체제에 대한 지원을 종료했습니다.
- 윈도우 서버 2003
- Windows Server 2008(SP2 및 R2 SP1 포함)
- Windows Server 2012
- Windows Server 2012 R2 결과적으로 Azure Migrate는 이러한 OS 버전에 대해 일관되거나 신뢰할 수 있는 결과를 보장하지 않습니다. 고객은 문제가 발생할 수 있으며 마이그레이션을 시작하기 전에 지원되는 Windows Server 버전으로 업그레이드하는 것이 좋습니다.
Azure Migrate 어플라이언스 요구 사항
Azure Migrate는 검색 및 평가를 위해 Azure Migrate 어플라이언스 사용 물리적 서버용 어플라이언스는 VM(가상 머신) 또는 물리적 서버에서 실행될 수 있습니다.
- 물리적 서버 의 어플라이언스 요구 사항에 대해 알아봅니다.
- 어플라이언스가 퍼블릭 및 정부 클라우드에서 액세스해야 하는 URL에 대해 알아봅니다.
- Azure Portal에서 다운로드한 PowerShell 스크립트 를 사용하여 어플라이언스 설정
- 이 스크립트를 사용하여 Azure Government에 어플라이언스 배포
포트 액세스
다음 표에는 평가를 위한 포트 요구 사항이 요약되어 있습니다.
디바이스 | 연결 |
---|---|
어플라이언스 | 어플라이언스에 대한 원격 데스크톱 연결을 허용하기 위한 TCP 포트 3389에서 인바운드 연결 URL https://<appliance-ip-or-name>:44368 을 사용하여 어플라이언스 관리 앱에 원격으로 액세스하기 위한 포트 44368의 인바운드 연결검색 및 성능 메타데이터를 Azure Migrate 및 현대화로 보내기 위한 포트 443(HTTPS)의 아웃바운드 연결입니다. |
물리적 서버 |
Windows: WinRM 포트 5986(HTTPS)의 인바운드 연결은 Windows 서버에서 구성 및 성능 메타데이터를 가져오는 데 사용됩니다. 대상 Hyper-V 서버에 HTTPS 필수 구성 요소가 구성되어 있지 않으면 어플라이언스 통신은 WinRM 포트 5985(HTTP)로 대체됩니다. 대체 없이 HTTPS 통신을 강제로 적용하려면 Appliance Config Manager를 전환합니다. 사용하도록 설정한 후 대상 서버에서 필수 구성 요소가 구성되어 있는지 확인합니다. - 대상 서버에 인증서가 구성되어 있지 않으면 현재 검색된 서버와 새로 추가된 서버 모두에서 검색이 실패합니다. - WinRM HTTPS에는 호스트 이름과 일치하는 CN(일반 이름)이 있는 로컬 컴퓨터 서버 인증 인증서가 필요합니다. 인증서는 만료되거나, 폐지되거나, 자체 서명되어서는 안 됩니다. HTTPS용 WinRM 구성 에 대한 문서를 참조하세요. - Linux: Linux 서버에서 구성 및 성능 메타데이터를 끌어오기 위한 포트 22(TCP)의 인바운드 연결입니다. |
소프트웨어 인벤토리 요구 사항
서버를 검색하는 것 외에도 Azure Migrate: 검색 및 평가는 서버에서 소프트웨어 인벤토리를 수행할 수 있습니다. 소프트웨어 인벤토리는 Azure Migrate 및 현대화를 사용하여 발견된 Windows 및 Linux 서버에서 실행되는 애플리케이션, 역할 및 기능 목록을 제공합니다. 이를 통해 온-프레미스 워크로드에 맞게 조정된 마이그레이션 경로를 쉽게 파악하고 계획할 수 있습니다.
지원 | 세부 정보 |
---|---|
지원되는 서버 | 각 Azure Migrate 어플라이언스에서 검색된 최대 1,000대의 서버에서 소프트웨어 인벤토리를 수행할 수 있습니다. |
운영 체제 | 서버 요구 사항을 충족하고 필요한 액세스 권한이 있는 모든 Windows 및 Linux 버전을 실행하는 서버가 지원됩니다. |
서버 요구 사항 | Windows 서버에는 PowerShell 원격을 사용하도록 설정되어 있고 PowerShell 버전 2.0 이상이 설치되어 있어야 합니다. 서버에 설치된 역할과 기능에 대한 세부 정보를 수집하려면 Windows 서버에서 WMI가 사용되도록 설정하고 사용할 수 있어야 합니다. Linux 서버에는 SSH 연결을 사용하도록 설정되어 있고 Linux 서버에서 다음 명령을 실행하여 애플리케이션 데이터(list, tail, awk, grep, locate, head, sed, ps, print, sort, uniq)를 끌어올 수 있는지 확인해야 합니다. 사용된 OS 형식 및 패키지 관리자 형식에 따라 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 인스턴스와 데이터베이스의 구성 및 성능 데이터를 수집합니다. 어플라이언스는 SQL Server 구성 데이터를 24시간마다 업데이트하고 성능 데이터는 30초마다 캡처합니다.
지원 | 세부 정보 |
---|---|
지원되는 서버 | VMware, Microsoft Hyper-V, 실제/운영 체제 미설치 환경에서 SQL Server를 실행하는 서버와 AWS 및 GCP와 같은 기타 퍼블릭 클라우드의 IaaS(서비스 제공 인프라) 서버에 대해서만 지원됩니다. 단일 어플라이언스에서 최대 750개의 SQL Server 인스턴스 또는 15,000개의 SQL 데이터베이스 중 더 적은 수를 검색할 수 있습니다. 스케일링 문제를 방지하려면 SQL을 실행하는 서버를 600개 미만으로 검색하도록 어플라이언스 범위를 지정하는 것이 좋습니다. |
Windows 서버 | Windows Server 2008 이상이 지원됩니다. |
Linux 서버 | 현재 지원되지 않습니다. |
인증 메커니즘 | Windows 및 SQL Server 인증이 모두 지원됩니다. 어플라이언스 구성 관리자에서 두 인증 유형의 자격 증명을 제공할 수 있습니다. |
SQL Server 액세스 | SQL Server 인스턴스 및 데이터베이스를 검색하려면 Windows/도메인 계정 또는 SQL Server 계정에 각 SQL Server 인스턴스에 대해 이러한 낮은 권한 읽기 권한이 필요합니다 . 낮은 권한 계정 프로비저닝 유틸리티를 사용하여 사용자 지정 계정을 만들거나 간단히 하기 위해 sysadmin 서버 역할의 멤버인 기존 계정을 사용할 수 있습니다. |
SQL Server 버전 | SQL Server 2008 이상이 지원됩니다. |
SQL Server 버전 | Enterprise, Standard, Developer, Express 버전이 지원됩니다. |
지원되는 SQL 구성 | 독립 실행형, 고가용성, 재해 보호 SQL 배포 검색이 지원됩니다. Always On 장애 조치(failover) 클러스터 인스턴스 및 Always On 가용성 그룹을 기반으로 하는 고가용성 및 재해 복구 SQL 배포 검색도 지원됩니다. |
지원되는 SQL 서비스 | SQL Server 데이터베이스 엔진만 지원됩니다. SQL Server Reporting Services, SQL Server Integration Services 및 SQL Server Analysis Services 검색은 지원되지 않습니다. |
참고
기본적으로 Azure Migrate는 SQL 인스턴스에 연결하는 가장 안전한 방법을 사용합니다. 즉, Azure Migrate 및 현대화는 TrustServerCertificate
속성을 true
로 설정하여 Azure Migrate 어플라이언스와 원본 SQL Server 인스턴스 간의 통신을 암호화합니다. 또한 전송 계층은 SSL(Secure Socket Layer)을 사용하여 채널을 암호화하고 인증서 체인을 무시하여 신뢰의 유효성을 검사합니다. 이러한 이유로 어플라이언스 서버는 인증서의 루트 인증 기관을 신뢰하도록 설정되어야 합니다.
그러나 어플라이언스의 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
웹앱 검색 요구 사항
소프트웨어 인벤토리 는 검색된 서버에 존재하는 웹 서버 역할을 식별합니다. 서버에 웹 서버가 설치되어 있는 경우 Azure Migrate 및 현대화는 서버에서 웹앱을 검색합니다.
어플라이언스에 도메인 및 비도메인 자격 증명을 모두 추가할 수 있습니다. 사용된 계정에 원본 서버에 대한 로컬 관리자 권한이 있는지 확인합니다. Azure Migrate 및 현대화는 자격 증명을 각 서버에 자동으로 매핑하므로 수동으로 매핑할 필요가 없습니다. 가장 중요한 점은 해당 자격 증명이 Microsoft로 전송되지 않고 원본 환경에서 실행되는 어플라이언스에 남아 있다는 것입니다.
어플라이언스가 연결되면 ASP.NET 웹앱(IIS 웹 서버) 및 Java 웹앱(Tomcat 서버)에 대한 구성 데이터를 수집합니다. 웹앱 구성 데이터는 24시간마다 한 번 업데이트됩니다.
지원 | ASP.NET 웹 앱 | Java 웹앱 |
---|---|---|
스택 | 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 이상 |
필요한 권한 | 로컬 관리자. | 모든 CATALINA_HOME 디렉터리에 대해 재귀적으로 읽기(r) 및 실행(x) 권한을 부여합니다. |
참고
데이터는 미사용 및 전송 중에 상시 암호화됩니다.
종속성 분석 요구 사항(에이전트 없음)
종속성 분석을 통해 검색된 서버 간의 종속성을 분석할 수 있습니다. 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 같은 명령을 실행할 수 있는지 확인해야 합니다. |
Windows 서버 액세스 | 서버에 대한 관리자 권한이 있는 사용자 계정(로컬 또는 도메인)입니다. |
Linux 서버 액세스 | Linux 서버 액세스는 이 링크를 참조하세요. |
포트 액세스 | Windows 서버는 포트 5985(HTTP)에 액세스해야 합니다. Linux 서버는 포트 22(TCP)에 액세스해야 합니다. |
검색 방법 | 에이전트 없는 종속성 분석은 어플라이언스에서 추가된 서버 자격 증명을 사용하여 서버에 직접 연결하여 수행됩니다. 어플라이언스는 PowerShell 원격을 사용하여 Windows 서버에서, SSH 연결을 사용하여 Linux 서버에서 종속성 정보를 수집합니다. 종속성 데이터를 끌어오기 위해 서버에 에이전트가 설치되어 있지 않습니다. |
에이전트 기반 종속성 분석 요구 사항
종속성 분석을 통해 Azure로 평가하고 마이그레이션하려는 온-프레미스 서버 간의 종속성을 식별할 수 있습니다. 다음 표에는 에이전트 기반 종속성 분석을 설정하기 위한 요구 사항이 요약되어 있습니다. 현재 에이전트 기반 종속성 분석만 물리적 서버를 지원합니다.
요구 사항 | 세부 정보 |
---|---|
배포 전 | Azure Migrate: 검색 및 평가 도구를 프로젝트에 추가하여 준비합니다. 온-프레미스 서버를 검색하도록 Azure Migrate 어플라이언스를 설정한 후 종속성 시각화를 배포합니다. 처음으로 프로젝트를 만드는 방법을 알아봅니다. 기존 프로젝트에 평가 도구를 추가하는 방법을 알아봅니다. Hyper-V, VMware 또는 물리적 서버 평가를 위해 Azure Migrate 어플라이언스 설정 방법을 알아봅니다. |
Azure Government (애저 정부) | Azure Government에서는 종속성 시각화를 사용할 수 없습니다. |
로그 분석 | Azure Migrate 및 Modernize는 종속성 시각화를 위해 Azure Monitor 로그의서비스 맵 솔루션을 사용합니다. 신규 또는 기존 Log Analytics 작업 영역을 프로젝트와 연결합니다. 작업 영역을 추가한 후에는 프로젝트의 작업 영역을 수정할 수 없습니다. 작업 영역은 프로젝트와 동일한 구독에 있어야 합니다. 작업 영역은 미국 동부, 동남 아시아 또는 서유럽 지역에 있어야 합니다. 다른 지역의 작업 영역은 프로젝트에 연결할 수 없습니다. 작업 영역은 서비스 맵이 지원되는 지역에 있어야 합니다. 모든 지역에서 Azure VM을 모니터링할 수 있습니다. VM 자체는 Log Analytics 작업 영역에서 지원하는 지역으로 제한되지 않습니다. Log Analytics에서 Azure Migrate 및 현대화와 연결된 작업 영역에는 마이그레이션 프로젝트 키와 프로젝트 이름이 태그로 지정됩니다. |
필요한 에이전트 | 분석하려는 각 서버에서 다음 에이전트를 설치합니다. - Microsoft Monitoring Agent(MMA) - 종속성 에이전트 온-프레미스 서버가 인터넷에 연결되어 있지 않은 경우 Log Analytics 게이트웨이를 다운로드하여 설치해야 합니다. 종속성 에이전트 및 MMA 설치에 대해 자세히 알아봅니다. |
Log Analytics 작업 영역 | 작업 영역은 프로젝트와 동일한 구독에 있어야 합니다. Azure Migrate 및 현대화는 현재 미국 동부, 동남 아시아 및 서유럽 지역에 있는 작업 영역을 지원합니다. 작업 영역은 서비스 맵이 지원되는 지역에 있어야 합니다. 모든 지역에서 Azure VM을 모니터링할 수 있습니다. VM 자체는 Log Analytics 작업 영역에서 지원하는 지역으로 제한되지 않습니다. 작업 영역을 추가한 후에는 프로젝트의 작업 영역을 수정할 수 없습니다. |
비용 | 서비스 맵 솔루션에는 처음 180일 동안 요금이 부과되지 않습니다. 계산은 Log Analytics 작업 영역을 프로젝트와 연결하는 날부터 시작됩니다. 180일이 지나면 표준 Log Analytics 요금이 적용됩니다. 연결된 Log Analytics 작업 영역에서 서비스 맵 이외의 솔루션을 사용하면 Log Analytics에 대한 표준 요금이 발생 합니다. 프로젝트가 삭제될 때 작업 영역은 자동으로 삭제되지 않습니다. 프로젝트를 삭제한 후에는 서비스 맵 사용이 무료가 아닙니다. 각 노드는 Log Analytics 작업 영역의 유료 계층에 따라 요금이 부과됩니다. Azure Migrate 일반 공급(2018년 2월 28일 GA) 마이그레이션에 만든 프로젝트가 있는 경우 다른 서비스 맵 요금이 발생할 수 있습니다. 180일 후에만 요금이 부과되도록 새 프로젝트를 만드는 것이 좋습니다. GA 이전에 만든 작업 영역은 계속 요금이 부과됩니다. |
관리 | 작업 영역에 에이전트를 등록할 때 프로젝트에서 제공하는 ID 및 키를 사용합니다. Azure Migrate 및 현대화 외부에서 Log Analytics 작업 영역을 사용할 수 있습니다. 연결된 프로젝트를 삭제하면 작업 영역이 자동으로 삭제되지 않습니다. 수동으로 삭제합니다. 프로젝트를 삭제하지 않는 한 Azure Migrate 및 현대화에서 만든 작업 영역을 삭제하지 마세요. 작업 영역을 삭제하면 종속성 시각화 기능이 정상적으로 작동하지 않습니다. |
인터넷 연결 | 서버가 인터넷에 연결되어 있지 않으면 Log Analytics 게이트웨이를 서버에 설치해야 합니다. |
Azure Government (애저 정부) | 에이전트 기반 종속성 분석은 지원되지 않습니다. |
다음 단계
물리적 서버를 검색할 준비를 합니다.