메뉴 닫기

SageMaker HyperPod Spaces로 대화형 ML 개발 환경 빠르게 구축하기

아마존 SageMaker HyperPod로 손쉽게 ML 개발 환경 구축하기

머신러닝(ML) 개발자나 데이터 과학자에게 가장 중요한 것 중 하나는 안정적인 개발 환경입니다. 각자의 로컬 환경이나 별도의 서버에 JupyterLab, Visual Studio Code(이하 VS Code) 등을 세팅해 사용하는 것은 번거롭고, 일관성 유지도 어렵습니다. 아마존 SageMaker HyperPod는 바로 이런 불편을 해결하면서도 비용 최적화 및 협업을 가능하게 해주는 강력한 솔루션입니다.

이번 블로그에서는 SageMaker HyperPod 기반의 Spaces 기능을 활용해 대화형 IDE 환경을 어떻게 구성하고 활용할 수 있는지, 그리고 이를 통해 ML 워크플로우를 어떻게 자동화하고 고도화할 수 있는지 소개합니다.

SageMaker HyperPod Spaces란?

SageMaker HyperPod Spaces는 SageMaker HyperPod 클러스터 내에서 JupyterLab이나 오픈소스 VS Code 등의 대화형 개발 환경을 실행할 수 있도록 지원하는 애드온(add-on) 기능입니다. 이를 통해 데이터 과학자 및 AI 개발자들이 친숙한 도구를 통해 코드를 작성하고 실험을 수행할 수 있으며, GPU 자원까지 공유하여 보다 효율적인 리소스 활용이 가능해졌습니다.

Spaces는 반복적인 환경 세팅을 최소화하고, 동일한 인프라 위에서 개발과 학습을 병행할 수 있으며, 작업 공간을 셀프 컨테이너로 구성할 수 있어 보안 및 관리 효율성도 높아집니다.

SageMaker HyperPod Spaces 구성도 다이어그램

Spaces 설치 및 구성 가이드

Step 1: Spaces Add-on 설치
클러스터 관리자는 SageMaker 콘솔에서 ‘IDE 및 노트북’ 탭으로 이동하여 ‘Quick Install’을 선택함으로써 Spaces Add-on을 손쉽게 설치할 수 있습니다. 이 과정에서 필요한 IAM 역할, EKS 애드온, 시스템 관리자 설정이 자동화되어 구성됩니다.

SageMaker 콘솔에서 IDE 및 노트북 설치 화면

Step 2: 사용자 접근 권한 설정
EKS Access Entry를 통해 사용자별로 Spaces 생성 및 접근 권한을 부여합니다. 이때 IAM 정책은 AmazonSagemakerHyperpodSpacePolicy 및 SpaceTemplatePolicy를 포함해야 합니다.

Step 3: Spaces 생성 및 접근 방법
Spaces는 CLI(hyp) 또는 kubectl 명령어를 통해 생성할 수 있으며, 생성된 개발 공간은 웹 브라우저에서 JupyterLab으로 접속하거나 로컬 VS Code의 AWS Toolkit을 통해 원격으로 연결할 수 있습니다.

예를 들어, 다음 명령어를 통해 새로운 개발용 Space를 생성할 수 있습니다.

hyp create hyp-space
  –name data-science-space
  –display-name "Data Science Workspace"
  –namespace "default"

VS Code에서 해당 공간에 접속:

hyp create hyp-space-access
  –name data-science-space
  –connection-type vscode-remote

AWS Toolkit for VS Code를 통한 HyperPod 연결 화면

활용 전략 및 모범 사례

  1. Spaces 활용 자동화
    사전 정의된 템플릿과 CLI 명령어를 조합하여 Spaces를 자동으로 생성/삭제할 수 있습니다. 이를 통한 CI/CD 통합으로 프로젝트별 워크스페이스 관리 자동화도 가능합니다.

  2. 협업 및 롤 기반 액세스 제어(RBAC)
    EKS Access Entry 기반으로 개별 사용자 또는 팀 수준에서 액세스 제어가 가능하며, 필요 시 공용 또는 개인 전용 Space 설정도 가능합니다. SageMaker Distribution 이미지를 사용할 경우 실시간 협업(Real Time Collaboration)도 지원됩니다.

  3. 비용 최적화 기능
    MIG 기술을 통한 Fractional GPU 구성으로 GPU 자원을 세분화해 다수의 실험을 병렬 처리할 수 있습니다. 또한 실행 중인 Space가 일정 시간 동안 비활성 상태일 경우 자동으로 종료되도록 설정할 수 있어, 불필요한 비용 낭비를 방지할 수 있습니다.

Fractional GPU 예시 명령어:

hyp create hyp-space
–name test-space
–display-name "mig-testing"
–accelerator-partition-type mig-3g.20gb
–accelerator-partition-count 1
–memory 8Gi
–template-ref sagemaker-code-editor-template

  1. 모니터링과 거버넌스
    HyperPod Observability 애드온을 통해 클러스터 전체의 리소스 사용 현황을 시각화하여 모니터링할 수 있으며, 거버넌스 설정을 통해 작업 우선순위 조율 및 강력한 리소스 관리 정책 수립도 가능합니다.

비교 및 활용 시 이점

기존 SageMaker Studio 대비 HyperPod 기반 Spaces는 확장성과 유연성 측면에서 우수하며, 사용자 정의 이미지를 사용할 수 있다는 점, 그리고 EKS 내에서의 통합 관리가 가능하다는 점에서 엔터프라이즈 환경에 적합합니다.

또한 로컬 VS Code와 연동이 가능하다는 점에서 개발 접근성이 높고, 쿠버네티스 기반으로 배포되어 자동화된 배포 가이드 구성에도 유리합니다.

마무리하며

SageMaker HyperPod Spaces는 AI/ML 개발을 위한 지속적이고 유연한 개발 환경을 제공함으로써 팀 협업부터 모델 배포까지의 전 과정을 단순화합니다. 특히, 개발과 실험 환경의 일관된 유지가 필요한 대규모 프로젝트에서 탁월한 선택이 될 수 있습니다. 전체적인 워크플로우 개선, 비용 절감, 효율적인 자원 활용이 필요한 조직이라면 Spaces의 도입을 고려해보세요.

https://aws.amazon.com/blogs/machine-learning/power-up-your-ml-workflows-with-interactive-ides-on-sagemaker-hyperpod/

AI, Cloud 관련한 문의는 아래 연락처로 연락주세요!

(주)에이클라우드
이메일 : acloud@a-cloud.co.kr
회사 번호 : 02-538-3988
회사 홈페이지 : https://www.a-cloud.co.kr/
문의하기


AI, Cloud 도입 상담 배너