팀 생애주기
팀을 만들고 예산을 나눠주고 필요하면 회수한다. 예산은 조직 미할당 풀에서 팀으로 이동하는 실제 크레딧이다.
언제 쓰나
- 새 팀을 만들어 예산과 허용 노드 타입을 배정할 때
- 팀 예산을 늘리거나(증액) 남는 예산을 조직으로 되돌릴 때(감액)
- 팀이 쓸 수 있는 GPU 유형 목록을 조정할 때
- 팀을 정리(삭제)하고 잔여 예산을 회수할 때
팀 생성·삭제·예산 조정은 모두 조직 개요와 팀 관리 두 화면에서 이뤄진다.
화면
팀 관리
| 요소 | 설명 |
|---|---|
| 좌측 팀 리스트 | 조직의 모든 팀. 클릭하면 우측에 팀 설정이 열린다 |
크레딧 예산 (미할당 풀 … C) | 팀 예산 입력란. 라벨에 현재 미할당 풀 잔여가 함께 표시된다 |
예산 수정 | 입력값과 현재 예산이 다를 때만 활성화된다 |
알림 임계값 30% 10% | 잔여가 이 비율에 닿으면 팀에 알림이 간다 |
허용 노드 타입 (변경 즉시 적용) | 타입 칩을 클릭해 토글한다. ∅ 표시는 조직 풀에 그 유형 노드가 아직 없다는 뜻 |
팀 코드 초기화 | 새 가입 코드를 발급한다. 자세히는 멤버와 가입 코드 |
팀 삭제 | 확인 모달을 연다 |
조직 개요에서는 팀별 예산·사용률·잠금 상태를 한눈에 본다.
조직 개요
우상단 미할당 풀 … C가 팀 추가·증액에 쓸 수 있는 잔여다.
절차
팀 생성
조직 개요또는팀 관리의+ 팀 추가를 누른다.팀 이름,크레딧 예산,허용 노드 타입을 입력한다. 예산이 미할당 풀보다 크면팀 생성버튼이 비활성화된다.팀 생성을 누르면 다음이 순서대로 일어난다.- 조직 스코프에서 이름 중복을 검사한다. 같은 이름의 미삭제 팀이 있으면
duplicate_name으로 거부된다. - 팀 계정(ledger account)이 만들어진다.
- 미할당 풀에서 팀 계정으로 예산만큼 크레딧이 이동한다(원장
allocate_out/allocate_in쌍). 풀이 부족하면 원장이 이동을 거부한다. - 가입 코드가 생성된다.
- 조직 스코프에서 이름 중복을 검사한다. 같은 이름의 미삭제 팀이 있으면
- 생성 완료 모달에 팀 코드가 지금 한 번만 전체 표시된다. 복사해서 안전한 채널로 전달한다.
예산 증액·감액
팀 관리에서 팀을 고르고크레딧 예산값을 바꾼 뒤예산 수정을 누른다.- 증액(새 예산 > 현재): 차액만큼 미할당 풀에서 팀으로 추가 이동한다(
allocate). 알림 임계값 상태가 초기화되고, 팀이 잠겨 있었다면 잠금이 풀리며 팀에 알림이 간다. - 감액(새 예산 < 현재): 차액만큼 팀에서 조직으로 회수한다(
reclaim).- 팀 키 예산 합계보다 낮게는 줄일 수 없다. 걸리면
budget_below_key_sum으로 거부된다. 키 예산을 먼저 줄이거나 키를 폐기해야 한다(D-018). - 이미 사용했거나 실행 선점(hold)된 만큼보다 낮게도 줄일 수 없다. 원장이 회수를 거부한다.
- 팀 키 예산 합계보다 낮게는 줄일 수 없다. 걸리면
허용 노드 타입 변경
허용 노드 타입에서 칩을 클릭하면 저장 없이 즉시 반영된다. 활성 단가표의 전체 유형이 노출되며, 조직 풀에 노드가 없는 유형(∅)도 미리 허용해 둘 수 있다. 서버급 예약이나 노드 추가 요청을 대비한 설정이다(D-026·D-027).
팀 삭제
팀 관리에서 팀을 고르고팀 삭제를 누른다.- 확인 모달에서 팀 이름을 그대로 입력해야
영구 삭제가 활성화된다. 입력이 다르면confirm_mismatch. - 삭제 실행 시 순서:
- 실행 선점(hold)이 남아 있으면
active_holds로 거부된다. 활성 세션·예약을 먼저 정리해야 한다. - 열린 세션이 있으면
sessions_open으로 거부된다. - 팀 잔여 예산이 있으면 조직으로 회수한다(
reclaim). deleted_at이 찍히고 팀이 잠긴다(soft delete). 사용 로그·크레딧 기록·세션 이력은 감사 목적으로 보존된다.
- 실행 선점(hold)이 남아 있으면
이렇게 되면 정상
- 팀 생성: 목록에 새 팀이 나타나고,
조직 개요의미할당 풀이 예산만큼 줄고 팀 잔여가 그만큼 는다. 원장에예산 할당 (조직 −)과예산 할당 (팀 +)이 짝으로 남는다. - 증액: 팀 예산이 오르고 미할당 풀이 준다. 잠겨 있던 팀이면 상태가
정상으로 바뀐다. - 감액: 팀 예산이 줄고 미할당 풀이 는다. 원장에
예산 회수 (팀 −)/예산 회수 (조직 +)가 남는다. - 삭제: 목록에서 사라지고, 잔여 예산이 있었다면
예산 회수 (조직 +)가 남는다.크레딧 기록의내용에팀 삭제: {팀명}으로 표시된다.
막히는 경우
| 증상 | 원인 | 조치 |
|---|---|---|
팀 생성 버튼이 안 눌린다 | 예산이 미할당 풀 초과 또는 이름 미입력 | 예산을 풀 이하로 낮추거나 크레딧 판매를 Super Admin에 요청 |
duplicate_name | 같은 이름의 미삭제 팀 존재 | 다른 이름을 쓴다. 삭제된 팀 이름은 재사용 가능 |
budget_below_key_sum | 감액값이 팀 키 예산 합계보다 낮음 | 서버리스 키에서 키 예산을 먼저 줄이거나 폐기 |
| 감액이 거부됨(원장 거부) | 이미 사용·선점된 액수보다 낮게 감액 시도 | 실제 사용/선점분 이상으로만 감액 |
active_holds | 삭제하려는 팀에 실행 선점이 남음 | 실행 중 인스턴스를 중지하고 예약 선점을 정리 |
sessions_open | 실행 중 세션 존재 | 세션을 중지한 뒤 삭제. 급하면 강제 중지 사용(긴급 대응) |
confirm_mismatch | 확인란의 팀 이름 불일치 | 팀 이름을 정확히 입력 |
알아둘 것
- 팀 예산은 표시용 캐시이고 **지출의 진실은 팀 계정 잔액(available)**이다. 예산 숫자만으로는 마이너스가 날 수 없다. 원장 CHECK가 최후 방어선이다.
- 웹훅 URL을 설정하면 SSRF 방어가 걸린다.
https만 허용되고(webhook_scheme), 내부 호스트·사설/링크로컬 IP는 거부된다(webhook_internal). - 팀 이름 중복 검사는 조직 스코프다. 다른 조직에 같은 이름 팀이 있어도 무관하다.
- 삭제는 되돌릴 수 없는 soft delete다. 데이터는 남지만 로그인·자원 사용은 차단된다.