학생들을 위한 가상 서버 신청 시스템 구축기
안녕하세요! 이번에 새롭게 구성한 가상화 서버 기반의 학생 전용 서버 신청 시스템을 소개하고자 합니다. 학생들이 직접 원하는 사양의 서버를 신청하고, 관리자가 이를 검토하여 배포하는 방식으로 설계되었습니다. 마치 Google Cloud Platform(GCP)에서 VM을 신청하는 것처럼 간편하게 사용할 수 있도록 개발했습니다.
🏗 프로젝트 개요
이번 시스템의 핵심 목표는 학생들이 손쉽게 가상 서버를 신청하고, 관리자는 효율적으로 배포할 수 있도록 지원하는 것입니다. 기존에는 수작업으로 요청을 받고 서버를 생성했지만, 이번에는 온라인 신청 및 관리 기능을 포함한 웹 플랫폼을 개발하여 보다 체계적인 환경을 구축했습니다.

🔹 주요 기능
✅ 학생용 신청 시스템
- 원하는 서버 사양을 선택하여 신청서 제출
- 신청 후 진행 상태(승인 여부) 확인 가능
✅ 관리자 검토 & 배포 시스템
- 학생들의 신청 내용을 검토 후 승인 또는 거절
- 승인된 경우 직접 서버를 생성하여 배포
✅ 이메일 알림 시스템
- 신청이 승인되면 자동으로 서버 접속 정보 이메일 발송
- 학생들은 별도의 과정 없이 이메일을 통해 접속 정보 확인 가능
✅ 자동화된 배포 시스템 (차후 업데이트 예정)
- 현재는 관리자가 직접 서버를 생성하여 배포하지만,
향후 특정 학과 전용 서버 배포 시 자동화 기능을 추가할 예정 - 단일 노드 환경에서 이미 구성된 VM을 클론하여 배포
- 아이피 할당 및 기본 설정 자동화
🖥 개발 스택 및 기술
이번 프로젝트는 다음과 같은 기술을 활용하여 개발되었습니다.
🔹 프론트엔드
- React.js
- Bootstrap / Tailwind CSS
🔹 백엔드
- PHP
- Proxmox API 연동 (Proxmox VE의 REST API 활용)
🔹 데이터베이스
- MySQL 또는 MariaDB
🔹 기타 기능
- 이메일 발송 기능 (PHPMailer / SMTP)
- JWT 기반 인증 시스템
- 관리자 페이지 (승인 및 서버 상태 관리)
📌 신청 프로세스
1️⃣ 학생이 신청서를 작성하여 제출
- 원하는 VM 스펙을 선택 (OS, CPU, RAM, 디스크 용량 등)
- 추가 요청 사항 입력 가능
2️⃣ 관리자가 신청 내용을 검토 후 승인 또는 거절
- 관리 페이지에서 신청 내역을 확인하고 승인 진행
3️⃣ 서버 배포 및 이메일 안내
- 관리자가 직접 Proxmox를 통해 서버를 생성
- 생성된 서버의 접속 정보를 이메일로 발송
4️⃣ 학생이 서버 접속 및 활용
- 이메일을 통해 서버 정보를 확인 후 사용 가능
🚀 추후 자동화 기능이 추가되면, 승인 후 즉시 VM이 생성되고 이메일이 자동 발송될 예정!
📌 향후 개선 계획
✔️ 완전 자동화 시스템 구현
- VM 클론 생성 + IP 자동 할당 기능 추가
- 신청 승인 즉시 서버가 자동으로 배포되도록 개발
✔️ 사용자 대시보드 개선
- 신청한 VM의 상태 및 리소스 사용량을 확인할 수 있도록 UI 개선
- 서버 관리 기능 추가 (재부팅, 종료, 삭제 등)
✔️ 보안 강화
- 서버 접근 제어 및 방화벽 설정을 더욱 강화
- 신청자의 신원 인증 방식 추가 고려
🎤 마무리하며
글솜씨가 부족하지만 끝까지 읽어주셔서 감사합니다! 😊
현재 시스템은 관리자가 직접 신청을 검토하고 서버를 배포하는 방식이지만,
앞으로 자동화 기능을 추가하여 학생들이 보다 빠르고 편리하게 서버를 배포 받을 수 있도록 개선할 예정입니다.
개발하면서 부족한 부분이 있을 수도 있으니, 개선점이나 피드백이 있다면 언제든지 알려주세요!
감사합니다. (꾸벅 🙇♂️)
💡 문의 및 개선 의견 환영합니다! 💡