MoaRoom / MoaRoom-Infra

Codes and etc for components used in K8s cluster

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Master] 과제 생성 및 마감

NayeonKeum opened this issue · comments

내용

Master에 Slave 상호작용에 필요한 API 및 기능 개발

작업 내용

  • [Master] 교수가 과제 생성 시
    • 강의 수강 Student 목록을 이용하여 Master에 디렉토리 생성(~/강의명/과제명/학번)
    • (#8) Slave 서버의 POST api 호출(/mkdir/{dir_name})
    • 과제 마감 cron 작업을 Master에 생성
  • [Master] 과제 마감 시(cron) 작업 단계
    1. Slave의 주소들 GET(DB 서버, service discovery with Pod name?)
    2. (#8) 위 주소를 이용하여 Slave 서버의 GET api 호출(/files/{dir_path})
    3. 호출한 api를 바탕으로 Master의 로컬에 파일을 생성함
    4. 2, 3 반복(for loop)
  • Master <-> Slave API 호출
    • http://slave-ubuntu-svc.slave-ns.svc.cluster.local

참고 사항

  • 스키마
  • slave_base_url이 slave마다 다를텐데 라우터를 이용할지? 하나의 서버에 안에 구성해야한다면 포트를 어떻게 다르게 할지? 스키마에 추가할지?

API 명세서


Master

POST

/assignment/{assignment_info : ?}: 과제 생성

DEL

/assignment/{id:?}: 과제 삭제?