AIGS Cluster 사용 안내

신청 링크

신청 접수 링크 : https://forms.gle/FwhEvVNzRHbfyjit7
신청 접수 현황 : https://docs.google.com/spreadsheets/d/1m04x79PqbX0N2pF5luOKsmy3oNTCpzYb6f31e39tTMk/edit?usp=sharing

클러스터 운영 방침 (by 문영제 선생님) : https://bit.ly/aigs-inst-notify

UNIST AIGS Cluster

UNIST AIGS에서 제공하는 GPU 클러스터 사용 방법입니다.
기존에는 개인별로 계정을 발급 받아서 사용했지만,
2025년 5월 부터 연구실별로 계정을 발급 받아서 사용하는 것으로 변경 되었습니다.

또한, 연구실 별로 사용 가능한 토큰을 매 년 발급받는 형식으로 변경 되었습니다.

따라서 연구실 별 별도 관리자가 신청 내역을 취합하고 제출하는 방식으로 변경 되었습니다.

사용 신청 방법 요약

  1. 본 사용 안내 페이지 정독, 사용규칙 준수
  2. 사용 기간, 사용하고자 하는 GPU Type 및 개수 결정
  3. 매 주 화요일까지 신청접수링크 를 통한 접수
  4. Slack 통해서 관리자(2025.05 현재 @jwb) 에게 알림
  5. 관리자가 배정 확인 및 비밀번호 수령시 신청자에게 전달.
  6. 풀로드 걸어서 알차게 쓰기

AIGS Cluster 현황

  • AIGS Cluster는 Kubernetes(k8s) 로 관리됩니다. 따라서 발급받은 각 pod은 Docker container 이며, 가상머신 으로 생각하시면 편합니다.
  • Cluster에서 발급받은 miil 계정으로 pod 생성후, slurmmaster 를 통해서 ssh 포워딩을 제공하고, slurmmaster 에서 접속하는 방식으로 사용합니다.
  • 3개의 GPGPU 노드가 2개의 스토리지 노드에 연결 되어 있습니다.
    • k8s1(쿠버네티스1) : A100, H200이 있는 고성능 노드.
    • k8s2(쿠버네티스2) : A6000, 3090이 있는 보급형 노드.
    • node1 : A100 8EA 단독 서버 (i.e. 신청시 8개 전부 사용 신청)
    • Data1 : k8s1, node1 이 연결 되어있음.
    • Data2 : k8s2 가 연결 되어있음.
    • 스토리지 노드 별 계정 동기화 / 데이터 동기화는 없음.
  • GPUs per node:
    • k8s1 : A100-80G 16EA, H200 0EA (연말에 H200 추가 예정)
    • k8s2 : A6000 14EA, 3090 15EA
    • node1 : A100-80G 8EA, node1 신청시 k8s1 신청 불가능.
  • 신청시 (최대)사용 기간
    • k8s1, k8s2 : 1주일
    • node1 단독서버: 2주일
    • 연장 신청을 통해서 이어서 사용 가능.

Step by Step

사용 할 Docker Image 준비
  • container 는 image를 실행 했을 때 생기는 instance를 의미합니다.
    • e.g. Ubuntu image 파일을 Docker로 실행하면 Ubuntu container(\sim VM) 생성
  • Default image가 있어서, 개별로 image를 준비하지 않아도 사용 가능합니다.
  • 개별로 image를 준비하면, 실행 환경 준비하는 시간을 단축시킬 수 있기에 권장 하는바 입니다. (아닌 경우도 있음)
  • Image build with Dockerfile : 상세 내용은 외부자료 참조
    • 사용할 apt,pip,conda 패키지들 파악
    • Dockerfile 작성 : 요리의 레시피에 해당.
      • 내가 원하는 세팅을 만들기 위해 필요한 과정 작성
      • e.g. Ubuntu base image에 xyz command로 Pytorch부터 깔고…
    • Docker build : dockerfile 레시피대로 Docker가 조리 시작.
      • --platform 에서 arm64 / amd64 설정 유의.
    • Push to DockerHub, pod 생성시 pull 하기 위함.
  • TL;DR : default image 쓰거나 / dockerhub push 하여 준비
  • UPD20260212 : 이전에는 AIGS 클러스터에서 미리 준비해준 image만 사용 가능했지만,
    현재는 dockerhub 에서 자유롭게 pull이 가능합니다.
    문영제 선생님 매뉴얼 참조.
신청 접수 및 배정
  • 매주 화요일까지 신청링크 를 통해서 접수
  • 배정 결과는 목요일 오후에 관리자에게 전달 됨.
  • 관리자는 신청 된 사양대로 pod 준비
  • pod 준비 되면 slurmmaster 터널링 후 전달.
  • 접수 한 개수보다 적게 배정 될 수 있음. (e.g. 4개 신청, 2개 배정)
  • k8s1, k8s2 각각 1명씩 배정하여 사용.
실제 사용
  • 사용 할 데이터셋이 용량이 크면 미리 관리자에게 연락 및 상의 해야함.
    • 관리자가 scp 등 간단한 작업으로 옮길 수 있도록 준비 해야함.
    • 대형 외부 트래픽 발생으로 정보보안팀 제재시 연구실 계정 전체 차단됨.
  • 관리자가 초기 비밀번호를 신청자에게 전달하고,
  • 사용자는 배정 받은 클러스터(k8s1, k8s2) 에 접속하여 사용.
  • 비밀번호 변경시 반드시 관리자에게 전달 해주세요.
    관리자가 접속하지 못하게 하는 경우 발생시 추후 신청 불이익 예정.
  • 접속한 디렉토리에 있는 pod-template.yaml을 실행하여 container 생성 및 접속.

주의 사항

  • 대형 트래픽 발생하여 연구실 계정 페널티 먹는 경우, 문제를 일으킨 사람은 추후 신청에서 불이익이 있을 수 있습니다.
  • (50G 이상의) 데이터셋을 pod에서 다운 받는 경우, 아래 예시와 같이 양식을 작성하여 unisecurity01@unist.ac.kr 로 미리 연락 바랍니다.
    1) 작업자명: OOO(1xx동 x층 xxx-x), 010-0000-0000
    2) 작업기간: 202x.MM.DD(x요일)~202x.MM.DD(x요일) 연속 작업
    3) 작업 시스템: AI 모델 학습 연구용 GPU 서버, Ubuntu, xx.xx.xx.xx
     (AIGS cluster의 경우 10.0.7.72)
    4) 수집대상 (범위): DATASET_NAME
    5) 수집정보(데이터): DATASET_INFO, 데이터셋 웹페이지(GH repo 주소도 가능)
    6) 작업 목적과 내용: XYZ 연구에 지속적으로 사용 예정
    
  • 연구실별 신청 가능한 GPU 개수 : k8s1 8개, k8s2 8개(3090 + A6000)
  • 1개의 pod은 1개의 gpu type 만을 사용해야함.
  • !!GPU 할당 실패시 연구실 계정 접속이 차단됨!!
    • GPU 배정 못 받았는데 클러스터 접속해서 GPU 사용하는걸 막기 위함.
    • 클러스터 운영팀에서 차단하므로 연구실 관리자가 할 수 있는게 없음.
    • 따라서 중요 데이터는 항상 백업을 해야함.
  • GPU 할당 개수가 줄어든 경우, 사용중인 container를 삭제 후 재설정 해야함.
    • e.g. GPU 3개 쓰는 pod P1 가정. miil 전체가 2개 할당 받음. P1 삭제후 P2 배정.
    • 미리 조치 하지 않은 경우, 클러스터 측에서 개수를 맞추기 위해서 삭제함.
  • Emergency 체크 한 사람 \geq 배정 gpu 개수 일 때, 당사자들끼리 협의 후 관리자에게 안내 부탁드립니다.

results matching ""

    No results matching ""