피드로 돌아가기
How I Built a Self-Hosted Minecraft Server on AWS in One Day — With a Discord Bot, Auto-Security, and Almost Zero Cost
Dev.toDev.to
Infrastructure

AWS EC2와 Discord Bot 기반의 제로-메인터넌스 게임 서버 구축

How I Built a Self-Hosted Minecraft Server on AWS in One Day — With a Discord Bot, Auto-Security, and Almost Zero Cost

Biraj De2026년 4월 12일19beginner

Context

특정 호스트의 접속 여부에 의존하는 P2P 방식의 세션 유지 한계 직면. 소규모 그룹을 위한 상시 가용성 확보와 비용 최적화라는 상충하는 목표를 해결해야 하는 상황.

Technical Solution

  • 지연 시간 최소화를 위해 사용자 위치 기반의 AWS Region(ap-south-1) 선정
  • t3.small 인스턴스 내 Java 21 환경 및 systemd 서비스 등록을 통한 서버 생명주기 관리 자동화
  • SSH 접근 권한 분산의 보안 리스크 제거를 위해 Discord Bot을 인터페이스로 활용한 제어 평면(Control Plane) 구축
  • systemd의 KillMode=control-group 설정을 통한 자식 프로세스 완전 종료로 좀비 프로세스 및 RAM 누수 방지
  • 불필요한 OS 서비스 제거 및 htop 기반의 메모리 오딧을 통한 t3.small의 제한적 자원(2GB RAM) 최적화
  • 상태 기반 Polling 메커니즘 도입으로 단순 Sleep 방식의 불안정한 프로세스 실행 제어 해결

1. Cloud 인스턴스 생성 전 사용자 위치 기반의 Region 선정 여부 확인

2. systemd 서비스 설계 시 KillMode 설정을 통한 자원 회수 보장 검토

3. 제한된 메모리 환경에서 OS 기본 서비스의 불필요성 판단 및 비활성화 수행

4. 외부 제어 인터페이스 도입 시 SSH 직접 노출 대신 API/Bot 기반의 추상화 계층 설계

원문 읽기