애플리케이션 / 오피스ㆍ협업 / 윈도우 / 클라우드

“개발용 컴퓨터도 클라우드에서 빠르게” 마이크로소프트 데브 박스

Simon Bisson | InfoWorld 2022.06.07
개발용 PC를 새로 설정하는 데는 시간이 오래 걸린다. 개발자라면 모두 겪어봤을 것이다. 필자도 지난 2월 새로운 디바이스를 받을 때, 미리 가이드를 줘서 필요한 프로그램을 알려줬지만 몇 가지는 결국 직접 설치해야 했다. 새 프로젝트를 시작할 때 혹은 새로운 기술을 도입할 때, 설치할 앱과 툴의 개수는 점점 많아진다.

이 부분은 개발자의 생산성을 갉아먹는 요소다. 새 프로젝트가 시작될 때면 더욱 그렇다. 어떤 툴을 설치해야 할까. 새로 설치하는 프로그램이 평소 사용하는 도구에 영향을 주진 않을까. 가령 닷넷 개발을 위한 환경과 파이토치(PyTorch)로 머신러닝을 연구하는 환경은 서로 다른 모습일 것이다. 하드웨어도 생각해 봐야 한다. 오피스용 자바스크립트 플러그인을 개발한다면 저사양 하드웨어만 있어도 되지만, 컴퓨터 비전 관련 코드를 빌드하고 테스트하는 시스템에선 64GB RAM, 고성능 GPU 같은 하드웨어가 필요하다.
 
ⓒ Getty Images Bank

개발자는 변화에 빠르게 적응해야 한다. 이를 위해선 보통 여러 기술을 지원하는 최신 하드웨어가 뒷받침돼야 한다. 하드웨어의 성능이 뛰어날수록 개발자는 버그가 없으면서 의도한 작업을 정확히 수행하는 코드를 편히 작성할 수 있다. 그러나 PC가 아무리 빠르다고 해도 IDE, 프로젝트 라이브러리, 깃 등 개발에 필요한 모든 도구를 설치하고 구성하는 데는 시간이 걸린다.

개발자가 새로운 프로젝트에 투입되자마자 즉시 작업할 수 있으려면 조직은 무엇을 해야 할까? 마이크로소프트와 깃허브(마이크로소프트의 자회사)는 이 문제를 꽤 오랫동안 고민한 업체이며 두 업체의 기술에서 두 가지 흐름을 읽을 수 있다. 바로 개발자가 자주 쓰는 도구 및 서비스를 컨테이너화해주는 것과 원격 데스크톱 설치를 지원하는 것이다. 

애저에 호스팅하고 윈도우 365로 관리

마이크로소프트는 빌드 2022 행사에서 ‘데브 박스(Dev Box)’를 공개했다. 데브 박스는 애저 위에서 윈도우 가상머신을 운영하고 개발 환경을 구축해 주는 도구다. 즉 개발자는 데브 박스로 기반 PC를 바꿀 필요 없이 미리 설정해 놓은 시스템을 신속하게 실행해 업무를 시작할 수 있다. 마이크로소프트는 윈도우 365나 시스템 관리 도구인 엔드포인트 매니저(Endpoint Manager) 같은 서비스를 내놓고, 기업용 데스크톱을 클라우드에서 관리할 수 있게 지원해왔다. 데브 박스도 그런 방향성을 가진 기술이다. 

마이크로소프트가 이전에 개발한 ‘윈도우 365 클라우드 PC’는 가상 데스크톱 플랫폼으로, 윈도우 10과 11을 호스팅하는 역할을 한다. 이때 온프레미스이든 모바일이든 디바이스는 인튠(Intune)으로 관리할 수 있으며, 엔드포인트 매니저의 다른 여러 기능도 함께 활용할 수 있다. 

데브 박스 같은 도구를 제공하려면 일단 윈도우를 클라우드에 설치하는 작업부터 해야 한다. 그다음 원할 때마다 미리 만든 가상 데스크톱 이미지를 실행하거나 조정하면 된다. 

윈도우 365는 이미 재택 및 하이브리드 환경에서 이용되고 있다. 윈도우 365 같은 기술을 이용하면 업무별로 특화된 작업 환경을 구축할 수 있다. 모든 PC와 태블릿에서 이용할 수 있고 자주 이용되는 생산성 소프트웨어나 협업 맞춤 툴을 이용할 수 있는 환경이다. 

이제 개발자에게 맞춤화된 업무 환경도 생겨나고 있다. 즉 이제 어떤 기기에서든 윈도우 365를 실행하거나 윈도우 365로 전환할 수 있다. 윈도우에 자체 내장된 가상 데스크톱 툴만 이용하면 된다. 인터넷 속도가 빠르고 최신 원격 업무 지원 툴을 이용하고 있다면 지연 속도는 최소로 줄어들 수 있으며, 그 덕에 사용자는 가상 데스크톱인지 로컬 PC인지 구분하기 어려워질 것이다. 

단 일반 사용자는 ‘마이크로소프트 원격 데스크톱’으로 ‘윈도우 365’나 ‘데브 박스’를 아직 이용할 수 없다. 데브 박스는 ‘원격 데스크톱’의 새 버전이라고 할 수 있다. 원격 데스크톱은 원도우에 자체 내장돼 있으며, 관리형 클라우드 환경에서만 연결 가능하다. 이미 원격 데스크톱을 사용해서 개발 서버를 관리하고 애저 리소스를 다루고 있다면, 일단 원격 데스크톱과 데브 박스 두 가지를 같이 사용해야 한다. 

데브 박스의 활용 예시

사용자 관점에서 데브 박스는 포털 안의 링크일 뿐이다. 링크를 클릭하면 원격 데스크톱에서 데브 박스가 열리고(또는 다운로드를 요청하는 메시지가 표시) 가상머신이 실행되면서 미리 설정해 놓은 이미지가 실행된다. 가상머신이 최종적으로 생성되면 사용자는 작업을 시작하는 데 필요한 모든 툴에 접근할 수 있다. 이때 데브 박스 사용자는 이미지와 관련한 권한을 더 많이 가진다. 윈도우 365보단 조정할 수 있는 요소가 많아서 사용자는 원하는 대로 툴을 설치하면 된다. 
데브 박스에 연결된 디바이스 성능과 가상 환경은 서로 영향을 주지 않는다. 즉, 주말에 집에서 구형 아이패드로 코드를 확인할 때와 사무실(요즘 시대에선 집과 회사 구분 없이 어디서나)의 워크스테이션에서 코드를 확인할 때 모두 동일한 성능을 경험할 수 있다. 

아키텍트나 프로젝트 리더라면 직원 중 누가 어느 리소스를 받을지 설정한 후 필요한 툴을 결정하고, 예산을 책정해야 한다. 관리자 툴을 이용하면 현재 사용 중인 리소스를 볼 수 있는데, 이런 툴 덕에 요구사항을 높이거나 낮추면서 프로젝트 운영을 예산 범위 안에서 맞출 수 있다. 가상환경을 이용하지 않을 때 데브 박스는 리소스를 절전 상태를 만들어 컴퓨팅 운영 비용을 최소로 줄여 주기도 한다.

관리자와 아키텍트가 이미지에 애플리케이션을 미리 올려놓기만 하면, 데브 박스는 개발에 필요한 모든 도구를 모아 즉시 사용할 수 있도록 준비해둔다. 이미지는 필요할 때까지 저장할 수 있으므로 여러 작업에 맞춰 다양하게 데브 박스 라이브러리를 확장하거나 새 툴의 테스트 환경을 구축할 수도 있다.

데브 박스에서 흥미로운 것은 한 사용자에게 데브 박스 여러 개를 할당할 수 있다는 점이다. 예를 들어 머신러닝 모델을 구축하고 학습하려고 데브 박스 안에 데이터 도구와 서비스를 구성해 놓았다고 치자. 사용자는 이 데브 박스로 모델을 학습시키는 동시에, 해당 모델의 API를 사용해 애플리케이션을 빌드하고 테스트하는 데브 박스를 따로 구성하고 열 수 있다. 데브 박스를 전환하는 작업은 데브 박스 연결을 위해 이용했던 포털 안에서 진행된다. 두 개의 데브 박스는 같은 레포지토리에 연결되며, 이때 메인 브랜치(Branch)에는 영향을 주지 않고 새 라이브러리나 구성 요소가 코드에 어떤 영향을 미치는지 확인할 수 있다. 

한가지 짚고 넘어갈 것은 데브 박스는 깃허브의 코드스페이스(Codespaces)와 직접적인 연관이 없다는 점이다. 사실 데브 박스를 코드스페이스에 연동시키면 안 될 이유는 딱히 없고 오히려 연동되면 좋은 점이 많을 수 있다. 코드스페이스는 컨테이너화된 환경으로 클라우드 기반 애플리케이션을 빌드하고 테스트하기 위해 쓰인다. 런타임 플랫폼을 위한 코드 작성 도구라는 성격이 강하고, 프로덕션 리소스를 사용하지 않는다.

이번 빌드 행사에서 마이크로소프트는 여러 개발자 도구를 새로 발표했는데, 그중 몇몇 개발자 도구는 코드스페이스의 개념을 차용했다. 

‘애저 배포 환경(Azure Deployment Environment)’은 인프라 배포 과정에서 필요한 템플릿을 만들어주는 기술이다. 개발자는 이 도구로 어떤 코드를 집중적으로 봐야 할지 쉽게 알 수 있으며, 플랫폼 엔지니어는 해당 코드를 관리하고 모니터링할 수 있다. 예를 들어 개발자는 애플리케이션 수명 주기 속 각 단계에 따라 서로 다른 배포 환경을 여러 개 가질 수 있다. 그리고 각기 다른 보안이나 네트워크 모델을 적용해 개발이나 테스트 단계별로 다른 환경을 구축하고 이후에 프로덕션 환경에서만 인터넷이나 기업용 vLAN에 연결되도록 구현할 수 있다. 

애저 배포 환경은 데브 박스와 마찬가지로 시간 예약 설정이 가능하다. 예를 들어 오전 9시에 가상 서버를 실행한 후 작성한 코드를 테스트하고, 모두가 퇴근하는 오후 7시에 종료하도록 설정하면 된다. 시간 설정 기능을 사용하면 일과 삶의 균형을 개선하는 데 도움받을 수 있다. 다음 날 아침 모든 업무 환경이 잘 준비될 거라 예상할 수 있으므로 걱정 없이 바로 퇴근할 수 있는 것이다. 또한 데브 박스를 포함해 모든 환경이 클라우드에서 실행되므로 네트워크 연결만 있으면 어디서든 여러 원격 데스크톱을 살펴볼 수 있다. 이제 여름인데 해변에서 코딩해보는 건 어떨까? 데브 박스와 애저 배포 환경이 있다면 못 할 이유는 없다.
editor@itworld.co.kr 
 

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.