[proxmox] proxmox VE 기반 클라우드 환경 구성하기

JSHyeon·2024년 7월 19일

들어가기

얼마 전 미니 PC를 하나 구매했다. 여기에 리눅스를 깔고 현재 연구실 컴퓨터로 돌아가고 있는 webdav 서버를 이전시키고, 개인 프로젝트 배포도 진행해볼까 싶었다.

최근 docker접한 이후 환경 분리의 용이성을 깨달은 상황이었기 때문에, webdav 서버를 이전하면서 얘도 컨테이너 환경에서 구동시켜볼 작정이었다.

서버 구축을 위해 검색을 하던 와중에 서버 포럼이란 곳을 발견했고, 이 곳에서 proxmox 라는 놈이 존재한다는 것을 알아차렸다.

proxmox로 클라우드 비스무리한 환경을 구축할 수 있다는 것을 깨닫고 설치에 착수했다.

설치 전 조사했던 것들

  • proxmox에서는 크게 LXC 기반과 QEMU 기반의 두 가지 가상환경을 제공한다.

  • web UI가 존재하며 가상환경이나 보안 그룹, 네트워크 등등 다양한 설정을 지원한다.

설치와 webdav 서버 이전

현재 연구실 네트워크 환경은 이렇다.

여기에 미니 PC를 연결하려 보니 하나의 IP에 물려야 할 기기가 여러 개가 되었고, 보안과 관리 편의성을 위해 중간에 내부 네트워크를 추가한 다음과 같은 환경을 구축하기로 했다.

자원을 많이 소모하는 VM 대신 CT 옵션(LXC)을 사용하여 webdav 서버를 실행할 컨테이너를 만들었고, 컨테이너에서 HTTPS 설정 등의 환경 구성을 진행하였다.

컨테이너 환경 설정을 마치고 나니 공유기 설정 페이지에서 하나의 장치로 인식하고 있었다! 생성한 가상머신이 네트워크에서는 완전히 독립적인 하나의 장치로 인식되는 것이 신기했다.

이대로 며칠 사용하다가 proxmox web ui를 위한 HTTPS CA 인증서 발급 과정에서 이슈가 발생했다. webdav 서버에서 이미 CA 인증서를 발급해버렸기 때문에 도메인을 하나 더 붙이던지 해야 했던 것...

조금 알아보니 중간에 리버스 프록시 서버를 두어 사용자-리버스 프록시 서버에 HTTPS CA 인증서를 붙이고, 리버스 프록시 서버-각 컨테이너는 HTTP로 두는 방법을 찾아냈다.

향후 확장성과 발생할 귀찮음을 감안하여 HTTPS CA 인증서를 붙인 리버스 프록시 서버를 하나 두기로 했다.

그 결과 다음과 같이 세팅이 되었다. 리버스 프록시 서버까지는 HTTPS로, 리버스 프록시 서버로부터 각 컨테이너까지는 HTTP로 연결된다.

남은 할 일들

  • (이슈) webdav 서버에서 MOVE 명령시 502 에러가 뜨고 있다. 검색 결과 리버스 프록시 서버에서 HTTP로 변환될 때 문제가 있는 것 같았다.

  • webdav 서버의 데이터를 일정한 주기로 백업하는 기능이 필요하다. proxmox backup server를 사용할 수도 있을 듯 하나 이것이 컨테이너의 데이터까지 백업을 진행하는지, 증분 백업 방식인지 좀 더 조사가 필요할 듯 하다.

profile
네트워크와 인프라를 좋아하는 학부생

0개의 댓글