직접 연결 디스크 두 장에 하드웨어 어레이가 없으면, 중복은 어떻게 합니까?

기본은 2 × 1TB NVMe입니다. 하드웨어 RAID는 없고 두 장은 메인보드에 각각 직접 연결됩니다. 사용 용량은 2TB로 계산하며, 미러를 만든 뒤의 1TB가 아닙니다. 중복이 필요하면 시스템에서 구성하고, 그 전에 있는 데이터를 기기 밖으로 옮깁니다.

어레이 멤버가 아니라 직접 연결인지 먼저 봅니다

로그인한 뒤 파일 시스템을 만들기 전에 블록 장치를 봅니다. Linux에서는 lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,MODEL을 씁니다. 약 1TB NVMe 두 장이 각각 나오고 유형은 disk입니다. 아래에 파티션이 없거나, 설치할 때 만든 파티션만 있습니다. md라는 어레이 장치가 없고 하드웨어 어레이 관리 입구도 없는 것이 예정된 상태입니다.

한 장이 루트에 마운트되고 다른 장이 비어 있으면, 설치 프로그램이 한 장만 쓴 것입니다. 빈 디스크는 따로 파티션하거나, 백업이 끝난 뒤 소프트 어레이에 넣을지 정합니다. 이미 쓰는 장은 백업 없이 파티션을 지워 어레이에 넣지 않습니다.

2 × 1TB기본 NVMe
2TB직접 연결 사용 용량
없음하드웨어 RAID

사용 용량은 두 장을 더한 값으로 셉니다

직접 연결은 운영체제가 디스크 두 장을 동시에 본다는 뜻입니다. 한 장에 시스템을 두고 다른 장에 데이터를 두거나, 두 장 모두 가상 머신 디스크 파일에 쓸 수 있습니다. 합은 2TB에 가깝고, 파티션 표와 파일 시스템 자체 용량은 빠집니다. RAID 1 뒤에 1TB만 남는다고 보면 lsblk의 disk 두 줄과 맞지 않습니다.

하드웨어 어레이가 없으면 한 장이 빠져도 다른 장의 파일은 남습니다. 두 장에 걸친 디렉터리는 자동으로 채워지지 않습니다. 파일이 어느 장에 있는지는 마운트 지점이 정하며, 섀시 안의 어레이 카드가 정하지 않습니다.

세 가지 쓰임은 바꾸는 것이 다릅니다

쓰임대략 용량한 장이 고장 나면
두 장을 따로 마운트2TB에 가까움그 디스크의 디렉터리만 영향
소프트 RAID 11TB에 가까움다른 장이 같은 데이터를 이어 제공
소프트 RAID 02TB에 가까움묶음 전체를 쓸 수 없음

따로 마운트는 시스템 디스크와 데이터 디스크 역할이 분명한 기기에 맞습니다. 데이터베이스 파일, 백업 디렉터리, 가상 머신 디스크는 둘째 장에 두고 루트는 첫째 장에 둡니다. 미러가 없으므로 백업은 이 기기 밖에 씁니다.

소프트 RAID 1은 용량을 미러 한 부와 바꿉니다. 1TB 두 장을 묶으면 쓸 수 있는 공간은 한 장에 가깝습니다. 쓰기는 두 장에 떨어지고 읽기는 나눌 수 있습니다. 막는 것은 디스크 한 장의 손상입니다. 잘못 지운 파일이나 두 장이 함께 고장 나는 경우는 막지 않습니다. 묶기 전에 두 장의 파티션은 지워집니다.

소프트 RAID 0은 두 장을 더 큰 공간으로 붙입니다. 속도는 더 날 수 있으나 어느 한 장이 고장 나면 묶음 전체를 마운트할 수 없습니다. 남겨야 할 데이터는 RAID 0에만 두지 않습니다.

작업은 이 순서로 합니다

  1. 두 장의 이름을 적습니다

    lsblknvme list/dev/nvme0n1, /dev/nvme1n1 같은 이름을 적습니다. 순서로 짐작하지 않습니다. 재시작 뒤 번호가 바뀔 수 있습니다.

  2. 남길 데이터를 밖으로 복사합니다

    어레이를 만들면 참여한 디스크가 다시 쓰입니다. 시스템이 한 장에 있으면 빈 장만 따로 파티션하고, 루트가 있는 장을 새 어레이에 넣지 않습니다.

  3. 쓰임을 정한 뒤 파티션합니다

    따로 쓰면 빈 장에 파티션과 mkfs를 하고 /etc/fstab에는 UUID를 적습니다. 미러는 비어 있는 두 장에 어레이를 만든 뒤 그 장치에 파일 시스템을 만듭니다.

  4. 복구를 한 번 연습합니다

    미러가 생기면 어레이 도구로 두 멤버가 동기화 중인지 봅니다. 그다음 백업에서 작은 파일 하나를 임시 디렉터리로 되돌려, 그 사본이 읽히는지 확인합니다.

기본 디스크는 직접 연결로 둡니다

AMD EPYC 7543P는 메모리가 128GB이든 256GB이든 기본 디스크가 2 × 1TB NVMe입니다. 하드웨어 RAID는 없고 디스크는 각각 직접 연결됩니다. 월 임대료는 $455와 $612입니다. 메모리 용량은 디스크 연결 방식을 바꾸지 않습니다. 공간이 더 필요하면 2TB NVMe를 1장 또는 2장 더합니다. 장당 월 $84이며 그 디스크도 하드웨어 어레이에 들어가지 않습니다.

시설은 일본 도쿄입니다. Ubuntu, Debian, AlmaLinux, CentOS Stream, FreeBSD, Proxmox VE를 미리 설치할 수 있습니다. Proxmox가 가상 머신 디스크를 디렉터리나 별도 디스크에 둘 때도, 둘째 NVMe를 독립 저장소로 둘지 소프트 어레이로 둘지 먼저 정합니다. 설치 마법사는 하드웨어 어레이를 대신 고르지 않습니다. 그 카드가 없기 때문입니다.

어레이를 아직 묶지 않는 경우

루트가 한 장을 이미 차지하고 바깥 백업이 없으면 다시 묶지 않습니다. lsblk와 마운트 지점만 맞춥니다. 모델이나 용량이 다르면 대칭 미러가 된다고 가정하지 않습니다. 추가 디스크는 다른 노트에 있습니다. 그 2TB도 직접 연결이며 이 1TB 두 장에 자동으로 합쳐지지 않습니다.

중복을 만든 뒤에도 접속은 같습니다. Linux는 SSH이고 주소는 콘솔에 있습니다. 디스크 배치를 바꿔도 호스트 이름과 포트는 바뀌지 않습니다.

미러와 백업은 각자 한 가지를 맡습니다

소프트 RAID 1은 두 멤버에 같은 데이터가 있다는 것만 보장합니다. 잘못 지우거나, 잘못 포맷하거나, 파일을 비우면 두 장에 함께 나타납니다. 그래서 미러는 백업을 대신하지 않습니다. 남겨야 할 데이터베이스, 가상 머신 디스크, 사이트 파일은 이 기기 밖에 한 부 더 두고, 가끔 백업에서 작은 파일 하나를 꺼내 그 사본이 열리는지 확인합니다.

따로 마운트하면 시스템 디스크와 데이터 디스크의 백업 주기를 다르게 둘 수 있습니다. 시스템 디스크는 설치 뒤의 설정과 사용자를 남기고, 데이터 디스크는 데이터베이스나 가상 머신 디스크의 쓰기량에 맞춥니다. 두 백업을 곧 바꾸거나 다시 파티션할 NVMe에 쓰지 않습니다. 디스크를 바꾸면 백업도 함께 사라집니다.

어레이를 만들기 전에 용량을 한 번 더 봅니다. 두 장이 모두 1TB에 가까울 때 대칭 미러가 맞습니다. 한 장이 눈에 띄게 작으면 미러의 사용 공간은 작은 장에 맞추고 남는 섹터는 쓰지 못합니다. 그런 조합은 따로 마운트하는 편이 맞습니다. 큰 장에 데이터를 두고 작은 장에 시스템을 둡니다. 추가 2TB를 이 1TB 두 장과 한 미러로 묶지 않습니다. 이유는 추가 디스크 노트에 있습니다.

어레이가 생기면 이름이나 UUID를 부팅 설정과 fstab에 적습니다. 현재 세션에서만 조립하면 재시작 뒤 장치는 남아도 파일 시스템이 원래 디렉터리로 돌아오지 않을 수 있습니다. 적은 뒤 한 번 재시작해 루트나 데이터 디렉터리가 예상 위치에 있는지, lsblk의 멤버 상태가 동기화 완료인지 봅니다. 계속 저하 상태이면 새 업무 데이터를 쓰지 않고, 두 멤버가 어레이로 돌아온 뒤 이어 갑니다.

Proxmox가 가상 머신 디스크를 디렉터리에 두면, 그 디렉터리의 파일 시스템이 위에서 고른 방식입니다. 미러, 따로 둔 둘째 장, 나중에 더한 2TB는 가상 머신 입장에서 다른 저장 디렉터리일 뿐입니다. 설치 마법사는 하드웨어 볼륨을 만들지 않습니다. 디렉터리를 잘못 고른 뒤 옮기려면 가상 머신을 멈춘 다음 디스크 파일을 옮깁니다. 쓰면서 복사하지 않습니다.

메모리를 먼저 고르고, 디스크를 더할지 정합니다.

$455 / 월부터