PROXMOX

현종's Dev·2024년 10월 29일
0

개요

  • 회사에서 안쓰는 서버자원 장치들을 모아서 서버 한대를 받게 되었는데, 해당 서버에 Proxmox를 설치하게 되어 회사의 테스트 환경 및 인프라를 구축하고, 운영하게 되었다. 노션으로 기록한 내용이 제대로 갈무리 되지않아 작성하게 되었다.

PROXMOX

  • PROXMOX VE(Proxmox Virtual Environment)는 오픈소스 가상화 관리 솔루션
  • 기업 환경에서 고가용성(HA) , 백업관리 , 클러스터링 등을 지원
  • 현재 회사에서 사용 중인 버전은 8.0을 사용하게 되었다.

    기억상 서버의 스펙은 144GM Mem, cpu 40 core HD 는 약 6TB(?)로 Dell 서버로 되어있다.

주요 기능

  • KVM과 LXC를 지원 (하이퍼 바이저와 컨테이너 기반의 워크로드를 유연하게 사용가능)
KVM (Kernel-based Virtual Machine) 
- 하이퍼 바이저 기반 가상화 : 리눅스 커널을 하이퍼바이저로 전환해서 하드웨어 가상화 기능을 활용 실제 물리 하드웨어를 가상화하여 각 vm이 독립적인 운영체제를 사용 -> vm을 완전히 분리한다. 

LXC (Linux Containers) 
- 컨테이너 기반 가상화 하이퍼바이저 대신 리눅스 커널의 컨테이너 기능(cgroups, 네임스페이스 등을) 활용해 가상환경을 제공 하나의 리눅스 커널을 공유 -> 속도가 빠르다.
  • 클러스터링이 가능하다. 여러 호스트를 클러스터링해서 고가용성 확보

  • 스토리지 통합 관리 ZFS, NFS 같은 스토리지 옵션이 있으며, Ceph과 같은 분산 스토리지와 통합이 가능하다.

    이 옵션에 대해서는 제대로 아직 사용해본 적은 없다. 추후 운영하면서 추가 공부가 필요함

  • 백업 및 복원에 대한 간단한 제공

  • vm에 대한 템플릿 등록 및 간편한 기능 제공

    vm 템플릿 설정이 가능하여 해당 vm에 대한 및 여러 클러스터링이 가능하다. -> 이것을 통해서 고가용성 확보가 가능

  • Proxmox를 설치시 기본 GUI를 제공하는데 8006번 포트로 접속하여, 해당 Proxmox 계정으로 접속하여 간단하게 이용이 가능하다.

vm을 새로 만들 때 vm에 고유한 ID 값을 주는데 자동으로 1씩 늘어나는듯 하다. vm ID는 약 10억개까지 가능하다고 한다.

간단한 vm 구성 시 - 내가 사용했던 방법

하드웨어 스펙은 보통 aws Ec2 스펙을 참고했고, 평균적으로 사용하는 템플릿들은 해당 스펙에 맞춰서 저장하였다




  • 해당 vm에 디스크를 만들지만, 실제 저장소 공간을 쓰는것이아니다.
  • cpu 스레드는 가상 스레드에 할당된다.
  • 메모리 ballooning 설정 : 설정을 통해 vm에 에뮬레이트 된 실제 RAM이 있다고 가정한다. 크기를 동적으로 조정해 필요한 만큼의 물리메모리만 사용 -> 실제 물리 메모리를 효율적으로 배분해서 시스템 성능을 최적화하는데 도움된다.
  • proxmox의 기본 브릿지는 vmbr0으로 생성되며, 물리 네트워크 인터페이스 (eth0)와 연결되어 생성된다. vm과 컨테이너는 이 브릿지를 통해 외부 네트워크에 액세스함(여러개의 인터페이스가 있는경우 추가로 표시된다)
  • 이후 사용했던 방법은 ec2 컴퓨팅 스펙 확인해서 대부분 많이 사용하는 스펙으로 vm환경 및 템플릿을 만들어놓고 사용했었다.

CLI 환경
sudo apt install net-tools 사용하여 ifconfig로 확인가능 혹은
ip addr로 확인

각 vm은 운영체제 Debian 환경의 경우 /etc/network에서 ip 설정이 가능하다.

GUI에서 LXC, KVM를 마찬가지로 사용 가능하다.

참고자료

https://www.youtube.com/watch?v=GoZaMgEgrHw - proxmox 설치 전
https://svrforum.com/svr/626324 - 디스크 관련 참조
https://hwanstory.kr/@kim-hwan/posts/Proxmox-Virtual-Private-Network-Configuration - 내부 가상 사설망 구축 및 내부 네트워크 구성시
profile
Dev, Back

0개의 댓글