Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 

Repository files navigation

🏛️ My-mini-data-center

Proxmox 가상화 환경 기반의 확장 가능한 홈 서버 및 통합 관제 시스템 구축 프로젝트

이 프로젝트는 단일 물리 서버를 Proxmox 가상화 기술을 이용해 논리적으로 분할하고, pfSense를 통한 네트워크 보안, NPM을 이용한 역방향 프록시, 그리고 Prometheus/Loki/Grafana(PLG Stack)를 이용한 통합 모니터링 시스템을 구축하는 것을 목표로 합니다.


🏗️ 전체 아키텍처 (Architecture)

네트워크는 보안을 위해 외부망(WAN)과 내부망(LAN)으로 물리적/논리적으로 격리되어 있으며, 모든 트래픽은 pfSense 방화벽을 통과합니다. 홈서버 drawio

🛡️ Network & Security

  • Proxmox (Hypervisor): 전반적인 VM 및 컨테이너 리소스 관리 (Port: 8006).
  • pfSense (Firewall/NAT): 외부 트래픽 차단 및 내부망(192.168.1.x) 보호.
  • Nginx Proxy Manager (Reverse Proxy): SSL 인증서 관리 및 도메인 기반 서비스 라우팅.

📊 통합 관제 시스템 (Monitoring & Alerting)

서버의 생존 여부와 로그를 실시간으로 감시하며, 이상 징후 발생 시 즉각적인 알림을 제공합니다.

🔍 PLG Stack (Prometheus, Loki, Grafana)

  1. Prometheus: 각 노드의 Node Exporter로부터 하드웨어 메트릭 수집 (Pull 방식).
  2. Grafana Loki: 각 노드의 Promtail로부터 실시간 서비스 로그 수집 (Push 방식).
  3. Grafana: 수집된 메트릭과 로그를 통합 대시보드로 시각화.
  4. Discord Alerting: 서버 다운(up == 0) 또는 치명적 에러 발생 시 Discord Webhook을 통한 실시간 알림.

🔌 Monitoring Agents

모든 VM 및 컨테이너에는 표준화된 에이전트가 설치되어 있어, 새로운 서버 추가 시 자동으로 관제 대상에 포함됩니다.

  • Node Exporter: CPU, RAM, Disk, Network 사용량 수집.
  • Promtail: /var/log 및 서비스별 로그 파일 추적.

🚀 서비스 구성 및 IP 할당 현황

Category Service OS/Type Internal IP Port
Network pfSense FreeBSD (VM) 192.168.1.1 80, 443
Proxy NPM Debian (CT) 192.168.1.101 81
App Ubuntu Server Ubuntu (VM) 192.168.1.102 80
Monitor Grafana / Prometheus Debian (CT) 192.168.1.103 3000
Future New Service - 192.168.1.1xx -

🛠️ 확장 가이드 (Scalability)

새로운 VM 또는 컨테이너를 추가할 경우 다음 절차를 따릅니다.

  1. vmbr1 브리지에 새 노드 생성 (IP: 192.168.1.x).
  2. Node ExporterPromtail 설치.
  3. 103번 서버의 prometheus.ymlpromtail-config.yml에 타겟 IP 추가.
  4. NPM에서 도메인 연결 설정.

📸 Screenshots

image image image image image image

About

나만의 미니 데이터센터

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors