← 포트폴리오 목록

실습 컨테이너 인프라 관제 콘솔

학생 실습 환경의 인프라 계층을 감시하는 강사·운영자용 관제 콘솔을 구현합니다.

컨테이너 리소스 지표 실시간 집계 구현cgroup CPU·메모리 지표를 1초 주기로 수집해 WebSocket으로 브로드캐스트하는 스트리밍 집계 구조 설계
일괄 회수 큐 아키텍처 설계Bull Queue 기반 비동기 작업으로 대량 컨테이너 회수를 처리, 부분 실패는 재시도 큐로 분리하는 구조 구현
타임아웃 정책 무중단 변경 엔진 구현무입력 감시 스케줄러와 정책 값 동적 조정 API를 결합해 무중단 정책 변경이 가능한 구조 설계
서비스 타입Web
업종모니터링
기술 스택
ReactTypeScriptNode.jsExpressSocket.ioDockerode (Docker Engine API)PostgreSQLPrismaRedis (Bull Queue)
주요 기능
  • 실시간 컨테이너 관제 현황판
  • 학생 접속 & 리소스 사용량 모니터링
  • 일괄 컨테이너 회수 & 타임아웃 정책
  • 보안 격리 & 프록시 라우팅 설정
Overview

프로젝트 개요

범위: 개발, 디자인, 기획

학생 실습 환경의 인프라 계층을 감시하는 강사·운영자용 관제 콘솔을 구현합니다. 다수 학생 컨테이너의 상태·리소스 사용량을 실시간으로 모니터링하고, 일괄 회수·타임아웃 정책·보안 격리 설정까지 관리할 수 있는 운영 도구를 P1과 동일한 Node.js 백엔드 위에 Redis 큐를 더해 설계합니다.

작업 범위

  • 실시간 컨테이너 관제 현황판: 현재 실행 중인 학생별 컨테이너를 상태바와 타임라인으로 한눈에 보여주는 강사용 관제 화면입니다
  • 학생 접속 & 리소스 사용량 모니터링: 강의실별 학생 접속 현황과 컨테이너별 CPU·메모리 사용량을 실시간 그래프로 확인할 수 있습니다
  • 일괄 컨테이너 회수 & 타임아웃 정책: 강사가 수업 종료 시 전체 학생 컨테이너를 한 번에 회수하거나, 무입력 컨테이너를 자동 종료하는 타임아웃 정책을 관리할 수 있습니다
  • 보안 격리 & 프록시 라우팅 설정: 컨테이너별 인바운드 차단, 프록시 경유 노출, cgroup 리소스 제한 정책을 강사·운영자가 확인하고 조정할 수 있는 설정 화면입니다

주요 업무

  • 실시간 컨테이너 관제 현황판 화면: 컨테이너 상태·연결 강의실·경과 시간을 집계해 슬림 상태바와 우선순위 큐로 시각화합니다
  • 학생 접속 & 리소스 사용량 모니터링 화면: cgroup 리소스 지표를 주기 수집해 컨테이너별 사용률을 시계열 그래프로 시각화합니다
  • 일괄 컨테이너 회수 & 타임아웃 정책 화면: 일괄 회수는 Bull Queue 작업으로 처리하고, 타임아웃은 스케줄러가 무입력 시간을 감시해 자동 종료합니다
  • 보안 격리 & 프록시 라우팅 설정 화면: 컨테이너 네트워크 정책과 프록시 라우팅 규칙을 목록화하고 리소스 제한값을 편집할 수 있게 구성합니다
실습 컨테이너 인프라 관제 콘솔
요구사항 정의

프로젝트 핵심 과제

프로젝트 진행 시 해결한 핵심 기술 과제입니다.

동시 접속 학생 수가 늘어나는 시간대에 컨테이너별 CPU·메모리 사용률을 실시간으로 집계해 관제판에 지연 없이 반영하는 구조 설계

강사의 일괄 회수 요청이 다수 컨테이너에 동시 적용될 때 부분 실패 없이 원자적으로 처리하는 큐 설계

12시간 무입력 자동 타임아웃 정책과 강사의 수동 연장 요청이 충돌하지 않

하는 정책 우선순위 설계 필요

비정상 종료된 컨테이너를 감지해 자동 재생성하면서도 관제판 상태 표시가 실제 인프라 상태와 어긋나지 않

동기화하는 전략 필요

구현 내용

핵심 기능 상세

핵심 기능 1

실시간 컨테이너 관제 현황판

현재 실행 중인 학생별 컨테이너를 상태바와 타임라인으로 한눈에 보여주는 강사용 관제 화면입니다. 컨테이너 상태·연결 강의실·경과 시간을 집계해 슬림 상태바와 우선순위 큐로 시각화합니다.

  • 컨테이너 상태(대기/실행/오류)를 5초 주기로 폴링해 상태바에 인라인 지표로 표시합니다
  • 장애·리소스 초과 컨테이너를 우선순위 큐에 자동 정렬해 강사가 먼저 확인하도록 구성합니다
  • 강의실별 컨테이너 목록을 타임라인 뷰로 렌더링해 입장 순서와 경과 시간을 함께 표시합니다

다수 컨테이너의 상태를 집계·정렬해 강사가 이상 징후를 먼저 인지할 수 있는 우선순위 기반 관제 구조를 설계합니다

실시간 컨테이너 관제 현황판
실시간 컨테이너 관제 현황판 실제 화면
핵심 기능 2

학생 접속 & 리소스 사용량 모니터링

강의실별 학생 접속 현황과 컨테이너별 CPU·메모리 사용량을 실시간 그래프로 확인할 수 있습니다. cgroup 리소스 지표를 주기 수집해 컨테이너별 사용률을 시계열 그래프로 시각화합니다.

  • WebSocket 채널로 컨테이너별 CPU·메모리 지표를 1초 간격으로 클라이언트에 push합니다
  • 실시간 시계열 그래프에 리소스 임계치 초과 구간을 강조 표시합니다
  • 다수 컨테이너 지표 스트림을 배치 처리해 렌더링 병목 없이 갱신되도록 구성합니다

cgroup 리소스 지표 수집부터 WebSocket 브로드캐스트, 그래프 렌더링까지 이어지는 실시간 모니터링 파이프라인을 구현합니다

학생 접속 & 리소스 사용량 모니터링
학생 접속 & 리소스 사용량 모니터링 실제 화면
핵심 기능 3

일괄 컨테이너 회수 & 타임아웃 정책

강사가 수업 종료 시 전체 학생 컨테이너를 한 번에 회수하거나, 무입력 컨테이너를 자동 종료하는 타임아웃 정책을 관리할 수 있습니다.

  • 일괄 회수 요청을 Bull Queue 작업으로 큐잉해 컨테이너 수가 많아도 순차적으로 안전하게 처리합니다
  • 12시간 무입력 컨테이너를 감시하는 스케줄러를 구현하고 정책 값을 UI에서 조정 가능하게 합니다
  • 일괄 회수 중 개별 컨테이너 실패는 재시도 큐로 분리해 전체 작업이 중단되지 않도록 설계합니다

대량 컨테이너 회수를 큐 기반 비동기 작업으로 처리해 부분 실패가 전체 작업에 영향을 주지 않는 안정적인 구조를 구현합니다

일괄 컨테이너 회수 & 타임아웃 정책
일괄 컨테이너 회수 & 타임아웃 정책 실제 화면
핵심 기능 4

보안 격리 & 프록시 라우팅 설정

컨테이너별 인바운드 차단, 프록시 경유 노출, cgroup 리소스 제한 정책을 강사·운영자가 확인하고 조정할 수 있는 설정 화면입니다.

  • 컨테이너별 인바운드 차단·아웃바운드 허용 정책을 목록 형태로 표시하고 편집 이력을 기록합니다
  • 리버스 프록시 라우팅 규칙(컨테이너 ID ↔ 경로)을 테이블로 관리하고 충돌 여부를 검증합니다
  • cgroup CPU·메모리 제한값을 슬라이더 UI로 조정하고 변경 즉시 컨테이너 설정에 반영합니다

네트워크 격리·프록시 라우팅·리소스 제한을 하나의 정책 관리 화면으로 통합해 운영자가 보안 설정을 일관되게 관리할 수 있는 구조를 설계합니다

보안 격리 & 프록시 라우팅 설정
보안 격리 & 프록시 라우팅 설정 실제 화면
구현 과정

프로젝트 진행 단계

STEP 1

컨테이너 관제 데이터 모델 설계 · 2026.09

리소스 사용량·연결 상태·타임아웃 정책을 위한 집계 테이블 설계, Redis 캐시 키 구조 정의

STEP 2

실시간 관제 API 및 집계 파이프라인 개발 · 2026.09

컨테이너 상태·리소스 지표를 수집하는 API 구현, Bull Queue 기반 주기적 집계 작업 설계

STEP 3

관제 대시보드 UI 개발 · 2026.09

상태바·타임라인·우선순위 큐 UI 구현, 실시간 리소스 사용량 시각화 적용

STEP 4

일괄 회수 및 타임아웃 정책 엔진 구현 · 2026.09

강사 일괄 회수 API, 무입력 타임아웃 스케줄러, 정책 충돌 방지 로직 구현

STEP 5

운영 시나리오 통합 테스트 · 2026.09

다중 컨테이너 장애 시뮬레이션, 정책 엔진 동시성 테스트, 관제판 동기화 검증

프로젝트 성과

주요 성과

컨테이너 리소스 지표 실시간 집계 구현cgroup CPU·메모리 지표를 1초 주기로 수집해 WebSocket으로 브로드캐스트하는 스트리밍 집계 구조 설계
일괄 회수 큐 아키텍처 설계Bull Queue 기반 비동기 작업으로 대량 컨테이너 회수를 처리, 부분 실패는 재시도 큐로 분리하는 구조 구현
타임아웃 정책 무중단 변경 엔진 구현무입력 감시 스케줄러와 정책 값 동적 조정 API를 결합해 무중단 정책 변경이 가능한 구조 설계
관제판 상태 동기화 아키텍처 설계컨테이너 실제 인프라 상태와 대시보드 표시 상태를 주기적으로 대조해 불일치를 자동 보정하는 동기화 로직 구현
Highlights

기술적 주안점

  • 다수 컨테이너의 상태를 집계·정렬해 강사가 이상 징후를 먼저 인지할 수 있는 우선순위 기반 관제 구조를 설계합니다
  • cgroup 리소스 지표 수집부터 WebSocket 브로드캐스트, 그래프 렌더링까지 이어지는 실시간 모니터링 파이프라인을 구현합니다
  • 대량 컨테이너 회수를 큐 기반 비동기 작업으로 처리해 부분 실패가 전체 작업에 영향을 주지 않는 안정적인 구조를 구현합니다

유사한 프로젝트를 기획하고 계신가요?

FIRSTPIP이 개발 범위와 로드맵을 함께 정리해드립니다

무료 상담 시작하기