Aidemy Premium Plan에서 제공하는 가상 환경의 메커니즘

1540 단어 AzureAzureADNode.js

개요



Aidemy Premium Plan에서 수강생이 사용하는 기계 학습을 위한 가상 환경 "Fastpyter"의 구조에 대해 설명합니다.
본 기사에서는 소스 코드 등은 일절 나오지 않습니다.

Fastpyter는?



Aidemy Premium Plan에서 수강생이 사용하는 기계 학습용 가상 환경입니다.
머신러닝을 위한 스펙을 가지고 있으며 머신러닝에서 자주 이용되는 파이썬 패키지의 대부분과 jupyter notebook이 설치되어 있습니다.
또한 각 수강자마다 개별 데이터를 보관할 수 있습니다.

시스템 개요




이 그림을 기반으로 설명합니다.
  • 먼저 사용자는 인터넷에 게시된 프런트 서버에 액세스합니다.
  • 프런트 서버에서 인증을 수행합니다.
  • 인증된 사용자인 경우 공용 IP가 없는 각자의 VM에 액세스합니다.

  • Fastpyter의 기본은이 3 단계로 이루어져 있습니다.

    VM 제어



    각 개인이 이용하는 VM의 스펙은 기계 학습용이라고 하는 일도 있어 매우 좋은 성능의 것을 이용하고 있습니다.
    그 때문에 인프라에 익숙한 분은 알아차릴지도 모릅니다만, 유지비도 엄청 걸립니다.
    (계속 기동한 채의 경우 매달 약 75,000엔 걸려 버립니다.)

    그래서 비용을 억제하기 위해 필요한 때만 VM을 시작하고 불필요하게 되면 VM을 삭제한다는 제어를 하고 있습니다.
    이것은 Azure Active Directory를 사용하여 실현됩니다.

    VM 지우면 데이터는 어떻게 될까?



    자, 필요하지 않을 때 VM을 삭제하면 데이터를 저장하는 방법을 생각해야합니다.
    Fastpyter에서는 부팅 시 각 수강자 전용의 가상 디스크 드라이브를 마운트하고, VM을 삭제해도 그 디스크만은 삭제하지 않고 남겨두는 것으로 각 수강자마다 데이터를 보관 유지하고 있습니다.

    실물로 비유하면, 매번 PC를 조립하여 기동해 외장 하드 디스크를 접속해, 셧다운 해 외장 하드 디스크를 분리해 PC를 분해한다. 그런 이미지가 가깝습니다.

    향후 전망



    Kubernetes로 이동하고 싶습니다.
    현재 Fastpyter가 안고 있는 1번의 과제는 VM의 작성·삭제의 시간의 길이입니다. Kubernetes와 같은 컨테이너 기술을 이용함으로써 VM 작성 및 삭제를 보다 가속화하여 보다 쾌적한 학습 환경을 제공할 수 있도록 해 나가고 싶습니다.

    좋은 웹페이지 즐겨찾기