Azure DevTest Labs으로 개발/테스트 환경 마이그레이션Migrate a dev/test environment to Azure DevTest Labs

이 문서에서는 가상의 회사 Contoso가 개발/테스트 환경을 Azure DevTest Labs로 마이그레이션하는 방법을 보여 줍니다.This article demonstrates how the fictional company Contoso migrates its dev/test environment to Azure DevTest Labs.

마이그레이션 옵션Migration options

Contoso에는 개발/테스트 환경을 Azure로 이동할 때 사용할 수 있는 몇 가지 옵션이 있습니다.Contoso has several options available when moving its dev/test environment to Azure.

마이그레이션 옵션Migration options 결과Outcome
Azure MigrateAzure Migrate 온-프레미스 Vm을 평가 하 고 마이그레이션합니다 .Assess and migrate on-premises VMs.

Azure IaaS (infrastructure as a service)를 사용 하 여 개발/테스트 서버를 실행 합니다.Run dev/test servers by using Azure infrastructure as a service (IaaS).

Azure Resource Manager를 사용 하 여 vm을 관리 합니다.Manage VMs with Azure Resource Manager.
DevTest LabsDevTest Labs 개발 및 테스트 환경을 신속 하 게 프로 비전 합니다.Quickly provision development and test environments.

할당량 및 정책을 통해 낭비를 최소화 합니다.Minimize waste with quotas and policies.

자동 종료를 설정 하 여 비용을 최소화 합니다.Set automated shutdowns to minimize costs.

Windows 및 Linux 환경을 빌드합니다.Build Windows and Linux environments.

참고

이 문서에서는 DevTest Labs를 사용 하 여 온-프레미스 개발/테스트 환경을 Azure로 이동 하는 방법을 중점적으로 설명 합니다.This article focuses on using DevTest Labs to move an on-premises dev/test environment to Azure. Azure Migrate 를 통해 Contoso에서 Azure IaaS로 개발/테스트를 이동 하는 방법을 참조 하세요.Read how Contoso moved dev/test to Azure IaaS via Azure Migrate.

비즈니스 영향 요소Business drivers

개발 리더십 팀은이 마이그레이션을 사용 하 여 달성할 것으로 원하는 사항을 설명 했습니다.The development leadership team has outlined what it wants to achieve with this migration:

  • DevOps 도구와 셀프 서비스 환경에 대 한 액세스 권한을 개발자에 게 부여 합니다.Empower developers with access to DevOps tools and self-service environments.
  • AI, machine learning 및 서버를 사용 하지 않는 등 개발/테스트를 위한 클라우드 네이티브 도구 및 CI/CD (지속적인 통합/지속적인 업데이트) 파이프라인에 대 한 DevOps 도구에 액세스할 수 있습니다.Give access to DevOps tools for continuous integration/continuous delivery (CI/CD) pipelines and cloud-native tools for dev/test, such as AI, machine learning, and serverless.
  • 개발/테스트 환경에서 거 버 넌 스 및 규정 준수를 확인 합니다.Ensure governance and compliance in dev/test environments.
  • 모든 개발/테스트 환경을 데이터 센터 외부로 이동 하 고 더 이상 하드웨어를 구입 하 여 소프트웨어를 개발 하 여 비용을 절감할 수 있습니다.Save costs by moving all dev/test environments out of the datacenter and no longer purchase hardware to develop software.

참고

Contoso는 해당 환경에 대 한 종량제 개발/테스트 구독 제안을 사용 합니다.Contoso will use the Pay-As-You-Go Dev/Test subscription offer for its environments. 팀의 각 활성 Visual Studio 구독자는 추가 비용 없이 개발/테스트를 위해 Azure Virtual Machines 구독에 포함 된 Microsoft 소프트웨어를 사용할 수 있습니다.Each active Visual Studio subscriber on the team can use the Microsoft software included with the subscription on Azure Virtual Machines for dev/test at no extra charge. Contoso는 실행 하는 Vm에 대 한 Linux 요금을 지불 합니다.Contoso will just pay the Linux rate for VMs that it runs. 여기에는 SQL Server, SharePoint Server 또는 일반적으로 더 높은 요금으로 청구 되는 기타 소프트웨어를 포함 하는 Vm이 포함 됩니다.That includes VMs with SQL Server, SharePoint Server, or other software that's normally billed at a higher rate.

참고

기업계약 있는 azure 고객은 Azure 개발/테스트 구독 제품을 활용 하 여 혜택을 받을 수도 있습니다.Azure customers with an Enterprise Agreement can also benefit from the Azure Dev/Test subscription offer. 자세히 알아보려면 EA 포털을 통해 Enterprise 개발/테스트 구독을 설정 하 고 만드는비디오를 검토 하세요.To learn more, review the video for enabling and creating Enterprise Dev/Test subscriptions through the EA portal.

마이그레이션 목표Migration goals

Contoso development 팀은이 마이그레이션의 목표를 고정 했습니다.The Contoso development team has pinned down goals for this migration. 최상의 마이그레이션 방법을 결정하는 데 사용되는 목표는 다음과 같습니다.These goals are used to determine the best migration method:

  • 개발 및 테스트 환경을 신속 하 게 프로 비전 합니다.Quickly provision development and test environments. 개발자가 소프트웨어를 작성 하거나 테스트 하는 데 필요한 인프라를 구축 하는 데 몇 분이 아니라 몇 분이 걸립니다.It should take minutes, not months, to build the infrastructure that a developer needs to write or test software.
  • 마이그레이션 후 Azure에서 Contoso의 개발/테스트 환경에는 현재 시스템 온-프레미스에 대 한 향상 된 기능이 있어야 합니다.After migration, Contoso's dev/test environment in Azure should have enhanced capabilities over the current system on-premises.
  • 운영 모델은 셀프 서비스 프로 비전을 사용 하 여 IT 프로 비전 된 Vm에서 DevOps로 이동 합니다.The operations model will move from IT-provisioned VMs to DevOps with self-service provisioning.
  • Contoso는 온-프레미스 개발/테스트 환경에서 빠르게 이동 하려고 합니다.Contoso wants to quickly move out of its on-premises dev/test environments.
  • 모든 개발자는 원격 및 안전 하 게 개발/테스트 환경에 연결 합니다.All developers will connect to dev/test environments remotely and securely.

솔루션 디자인Solution design

Contoso는 목표와 요구 사항을 고정 한 후 배포 솔루션을 설계 하 고 검토 합니다.After pinning down goals and requirements, Contoso designs and reviews a deployment solution. 솔루션에는 개발/테스트에 사용할 Azure 서비스가 포함 됩니다.The solution includes the Azure services that it will use for dev/test.

현재 아키텍처Current architecture

  • Contoso의 응용 프로그램에 대 한 개발/테스트 Vm은 온-프레미스 데이터 센터의 VMware에서 실행 됩니다.The dev/test VMs for Contoso's applications are running on VMware in the on-premises datacenter.
  • 이러한 Vm은 개발 및 테스트에 사용 되며, 프로덕션 Vm으로 코드를 승격 합니다.These VMs are used for development and testing before code is promoted to the production VMs.
  • 개발자는 자신의 워크스테이션을 유지 하지만 본사에서 원격으로 연결 하는 데 필요한 새로운 솔루션이 필요 합니다.Developers maintain their own workstations, but they need new solutions for connecting remotely from home offices.

제안된 아키텍처Proposed architecture

  • Contoso는 azure 개발/테스트 구독 을 사용 하 여 azure 리소스에 대 한 비용을 절감 합니다.Contoso will use an Azure Dev/Test subscription to reduce costs for Azure resources. 이 구독은 Microsoft 소프트웨어에 대 한 라이선스 요금을 초래 하지 않는 Vm을 포함 하 여 상당한 절감 효과를 제공 합니다.This subscription offers significant savings, including VMs that don't incur licensing fees for Microsoft software.
  • Contoso는 DevTest Labs를 사용 하 여 환경을 관리 합니다.Contoso will use DevTest Labs for managing the environments. 클라우드에서 개발 및 테스트를 위한 새로운 도구로의 이동을 지원 하기 위해 DevTest Labs에 새 Vm이 만들어집니다.New VMs will be created in DevTest Labs to support the move to new tools for development and testing in the cloud.
  • 마이그레이션이 완료 되 면 Contoso 데이터 센터의 온-프레미스 개발/테스트 Vm이 서비스 해제 됩니다.The on-premises dev/test VMs in the Contoso datacenter will be decommissioned after the migration is done.
  • 개발자와 테스터는 자신의 워크스테이션에 대해 Windows 가상 데스크톱에 액세스할 수 있습니다.Developers and testers will have access to Windows Virtual Desktop for their workstations.

시나리오 아키텍처 다이어그램 그림 1: 시나리오 아키텍처Diagram of the scenario architecture. Figure 1: Scenario architecture.

데이터베이스 고려 사항Database considerations

지속적인 개발을 지원 하기 위해 Contoso는 Vm에서 실행 되는 데이터베이스를 계속 사용 하기로 결정 했습니다.To support ongoing development, Contoso has decided to continue using databases running on VMs. 그러나 현재 Vm은 DevTest Labs에서 실행 되는 새 Vm으로 교체 됩니다.But the current VMs will be replaced with new ones running in DevTest Labs. 나중에 Contoso는 Azure SQL DatabaseAzure Database for MySQL와 같은 PaaS (platform as a service) 서비스의 사용을 안내 합니다.In the future, Contoso will pursue the use of platform as a service (PaaS) services such as Azure SQL Database and Azure Database for MySQL.

현재 VMware 데이터베이스 Vm의 서비스를 해제 하 고 DevTest Labs의 Azure Vm으로 바꿉니다.Current VMware database VMs will be decommissioned and replaced with Azure VMs in DevTest Labs. 기존 데이터베이스는 간단한 백업 및 복원으로 마이그레이션됩니다.The existing databases will be migrated with simple backups and restores. Azure Dev/Test subscription 제안을 사용 하면 Windows Server 및 SQL Server 인스턴스에 대 한 라이선스 요금은 발생 하지 않으므로 계산 비용이 최소화 됩니다.Using the Azure Dev/Test subscription offer won't incur licensing fees for the Windows Server and SQL Server instances, minimizing compute costs.

솔루션 검토Solution review

Contoso는 장점 및 단점 목록을 결합 하 여 제안 된 디자인을 평가 합니다.Contoso evaluates the proposed design by putting together a list of pros and cons.

고려 사항Consideration 세부 정보Details
장점Pros 현재 개발 Vm (응용 프로그램 및 데이터베이스)이 모두 DevTest Labs에서 실행 되는 새 Vm으로 교체 됩니다.All of the current development VMs (application and database) will be replaced by new VMs running in DevTest Labs. 즉, 용도에 기반을 두는 클라우드 개발 환경의 기능을 활용할 수 있습니다.This means they can take advantage of the features of a purpose-built cloud development environment.

Contoso는 Azure 개발/테스트 구독에 대 한 투자를 활용 하 여 라이선스 요금을 절감할 수 있습니다.Contoso can take advantage of its investment in the Azure Dev/Test subscription to save on licensing fees.

Contoso는 Azure에서 응용 프로그램 Vm에 대 한 모든 권한을 유지 합니다.Contoso will retain full control of the application VMs in Azure.

개발자에 게 구독에 대 한 권한이 제공 되며,이를 통해 해당 요청에 응답할 때까지 기다리지 않고 새 리소스를 만들 수 있습니다.Developers will be provided with rights to the subscription, which empowers them to create new resources without waiting for IT to respond to their requests.
단점Cons 마이그레이션은 클라우드로만 개발을 이동 합니다.The migration will only move development to the cloud. 개발자는 아직 Vm을 사용 하 고 있으므로 개발에서 PaaS 서비스를 사용 하지 않습니다.Developers won't be using PaaS services in their development because they're still using VMs. 즉, Contoso는 보안 패치를 포함 하 여 Vm의 작업을 지원 하기 시작 해야 합니다.This means that Contoso will need to start supporting the operations of its VMs, including security patches. 이전에 Vm을 유지 관리 했으며 Contoso는이 새 운영 작업을 위한 솔루션을 찾아야 합니다.IT maintained VMs in the past, and Contoso will need to find a solution for this new operational task.

Contoso는 새 응용 프로그램 및 데이터베이스 Vm을 빌드하여 프로세스를 자동화 해야 합니다.Contoso will have to build new application and database VMs, automating the process. 즉, 클라우드에서 Vm을 빌드하고 DevTest Labs에서 제공 하는 도구를 사용할 수 있습니다.This means it can take advantage of building VMs in the cloud and tools provided by DevTest Labs. 이는 목록에 con이 있는 경우에도 긍정적인 결과입니다.So this is a positive outcome even with a con on the list.

마이그레이션 프로세스Migration process

Contoso는 DevTest Labs를 사용 하 여 개발 응용 프로그램 및 데이터베이스 Vm을 새 Azure Vm으로 마이그레이션합니다.Contoso will migrate its development application and database VMs to new Azure VMs by using DevTest Labs.

  • Contoso에는 개발 가상 네트워크를 포함 하 여 이미 Azure 인프라가 준비 되어 있습니다.Contoso already has the Azure infrastructure in place, including the development virtual network.
  • 모든 것이 준비 되 면 Contoso는 DevTest Labs를 프로 비전 하 고 구성 합니다.With everything prepared, Contoso will provision and configure DevTest Labs.
  • Contoso는 개발 가상 네트워크를 구성 하 고, 리소스 그룹을 할당 하 고, 정책을 설정 합니다.Contoso will configure the development virtual network, assign a resource group, and set policies.
  • Contoso는 개발자가 원격 위치에서 사용할 수 있도록 Windows 가상 데스크톱 인스턴스를 만듭니다.Contoso will create Windows Virtual Desktop instances for developers to use at remote locations.
  • Contoso는 개발을 위해 DevTest Labs 내에서 Vm을 만들고 데이터베이스를 마이그레이션합니다.Contoso will create VMs within DevTest Labs for development and migrate databases.

마이그레이션 프로세스를 설명 하는 다이어그램입니다. 그림 2: 마이그레이션 프로세스Diagram that illustrates the migration process. Figure 2: The migration process.

사전 요구 사항Prerequisites

이 시나리오를 실행하기 위해 Contoso에 필요한 항목은 다음과 같습니다.Here's what Contoso needs to run this scenario.

요구 사항Requirements 세부 정보Details
Azure 개발/테스트 구독Azure Dev/Test subscription Contoso는 최대 80%까지 비용을 절감 하기 위해 Azure Dev/Test 구독 을 만듭니다.Contoso creates an Azure Dev/Test subscription to reduce costs up to 80 percent.

Azure 구독이 아직 없는 경우 체험 계정을 만듭니다.If you don't have an Azure subscription, create a free account.

무료 계정을 만드는 경우 구독의 관리자 이며 모든 작업을 수행할 수 있습니다.If you create a free account, you're the admin of your subscription and can perform all actions.

기존 구독을 사용 하 고 관리자가 아닌 경우 관리자와 협력 하 여 소유자 또는 참가자 권한을 할당 합니다.If you use an existing subscription and you're not the admin, work with the admin to assign you Owner or Contributor permissions.

보다 세부적인 권한이 필요한 경우 Azure 역할 기반 액세스 제어를 사용 하 여 Site Recovery 액세스 관리를 검토 하세요.If you need more granular permissions, review manage Site Recovery access with Azure role-based access control.
Azure 인프라Azure infrastructure Contoso 가 Azure 인프라를 설정하는 방법을 알아봅니다.Learn how Contoso set up an Azure infrastructure.

시나리오 단계Scenario steps

Contoso 관리자가 마이그레이션을 실행하는 방법은 다음과 같습니다.Here's how Contoso admins will run the migration:

  • 1 단계: 새 Azure 개발/테스트 구독을 프로 비전 하 고 DevTest Labs 인스턴스를 만듭니다.Step 1: Provision a new Azure Dev/Test subscription and create a DevTest Labs instance.
  • 2 단계: 개발 가상 네트워크를 구성 하 고, 리소스 그룹을 할당 하 고, 정책을 설정 합니다.Step 2: Configure the development virtual network, assign a resource group, and set policies.
  • 3 단계: 개발자가 원격 위치에서 사용할 수 있도록 Windows 10 Enterprise 다중 세션 가상 데스크톱을 만듭니다.Step 3: Create Windows 10 Enterprise multi-session virtual desktops for developers to use from remote locations.
  • 4 단계: 개발 및 데이터베이스 마이그레이션을 위해 DevTest Labs 내에서 수식과 Vm을 만듭니다.Step 4: Create formulas and VMs within DevTest Labs for development and migrate databases.

1 단계: 새 Azure 개발/테스트 구독을 프로 비전 하 고 DevTest Labs 인스턴스 만들기Step 1: Provision a new Azure Dev/Test subscription and create a DevTest Labs instance

Contoso 관리자는 먼저 Azure Dev/Test 제안을 사용 하 여 새 구독을 프로 비전 한 다음 DevTest Labs 인스턴스를 만들어야 합니다.Contoso admins first need to provision a new subscription by using the Azure Dev/Test offer, and then create a DevTest Labs instance.

이러한 구성 요소는 다음과 같이 설정됩니다.They set these up as follows:

관리자는 Azure 개발/테스트 구독 제품 에 대 한 링크를 따르고 새 구독을 프로 비전 하 여 시스템에서 최대 80%까지 절약 합니다.The admins follow the link to the Azure Dev/Test subscription offer and provision a new subscription, which saves them up to 80 percent on their systems. 이 제품을 통해 Azure에서 개발/테스트용으로 Windows 10 이미지를 실행할 수 있습니다.This offer allows them to run Windows 10 images on Azure for dev/test. 원격 개발자의 관리 환경을 간소화 하기 위해 Windows 가상 데스크톱 에 대 한 액세스 권한을 얻게 됩니다.They will gain access to Windows Virtual Desktop to simplify the management experience of the remote developers.

활성화 단추가 있는 종량제 개발/테스트 제품의 스크린샷 그림 3: Azure 개발/테스트 구독 제안.Screenshot of a Pay-As-You-Go Dev/Test offer, with an Activate button. Figure 3: An Azure Dev/Test subscription offer.

새 구독이 프로 비전 되 면 Contoso 관리자는 Azure Portal을 사용 하 여 새 DevTest Labs 인스턴스를 만듭니다.With their new subscription provisioned, Contoso admins use the Azure portal to create a new DevTest Labs instance. 새 랩이 리소스 그룹에 만들어집니다 ContosoDevRG .The new lab is created in the ContosoDevRG resource group.

포털 에서 DevTest Labs에 대 한 만들기 단추의 스크린샷 그림 4: 새 DevTest Labs 인스턴스 만들기Screenshot of the Create button for DevTest Labs on the portal. Figure 4: Creating a new DevTest Labs instance.

2 단계: 개발 가상 네트워크 구성, 리소스 그룹 할당 및 정책 설정Step 2: Configure the development virtual network, assign a resource group, and set policies

DevTest Labs 인스턴스를 만든 경우 Contoso는 다음 구성을 수행 합니다.With the DevTest Labs instance created, Contoso performs the following configurations:

  1. 가상 네트워크를 구성 합니다.Configure the virtual network:

    1. 포털에서 Contoso는 DevTest Labs 인스턴스를 열고 구성 및 정책 을 선택 합니다.In the portal, Contoso opens the DevTest Labs instance and selects Configuration and policies.

      ContosoDevTestLabs에 대 한 설정에서 * * 구성 및 정책 * *의 스크린샷

      그림 5: DevTest Labs 인스턴스: 구성 및 정책.Figure 5: DevTest Labs instance: configuration and policies.

    2. Contoso는 가상 네트워크 > + 추가, 선택을 차례로 선택 하 vnet-dev-eus2저장 을 선택 합니다.Contoso selects Virtual Networks > + Add, chooses vnet-dev-eus2, and then selects Save. 이렇게 하면 개발 가상 네트워크를 VM 배포에 사용할 수 있습니다.This allows the development virtual network to be used for VM deployments. DevTest Labs 인스턴스를 배포 하는 동안 가상 네트워크도 만들어집니다.A virtual network was also created during the deployment of the DevTest Labs instance.

      가상 네트워크를 추가 하기 위한 선택 항목의 스크린샷

      그림 6: 가상 네트워크.Figure 6: Virtual networks.

  2. 리소스 그룹 할당:Assign a resource group:

    • 리소스 그룹에 리소스를 배포 하기 위해 ContosoDevRG Contoso는 랩 설정에서이를 구성 합니다.To ensure that resources are deployed to the ContosoDevRG resource group, Contoso configures this in the lab settings. 또한 개발자에 게 참가자 역할을 할당 합니다.It also assigns its developers the Contributor role.

      리소스 그룹을 할당 하기 위한 선택 항목의 스크린샷

      그림 7: 리소스 그룹 할당Figure 7: Assigning a resource group.

    참고

    참가자 역할은 다른 사용자에 게 액세스를 제공 하는 기능을 제외 하 고 모든 권한이 있는 관리자 수준 역할입니다.The Contributor role is an administrator-level role with all rights except the ability to provide access to other users. 자세한 내용은 Azure 역할 기반 액세스 제어를 참조 하세요.Read more about Azure role-based access control.

  3. 랩 정책 설정:Set lab policies:

    1. Contoso는 개발자가 팀 정책 내에서 DevTest Labs를 사용 하 고 있는지 확인 해야 합니다.Contoso needs to ensure that its developers are using DevTest Labs within team policies. Contoso는 이러한 정책을 사용 하 여 DevTest Labs를 구성 합니다.Contoso configures DevTest Labs with these policies.

    2. Contoso는 현지 시간 7:00:00 PM 및 올바른 표준 시간대를 사용 하 여 자동 종료를 사용 하도록 설정 합니다.Contoso enables auto-shutdown with a local time of 7:00:00 PM and the correct time zone.

      자동 종료를 설정 하기 위한 선택 항목의 스크린샷

      그림 8: 자동 종료Figure 8: Auto-shutdown.

    3. Contoso는 개발자가 온라인으로 작업할 때 Vm이 실행 되도록 자동 시작을 설정 합니다.Contoso enables auto-start to have the VMs running when the developers come online to work. 이러한 사용자는 현지 표준 시간대로 구성 되며 개발자가 작업 하는 요일에 대해 구성 됩니다.They're configured to the local time zone and for the days of the week when the developers work.

      자동 시작을 설정 하기 위한 선택 항목의 스크린샷

      그림 9: 자동 시작Figure 9: Auto-start.

    4. Contoso는 허용 되는 VM 크기를 구성 하 여 크고 비용이 많이 드는 Vm이 시작 되지 않도록 합니다.Contoso configures the allowed VM sizes, ensuring that large and expensive VMs can't be started.

      허용 되는 VM 크기를 구성 하기 위한 선택 항목의 스크린샷

      그림 10: 허용 되는 VM 크기Figure 10: Allowed VM sizes.

    5. Contoso는 지원 메시지를 구성 합니다.Contoso configures the support message.

      지원 메시지를 구성 하기 위한 선택 항목의 스크린샷

      그림 11: 지원 메시지Figure 11: A support message.

3 단계: 개발자가 원격 위치에서 사용할 수 있도록 Windows 10 Enterprise 다중 세션 가상 데스크톱 만들기Step 3: Create Windows 10 Enterprise multi-session virtual desktops for developers to use from remote locations

Contoso는 원격 개발자를 위한 Windows 가상 데스크톱 기반을 만들어야 합니다.Contoso needs to create a Windows Virtual Desktop base for remote developers.

  1. Contoso는 모든 가상 컴퓨터 > + 추가 를 선택 하 고 VM에 대 한 Windows 10 Enterprise 다중 세션 기반을 선택 합니다.Contoso selects All virtual machines > + Add and chooses a Windows 10 Enterprise multi-session base for a VM.

    Windows 10 기반 선택을 보여 주는 스크린샷

    그림 12: Windows 10 Enterprise 다중 세션 기반Figure 12: A Windows 10 Enterprise multi-session base.

  2. Contoso는 설치할 아티팩트와 함께 VM의 크기를 구성 합니다.Contoso configures the size of the VM along with the artifacts to be installed. 이 경우 개발자는 Visual Studio Code, Git, Chocolatey 등의 일반적인 개발 도구에 액세스할 수 있습니다.In this case, the developers have access to common development tools such as Visual Studio Code, Git, and Chocolatey.

    선택한 아티팩트를 보여 주는 스크린샷

    그림 13: 아티팩트Figure 13: Artifacts.

  3. Contoso는 정확성을 위해 VM 구성을 검토 합니다.Contoso reviews the VM configuration for accuracy.

    기본에서 가상 컴퓨터를 만드는 데 필요한 항목을 보여 주는 스크린샷

    그림 14: 기본에서 가상 컴퓨터 만들기Figure 14: Create a virtual machine from a base.

  4. VM을 만든 후에는 Contoso의 원격 개발자가이 개발 워크스테이션에 연결 하 여 작업에 사용할 수 있습니다.After the VM is created, Contoso's remote developers can connect to and use this development workstation for their work. 선택한 아티팩트가 설치 되어 개발자가 자신의 워크스테이션을 구성할 때 시간을 절약 합니다.The selected artifacts are installed, saving developers time in configuring their workstation.

    RemoteDevs 가상 머신에 대 한 정보를 보여 주는 스크린샷

    그림 15: 원격 개발자 VMFigure 15: A remote developer VM.

4 단계: 개발을 위해 DevTest Labs 내에서 수식과 Vm 만들기 및 데이터베이스 마이그레이션Step 4: Create formulas and VMs within DevTest Labs for development and migrate databases

DevTest Labs를 구성 하 고 원격 개발자의 워크스테이션을 실행 하면 Contoso는 개발용 Vm 빌드에 집중 합니다.With DevTest Labs configured and the remote developers' workstation up and running, Contoso focuses on building its VMs for development. 시작 하려면 Contoso는 다음 단계를 완료 합니다.To get started, Contoso completes the following steps:

  1. Contoso는 응용 프로그램 및 데이터베이스 Vm에 대 한 수식 (재사용 가능 기본)을 만들며, 수식을 사용 하 여 응용 프로그램 및 데이터베이스 Vm을 프로 비전 합니다.Contoso creates formulas (reusable bases) for application and database VMs, and it provisions application and database VMs by using the formulas.

    Contoso는 수식 > + 추가 를 선택한 다음 Windows Server 2012 R2 Datacenter base를 선택 합니다.Contoso selects Formulas > + Add, and then a Windows Server 2012 R2 Datacenter base.

    Windows 2012 R2 기반의 선택 항목을 보여 주는 스크린샷

    그림 16: Windows 2012 R2 기본.Figure 16: A Windows 2012 R2 base.

  2. Contoso는 설치할 아티팩트와 함께 VM의 크기를 구성 합니다.Contoso configures the size of the VM along with the artifacts to be installed. 이 경우 개발자는 Visual Studio Code, Git, Chocolatey 등의 일반적인 개발 도구에 액세스할 수 있습니다.In this case, the developers have access to common development tools such as Visual Studio Code, Git, and Chocolatey.

    Windows 2012 R2 기본 구성에 대해 선택한 VM 크기와 아티팩트를 보여 주는 스크린샷

    그림 17: Windows 2012 R2 기본 구성Figure 17: A Windows 2012 R2 base configuration.

  3. 데이터베이스 VM 수식을 만들기 위해 Contoso는 동일한 기본 단계를 따릅니다.To create the database VM formula, Contoso follows the same basic steps. 이번에는 기본에 대해 SQL Server 2012 이미지를 선택 합니다.This time, it selects a SQL Server 2012 image for the base.

    SQL Server 2012 R2 base의 선택 항목을 보여 주는 스크린샷

    그림 18: SQL Server 2012 이미지Figure 18: A SQL Server 2012 image.

  4. Contoso는 크기와 아티팩트를 사용 하 여 수식을 구성 합니다.Contoso configures the formula with the size and artifacts. 아티팩트에는이 데이터베이스 개발 VM 수식에 필요한 SQL Server Management Studio이 포함 되어 있습니다.The artifacts include SQL Server Management Studio, which is required for this database development VM formula.

    SQL 2012 R2 기본 구성을 보여 주는 스크린샷

    그림 19: SQL 2020 R2 기본 구성Figure 19: An SQL 2020 R2 base configuration.

    Azure DevTest Labs에서 수식을 사용 하는방법에 대해 자세히 알아보세요.Learn more about using formulas with Azure DevTest Labs.

  5. 이제 Contoso는 개발자가 응용 프로그램 및 데이터베이스에 사용할 수 있는 Windows 기본 수식을 만들었습니다.Contoso has now created the Windows base formulas for its developers to use for applications and databases.

    구성 된 데이터베이스 VM을 보여 주는 스크린샷

    그림 20: Windows 기본 수식Figure 20: Windows base formulas.

다음 단계는 수식을 통해 응용 프로그램 및 데이터베이스 Vm을 프로 비전 합니다.The next steps provision application and database VMs through the formulas:

  1. Contoso는 만든 수식을 사용 하 여 모든 가상 컴퓨터 를 선택 하 고 Windows2012AppDevVmBase 수식을 사용 하 여 현재 응용 프로그램 개발 vm의 구성과 일치 시킵니다.With the formulas created, Contoso next selects All virtual machines and then the Windows2012AppDevVmBase formula to match the configuration of its current application development VMs.

    앱 VM을 기본으로 선택 하는 것을 보여 주는 스크린샷

    그림 21: 응용 프로그램 개발 VMFigure 21: An application development VM.

  2. Contoso는이 응용 프로그램 VM에 필요한 크기와 아티팩트를 사용 하 여 VM을 구성 합니다.Contoso configures the VM with the size and artifacts that are required for this application VM.

    앱 VM에 대 한 크기 및 아티팩트 선택을 보여 주는 스크린샷

    그림 22: VM에 대 한 크기 및 아티팩트 구성Figure 22: Size and artifact configurations for a VM.

  3. Contoso는 현재 데이터베이스 개발 Vm의 구성과 일치 하도록 SQLDbDevVmBase 수식을 사용 하 여 데이터베이스 VM을 프로 비전 합니다.Contoso provisions the database VM by using the SQLDbDevVmBase formula to match the configuration of its current database development VMs.

    데이터베이스 VM의 프로 비전을 보여 주는 스크린샷

    그림 23: 데이터베이스 VMFigure 23: A database VM.

  4. Contoso는 필요한 크기와 아티팩트를 사용 하 여 VM을 구성 합니다.Contoso configures the VM with the size and artifacts that are required.

    데이터베이스 VM에 대 한 크기 및 아티팩트 선택을 보여 주는 스크린샷

    그림 24: VM에 대 한 데이터베이스 구성Figure 24: Database configurations for a VM.

  5. Contoso의 개발자는 원격 개발자 워크스테이션과 함께 만든 첫 번째 Vm을 사용 하 여 Azure에서 코드 작성을 시작할 준비가 되었습니다.With the first VMs created along with the remote developers' workstation, Contoso's developers are ready to start writing code in Azure.

    Contoso virtual machines를 보여 주는 스크린샷

    그림 25: Contoso Vm.Figure 25: Contoso VMs.

  6. 이제 Contoso는 백업에서 또는 특정 유형의 코드 생성 프로세스를 사용 하 여 Vm에서 스키마를 빌드하는 방식으로 개발 데이터베이스를 복원할 수 있습니다.Contoso can now restore its development databases either from backups or by using some type of code generation process to build the schema on the VMs. 아티팩트를 통해 이미 설치 된 SQL Server Management Studio는 도구를 설치할 필요가 없는 간단한 작업입니다.With SQL Server Management Studio already installed through the artifacts, these are simple tasks that don't require installing any tools.

마이그레이션 후 정리Clean up after migration

Contoso는 DevTest Labs를 사용 하 여 Vm을 Azure로 마이그레이션하기 위해 계속 이러한 단계를 사용 합니다.Contoso will continue using these steps to migrate its VMs to Azure by using DevTest Labs. 각 마이그레이션이 완료 되 면 이제 모든 개발 Vm이 DevTest Labs에서 실행 됩니다.With each migration complete, all development VMs are now running in DevTest Labs.

이제 Contoso는 다음 정리 단계를 완료해야 합니다.Now, Contoso needs to complete these cleanup steps:

  • VCenter 인벤토리에서 Vm을 제거 합니다.Remove the VMs from the vCenter inventory.
  • 로컬 백업 작업에서 모든 Vm을 제거 합니다.Remove all the VMs from local backup jobs.
  • 내부 설명서를 업데이트 하 여 Vm의 새 위치와 IP 주소를 표시 합니다.Update internal documentation to show the new location and IP addresses for the VMs.
  • VM과 상호 작용하는 모든 리소스를 검토하고 모든 관련 설정이나 설명서를 업데이트하여 새 구성을 반영합니다.Review any resources that interact with the VMs, and update any relevant settings or documentation to reflect the new configuration.

보안Security

Contoso 보안 팀은 Azure Vm을 검토 하 여 보안 문제를 확인 합니다.The Contoso security team reviews the Azure VMs to determine any security issues. 액세스를 제어하기 위해, 팀에서 VM의 NSG(네트워크 보안 그룹)를 검토합니다.To control access, the team reviews the network security groups (NSGs) for the VMs. NSGs는 응용 프로그램에 허용 되는 트래픽만 도달할 수 있도록 하는 데 사용 됩니다.NSGs are used to ensure that only traffic allowed to the application can reach it. 또한 Azure Disk Encryption 및 Azure Key Vault를 사용 하 여 디스크의 데이터를 보호 하는 것으로 간주 합니다.The team also considers securing the data on the disk by using Azure Disk Encryption and Azure Key Vault. 자세한 내용은 Azure의 IaaS 작업에 대 한 보안 모범 사례를 참조 하세요.For more information, see Security best practices for IaaS workloads in Azure.

라이선스 및 비용 최적화Licensing and cost optimization

  • Contoso는 Azure 개발/테스트 구독을 통해 모든 개발 Azure 리소스를 만들어 80% 절감 액을 활용할 수 있도록 합니다.Contoso will ensure that all development Azure resources are created through an Azure Dev/Test subscription to take advantage of the 80 percent savings.
  • 비용이 포함 되 고 과도 한 프로 비전이 실수로 발생 하지 않도록 Vm에 대 한 모든 DevTest Labs 인스턴스 및 정책에 대 한 예산이 검토 됩니다.Budgets will be reviewed for all DevTest Labs instances and policies for the VMs to ensure that costs are contained and overprovisioning doesn't happen mistakenly.
  • Contoso는 Azure 리소스를 모니터링 하 고 관리 하는 데 도움이 되는 Azure Cost Management + 청구 를 사용 하도록 설정 합니다.Contoso will enable Azure Cost Management + Billing to help monitor and manage the Azure resources.

결론Conclusion

이 문서에서 Contoso는 DevTest Labs로 개발 환경을 이동 했습니다.In this article, Contoso moved its development environments to DevTest Labs. 또한 원격 및 계약 개발자를 위한 플랫폼으로 Windows 가상 데스크톱을 구현 했습니다.It also implemented Windows Virtual Desktop as a platform for remote and contract developers.

도움이 더 필요하세요?Need more help?

지금 구독에서 DevTest labs 인스턴스를 만들고 개발자 용 DevTest labs를 사용 하는 방법을 알아보세요.Create a DevTest Labs instance in your subscription now, and learn how to use DevTest Labs for developers.