플러그인 가이드
이 가이드는 DQue 플러그인의 생성 및 구성 방법을 안내합니다. 플러그인은 사용자가 SLURM 작업을 제출할 때 선택하는 HPC 애플리케이션 템플릿을 정의합니다.
새 플러그인 생성
Section titled “새 플러그인 생성”- 관리자 > 플러그인 (또는 사용자 플러그인의 경우 설정 > 내 플러그인)으로 이동합니다.
- 새 플러그인 을 클릭합니다.
- 플러그인 ID 를 입력합니다 — 1-64자, 소문자와 숫자, 중간에 하이픈과 밑줄 허용.
- 생성 을 클릭합니다. 플러그인 편집기로 리디렉션됩니다.
새 플러그인은 최소 템플릿으로 시작합니다: 비활성 상태, 단일 command 텍스트 영역 필드와 $command를 실행하는 스크립트.
플러그인 편집기 탭
Section titled “플러그인 편집기 탭”플러그인 편집기에는 8개의 탭 이 있습니다.
탭 1: 기본 정보
Section titled “탭 1: 기본 정보”
| 필드 | 설명 |
|---|---|
| 이름 | 사용자에게 표시되는 이름 (예: “MATLAB”, “OpenFOAM”) |
| 카테고리 | 조직을 위한 자유 텍스트 카테고리 (예: “시뮬레이션”, “데이터 분석”) |
| 설명 | 플러그인이 하는 일에 대한 간략한 설명 |
| 플러그인 버전 | 구성 변경 추적을 위한 버전 문자열 |
| 활성화 | 토글 — 사용자가 이 플러그인을 보고 사용할 수 있는지 여부 |
탭 2: SLURM
Section titled “탭 2: SLURM”작업 제출 양식을 미리 채우는 기본 SLURM 리소스 할당. 사용자가 이 값을 재정의할 수 있습니다.
| 필드 | 설명 |
|---|---|
| 노드 | 컴퓨팅 노드 수 |
| 작업 (ntasks) | 총 병렬 작업 수 |
| 노드당 작업 | 노드당 분배되는 작업 수 |
| 작업당 CPU | 작업당 CPU 코어 수 |
| 메모리 | 노드당 메모리 (예: 4G, 2048M) |
| 독점 | 할당된 노드에 대한 독점 접근 |
탭 3: 실행
Section titled “탭 3: 실행”작업 실행 방법 제어 — MPI, GUI 지원, 모듈, 환경, 처리 단계.
머신파일 유형 — MPI 머신파일 형식:
| 옵션 | 형식 | 사용 사례 |
|---|---|---|
| 없음 | 머신파일 없음 | 기본값 — SLURM이 작업 분배 처리 |
| With Slots | node01 slots=4 | OpenMPI |
| With Cores | node01:4 | Intel MPI |
| Without Cores | node01 | 단순 호스트파일 |
GUI 설정:
| 필드 | 설명 |
|---|---|
| VNC GUI 활성화 | DISPLAY가 내보내진 VNC 데스크탑 세션 내에서 스크립트를 실행 |
| GUI 모드 | 항상 (필수 VNC) 또는 선택적 (사용자가 체크박스로 선택) |
GUI 모드가 선택적 인 경우, 내장 gui 불린 변수가 showIf/requiredIf 조건과 스크립트에서 사용할 수 있게 됩니다.
환경 모듈 — 스크립트 실행 전에 로드되는 모듈 이름 (예: gcc/11.2.0).
환경 변수 — 스크립트 실행 전에 내보내지는 관리자 정의 키-값 쌍. 사용자가 제출 시 환경 변수를 추가할 수 있도록 허용 옵션은 양식에 사용자 대면 섹션을 추가합니다.
전처리 / 후처리 — 메인 스크립트 전/후에 실행되는 명령. 각 단계에는 이름, 명령, 활성화 토글이 있습니다. 사용자는 제출 양식에서 이를 토글하거나 편집할 수 있습니다.
탭 4: 컨테이너
Section titled “탭 4: 컨테이너”Apptainer (Singularity) 컨테이너 지원.
| 필드 | 설명 |
|---|---|
| Apptainer 컨테이너 지원 활성화 | 마스터 토글 |
| 컨테이너 모드 | 선택적 (네이티브/Apptainer 탭) 또는 필수 (항상 컨테이너) |
| 컨테이너 디렉토리 | .sif 파일을 검색하는 경로 |
| 기본 컨테이너 필터 | 컨테이너 자동 선택을 위한 부분 문자열 필터 |
| 마운트 경로 표시 | 사용자가 마운트 경로를 구성할 수 있음 |
| 환경 변수 표시 | 사용자가 컨테이너 환경 변수를 구성할 수 있음 |
| 기본 명령 | Apptainer 탭의 명령 입력을 미리 채움 |
탭 5: 매개변수
Section titled “탭 5: 매개변수”사용자가 작업 제출 시 입력하는 양식 필드를 정의합니다. 각 매개변수는 스크립트에서 셸 변수가 됩니다.
매개변수 속성:
| 속성 | 설명 |
|---|---|
| 키 | 스크립트에서 사용되는 변수 이름 (유효한 셸 식별자) |
| 유형 | string, integer, number, boolean, object, array |
| 제목 | 양식에 표시되는 레이블 |
| 설명 | 필드 아래에 표시되는 도움말 텍스트 |
| 기본값 | 미리 채워지는 값 |
| 필수 | 필드를 반드시 채워야 하는지 여부 |
위젯 유형: text, number, textarea, select, radio, switch, checkbox, file, directory, hidden.
고급 옵션: showIf (조건부 표시), requiredIf (조건부 필수), extensions (파일 유형 필터), enumLabels (열거형 값의 표시 레이블), presetOptions (미리 정의된 파일 선택지), enableTemplate (텍스트 영역의 템플릿 선택).
버전 선택 패턴 — 버전 필드 추가 를 클릭하여 세 개의 필드를 자동 생성합니다: 숨겨진 versions 객체 (버전 이름과 경로의 맵), 여기서 채워지는 version 드롭다운, 선택된 경로로 자동 채워지는 숨겨진 version_path. 스크립트에서 $version_path를 사용합니다.
탭 6: 스크립트
Section titled “탭 6: 스크립트”SLURM에서 실행되는 bash 스크립트 템플릿.
사용 가능한 변수:
- 양식 매개변수: 각 매개변수에 대한
$param_name - SLURM 변수:
$SLURM_JOB_ID,$SLURM_NTASKS등 - 플랫폼 상수:
$DQUE_USER_HOME,$DQUE_ROOT,$DQUE_JOB_ROOT,$DQUE_USER_JOB_ROOT,$DQUE_USERID
탭 7: 그룹
Section titled “탭 7: 그룹”양식 필드를 제출 양식의 레이블이 있는 섹션으로 구성합니다.
- 그룹이 정의되면 숨겨지지 않은 모든 매개변수가 그룹에 할당되어야 합니다.
- 숨겨진 매개변수는 그룹에 추가하지 않아야 합니다.
- 그룹이 정의되지 않으면 모든 필드가 평면 목록으로 표시됩니다.
탭 8: 미리보기
Section titled “탭 8: 미리보기”사용자에게 보이는 플러그인의 실시간 미리보기.
- 양식 미리보기 — 필드 표시/숨기기 및 유효성 검사가 작동하는 렌더링된 양식.
- 스크립트 미리보기 — 현재 양식 값이 대입된 생성된 SLURM 배치 스크립트.
플러그인 편집기 페이지에서 업로드 버튼을 클릭하여 로고 이미지를 추가합니다. 지원 형식: PNG, JPEG, WebP. 최대 크기: 2 MB. 투명 배경의 정사각형 이미지를 사용하면 가장 좋습니다.
비주얼 편집기 vs JSON 편집기
Section titled “비주얼 편집기 vs JSON 편집기”
| 모드 | 설명 |
|---|---|
| 비주얼 편집기 | 위에서 설명한 탭 기반 양식 편집기 |
| JSON 편집기 | 전체 플러그인 구성을 보여주는 원시 JSON 텍스트 영역 |
페이지 상단의 버튼을 사용하여 모드 간 전환합니다. 두 모드 모두 저장 전에 스키마를 검증합니다. 전체 JSON 참조에 대해서는 플러그인 JSON 참조를 참조하세요.
플러그인 재설정 및 삭제
Section titled “플러그인 재설정 및 삭제”- 기본값으로 재설정 — 내장 플러그인의 경우, 기본값으로 재설정 을 클릭하여 모든 사용자 정의를 원래 구성으로 되돌립니다.
- 삭제 — 사용자가 만든 플러그인만 삭제할 수 있습니다. 내장 플러그인은 비활성화만 가능합니다.
단계별 예제는 플러그인 예제를 참조하세요.