시스템 디스크를 먼저 가른다
주문에서 Proxmox VE 8 또는 Proxmox VE 9를 고릅니다. 둘 다 이미지에 있고, 인도 뒤 SSH로 들어갑니다. 두 번째 디스크를 보려고 USB로 다시 설치하지 않습니다. 섀시에 RAID 카드가 없으므로 이미지가 두 장을 하드웨어 어레이로 묶지 않습니다.
들어가면 lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,MODEL을 실행하고 findmnt /와 pvesm status를 봅니다. 약 1TB NVMe가 두 줄, 유형은 disk입니다. 루트가 있는 쪽이 시스템 디스크입니다. 다른 쪽 마운트 칸이 비어 있으면 아직 쓰지 않은 두 번째 장입니다. /dev/disk/by-id/의 안정된 이름과 시리얼을 적습니다. 재부팅 후 nvme0n1과 nvme1n1은 바뀔 수 있습니다. 이후 파티션과 포맷은 이번에 본 번호가 아니라 by-id를 씁니다.
local-lvm이 있는 디스크에는 mkfs를 실행하지 않습니다. 빈 디스크는 MOUNTPOINT가 비어 있고 용량은 약 1TB이며 findmnt /의 소스 장치가 아닙니다.게스트 디스크는 기본적으로 시스템 디스크에 떨어진다
이미지가 Proxmox를 NVMe 한 장에 넣으면 그 디스크에는 보통 스토리지가 두 곳입니다. local은 루트 파일시스템의 디렉터리이고 경로는 /var/lib/vz입니다. ISO, 스니펫, vzdump 백업을 둘 수 있습니다. local-lvm은 같은 디스크의 LVM-Thin이고 게스트 디스크와 컨테이너 디스크가 여기 쓰입니다. 이름은 다릅니다. 물리 장치는 같은 NVMe입니다.
스토리지를 local-lvm으로 두고 게스트를 만들면 디스크는 시스템 디스크에 있습니다. 백업 작업이 아직 local이면 파일은 /var/lib/vz/dump로 들어가 역시 시스템 디스크입니다. 그 디스크가 빠지면 게스트 디스크와 그 백업을 함께 읽지 못합니다. 화면에 스토리지 이름이 둘 있어도 두 번째 NVMe를 쓰고 있다는 뜻은 아닙니다.
lsblk로 local-lvm 볼륨 그룹이 어느 NVMe에 있는지 봅니다. 루트와 같은 디스크여야 합니다. 약 1TB인 두 번째 장에는 아직 파티션이 없고 이 볼륨 그룹에도 들어 있지 않습니다. 직접 연결로 인도된 상태이며, 어레이를 빠뜨린 것이 아닙니다.
백업은 다른 NVMe로 향하게 한다
두 번째 디스크는 따로 파티션하고 따로 파일시스템을 만들어 /mnt/backup-nvme 같은 새 디렉터리에 마운트합니다. 파티션 테이블은 GPT, 파티션은 하나면 됩니다. 백업 파일에는 ext4로 충분합니다. /etc/fstab에는 UUID를 쓰고 /dev/nvme0n1p1처럼 바뀔 수 있는 이름은 쓰지 않습니다. mount -a 뒤 findmnt /mnt/backup-nvme의 소스가 두 번째 디스크의 by-id인지, 시스템 디스크가 아닌지 확인합니다.
그다음 Proxmox에 디렉터리 스토리지를 추가합니다. 데이터센터에서 스토리지, 추가, 디렉터리를 열고 경로는 이 마운트, 내용은 VZDump 백업만 고릅니다. 대응하는 명령은 pvesm add dir backup-nvme --path /mnt/backup-nvme --content backup입니다. 스토리지 ID는 local과 겹치지 않게 합니다. pvesm status에서 그 행은 active이고 여유는 두 번째 디스크에 가깝지, 루트에 남은 공간이 아닙니다.
기존 백업 작업도 이 스토리지로 바꿉니다. 디렉터리만 추가하고 작업이 local이면 새 백업은 시스템 디스크에 쓰입니다. 게스트가 아직 없으면 마운트와 스토리지 상태를 확인한 뒤 게스트를 만듭니다. 게스트가 있으면 백업을 한 번 실행하고 vzdump의 --storage에 새 ID를 넣습니다. 스냅샷 모드는 디스크 스토리지가 스냅샷을 지원해야 합니다. local-lvm은 지원합니다. 백업 파일은 두 번째 디스크의 디렉터리에 나타나고 이름은 vzdump-로 시작합니다.
local은 ISO를 계속 둘 수 있습니다. 백업 작업이 그것을 고르지 않으면 게스트 디스크와 백업은 서로 다른 NVMe에 있습니다. 이 분리를 위해 재설치하지 않습니다.추가 2TB도 독립된 한 장이다
추가 2TB NVMe는 장당 월 $84, 최대 두 장, 직접 연결, 하드웨어 어레이에 들어가지 않습니다. lsblk에는 새 disk 행으로 보이고 용량은 약 2TB입니다. 앞의 1TB 두 장의 멤버가 자동으로 되지 않고 local-lvm도 자동으로 커지지 않습니다. 비어 있던 1TB와 같이 다룹니다. 단독 파티션, 단독 마운트, 단독 스토리지 등록입니다.
두 번째 1TB가 이미 백업을 담고 있으면 이 2TB는 게스트 디스크를 더 두는 자리입니다. 새 마운트에 디렉터리 스토리지를 추가하고 내용은 디스크 이미지로 둡니다. 큰 게스트 디스크를 만들 때 이 스토리지를 고르고 시스템 디스크의 thin 풀에 계속 쓰지 않습니다. 부족한 쪽이 백업이면 백업 작업을 이 2TB로 향하게 하고 두 번째 1TB는 디스크 이미지로 남길 수 있습니다. 어느 쪽이든 디스크와 유일한 백업을 같은 장에 쓰지 않습니다.
2TB를 시스템 디스크 볼륨 그룹에 vgextend하지 않습니다. 용량이 다른 NVMe로 그룹이 걸치면 게스트 디스크 익스텐트가 어느 장에든 떨어질 수 있고, 백업이 아직 루트에 있으면 장애 범위가 겹칩니다. 이것은 하드웨어 어레이가 아닙니다. 추가 디스크가 어레이 밖에 남는 이유는 추가 디스크는 어레이에 들어가지 않음에 있습니다. 기본 1TB 두 장을 소프트 미러로 만들면 사용 용량은 약 1TB에 가까워지고 이 노트의 분리 배치는 성립하지 않습니다. 절차는 하드웨어 어레이 없는 중복에 있습니다.
| 디스크 | 시스템에서 | 둘 것 |
|---|---|---|
| 첫 1TB | 루트와 local-lvm | 시스템과 이미 있는 게스트 디스크 |
| 둘째 1TB | 비어 있음. 직접 마운트 | vzdump 백업 |
| 추가 2TB | 또 하나의 독립 disk | 디스크 이미지를 더 두거나, 더 큰 백업 |
용량은 더한 값이고, 미러 뒤의 나머지가 아니다
1TB 두 장을 각자 파일시스템으로 쓰면 사용 공간은 약 2TB입니다. 파티션 테이블, 파일시스템, 루트에 이미 있는 시스템 파일은 빼야 합니다. RAID 1 뒤에 1TB만 남는다고 읽으면 lsblk의 disk 두 줄과 맞지 않고, 백업을 둘 두 번째 디스크도 없어집니다.
게스트 디스크와 그 백업은 각각 자리를 씁니다. 400GB를 할당한 게스트 디스크는 실제로 쓴 부분을 시스템 디스크 thin 풀에 두고, 백업 한 부는 두 번째 디스크에도 둡니다. 400GB를 합계 2TB에서 한 번만 빼지 않습니다. 씬 프로비저닝이면 볼륨이 할당보다 작아 보입니다. 백업 파일 크기는 그 실행의 모드와 압축에 달립니다. 쓸 데이터량을 디스크마다 잡습니다. 스토리지 목록의 합계 하나만으로 계획하지 않습니다.
ext4는 기본적으로 루트 사용자를 위해 블록 일부를 예약합니다. vzdump만 쓰는 백업 디렉터리는 디스크 표시 용량보다 적게 나옵니다. 이것은 파일시스템 예약이지, 두 번째 디스크가 인도되지 않은 것이 아닙니다. 마운트 뒤 df -h의 그 행으로 보관 개수를 정합니다.
백업을 한 번 실행하고 파일이 어느 장인지 본다
두 번째 디스크가 마운트됨
findmnt /mnt/backup-nvme의 소스는 두 번째 NVMe의 by-id입니다. 재부팅 뒤에도 이 마운트는 있고 루트도 있습니다.스토리지가 local이 아님
pvesm status에서 백업 스토리지 경로는 새 마운트입니다. 작업의 스토리지 칸은 그 ID입니다. 아직local이면 바꾼 뒤 실행합니다.vzdump를 한 번 실행
스냅샷할 수 있는 게스트를 고르고 스토리지를 새 디렉터리로 둡니다. 끝나면 그 디렉터리에
vzdump-파일이 있습니다. 그 파일에findmnt -T를 실행하면 소스는 두 번째 디스크입니다.시스템 디스크가 같이 차지 않음
백업 중
df -h /를 봅니다. 파일이/var/lib/vz/dump로 들어가면 루트가 늘고, 작업이 아직local을 가리킵니다. 그 작업을 멈추고 스토리지를 바꾼 뒤 다시 합니다.
보관 개수는 두 번째 디스크의 여유에 맞춥니다. 개수가 많고 한 부가 게스트 디스크 전체에 가까우면 다음 백업은 중간에 실패하고 불완전한 파일을 남깁니다. 그 불완전한 파일은 복원할 수 있는 사본이 아닙니다. 지우고, 디스크에 들어가는 개수까지 낮춘 뒤, 끝나는 백업을 한 번 실행합니다.
이미 local-lvm에 있는 큰 디스크를 옮길 때는 게스트를 먼저 끄고, 새 디렉터리 스토리지로 이동한 뒤, 켜서 확인합니다. 게스트가 쓰는 동안 디스크 파일을 복사하지 않습니다. 백업 파일은 새 스토리지에서 다시 만듭니다. 시스템 디스크의 옛 디렉터리에 남은 과거 백업은 새 디스크를 지키지 않습니다.
이 기기의 디스크는 이렇게 인도된다
메모리 두 등급의 기본 디스크는 같습니다. 2 × 1TB NVMe, 하드웨어 RAID 없음, 디스크는 독립 직접 연결, 사용 용량은 2TB로 계산합니다. 128GB 월 임대료는 $455, 256GB는 $612입니다. 메모리는 DDR4-3200 ECC RDIMM이며 나중에 더하지 않습니다. 256GB는 그 등급을 고릅니다. CPU는 둘 다 AMD EPYC 7543P, 32코어 64스레드입니다. 2TB를 한 장 더하면 128GB 월 임대료는 $539입니다. 추가 장수는 0, 1, 2이고 장당 $84입니다. 월 임대료에 더한 뒤 월수를 곱합니다. 분기는 3배이고 추가 할인은 없습니다. 설치비는 없습니다.
기기는 일본 도쿄에 둡니다. 호스트 로그인은 SSH이고 주소는 콘솔에 있습니다. 디스크 배치를 바꿔도 로그인 주소는 바뀌지 않습니다. Proxmox VE 8과 9는 무료 시스템 목록에 있습니다. 두 번째 디스크와 추가 디스크는 시스템에서 직접 마운트합니다. 이미지는 그것들을 하드웨어 볼륨 하나로 만들지 않습니다.
나눔이 끝난 표시는 하나입니다. 게스트 디스크가 있는 블록 장치와 백업 파일이 있는 블록 장치가 같지 않은 것입니다. 스토리지 목록의 이름, 백업 작업의 스토리지 ID, findmnt -T의 소스가 맞으면 백업은 시스템 NVMe를 떠난 것입니다.