우리의 목표는 Kafka 머신에 200TB의 거대한 저장 공간을 사용하는 것입니다.
이 목표를 달성하기 위해 RAID10에서 LVM을 사용하여 4개의 물리적 디스크에 볼륨을 생성합니다. 각 디스크 크기는 50T입니다.
RAID10
참고 - RAID10당 12개의 디스크가 있는 경우 각 디스크는 실제로 sdb/sdc/sdd/sde입니다.
Kafka 서버에는 4개의 디스크가 있습니다(예: lsblk
).
sdb 8:16 0 50T 0 disk
sdc 8:32 0 50T 0 disk
sdd 8:48 0 50T 0 disk
sde 8:64 0 50T 0 disk
그래서 우리는 다음 프로그램을 작성했습니다.
우리는 /dev/sdb
디스크와 /dev/sdc
. 그리고 동일한 볼륨 그룹에 추가합니다 /dev/sdd
. -/dev/sde
DB_vg
vgcreate DB_vg /dev/sdb /dev/sdc /dev/sdd /dev/sde
논리 볼륨을 생성합니다(여기에서는 200T 크기를 사용합니다).
lvcreate -L200T -n DB_lv DB_vg
XFS 파일 시스템을 만듭니다.
mkfs.ext4 -j -m 0 /dev/DB_vg/DB_lv -F
LV를 해당 폴더에 마운트할 수 있도록 폴더를 만듭니다.
mkdir /var/lib/kafka_broker
mount /dev/DB_vg/DB_lv /var/lib/kafka_broker
에서 df -h
다음과 같아야 합니다(예).
/dev/mapper/DB_vg-DB_lv 200T 61M 200T 1% /var/lib/kafka_broker
~에서lsblk
sdb
└─DB_vg-DB_lv 253:4
sdc
└─DB_vg-DB_lv 253:4
sdd
└─DB_vg-DB_lv 253:4
sde
└─DB_vg-DB_lv 253:4
~에서blkid
blkid | grep LVM2_member
/dev/sda2: UUID="Y5MbyB-C5NN-hcPA-wd9R-jmdI-02ML-W9qIiu" TYPE="LVM2_member" <-- sda2 is the OS
/dev/sdc: UUID="mtg8CY-b3j9-K1qZ-CRTV-SZum-gDx3-lbm4ZX" TYPE="LVM2_member"
/dev/sdb: UUID="MvfzqO-PV8N-dror-psl4-PfUf-7coa-6cb8lQ" TYPE="LVM2_member"
/dev/sdd: UUID="C4n63l-Uk3E-D65G-WcgI-xic2-cJLi-eSTUAa" TYPE="LVM2_member"
/dev/sde: UUID="d743Xp-eDxr-Dygk-HGgy-Dh9c-K3cx-kHtyqo" TYPE="LVM2_member"
/dev/mapper/DB_vg-DB_lv
이제 우리는 마운트된 LV를 사용할 수 있습니다 ./var/lib/kafka_broker folder
/var/lib/kafka_broker
이 폴더를 kafka 에이전트 200T의 저장소로 사용할 수 있습니다 .
내 질문은 다음과 같습니다
안전 해요? LVM을 사용하여 4개의 거대한 디스크로 생성된 거대한 스토리지?
스토리지 크기가 200T 정도일 때 XFS 파일 시스템을 생성할 수 있나요?
내 절차에 따라 이 작업을 올바르게 수행하고 있습니까? 아니면 뭔가 빠졌을 수 있습니까?
답변1
다른 스토리지와 마찬가지로 이는 백업만큼만 안전합니다.
XFS는 최대 500TB를 지원합니다., 그럼 좋습니다.
내가 아는 한 아무것도 손실되지 않습니다(
vgcreate
그리고vgextend
PV는 초기화될 수 있으므로 실행할 필요가 없습니다pvcreate
).