네트워크 공유를 드라이브로 사용하는 소프트웨어 RAID

네트워크 공유를 드라이브로 사용하는 소프트웨어 RAID

면책조항: 이는 아마도 성능 관점이나 신뢰성 관점에서 볼 때 미친 짓일 수 있으며 학문적 가치만 있을 수 있습니다(예: 작동할까요?). 라고 한:

mdadm은 각 중복 디스크가 네트워크 드라이브 역할을 하는 RAID 설정을 지원합니까?

이것이 나의 (미친?) 아이디어의 배경입니다: 나는 리눅스를 사용하고 싶다상자시스템을 수용하는 데는 작은 디스크만 필요합니다. 이더넷을 통해 이 상자에 두 개가 더 연결되어 있습니다.기계, 각각 RAID-0 시스템을 갖추고 있어 기존 하드 드라이브를 최대한 활용합니다. 두 RAID-0 볼륨의 크기는 거의 동일합니다. 이제 각 컴퓨터는 RAID-0 볼륨을 네트워크 공유로 제공하고 상자는 이를 각각 /old_drives_0 및 /old_drives_1로 마운트합니다.

가장 중요한 것은 mdadm에게 /old_drives_0 및 /old_drives_1을 두 개의 미러링된 "디스크"로 사용하여 RAID-1 시스템을 구축하고 이렇게 생성된 RAID-1 볼륨을 네트워크에서 드라이브로 사용할 수 있도록 지시하고 싶다는 것입니다.

mdadm에게 다음과 같이 (일반적인 /dev/sdaX 대신) 거의 모든 마운트 지점을 사용하도록 지시할 수 있습니다.

mdadm /dev/md0 --create --raid-devices=2 --level=1 /old_drives_1 /old_drives_2
mkfs /dev/md0 # optionally specifying -text3 or -text4
mount /dev/md0 /raid

(느슨하게 인용됨https://unix.stackexchange.com/a/48437/27804)

네트워크를 통해 RAID를 구축하지 않는 데에는 많은 이유가 있다는 것을 알고 있지만 이를 지원해야 하는 이유도 있을 수 있습니다. 디스크가 손상되면 네트워크 케이블을 다른 시스템에 연결하기만 하면 됩니다... 또한, 세 개를 연결합니다. NIC가 상자에 있으면 전용 이더넷 연결을 통해 두 개의 자체 RAID "드라이브"에 액세스할 수 있고 세 번째 드라이브를 업스트림 트래픽으로 사용하여 클라이언트에서 RAID-1 볼륨에 액세스합니다.

문제가 발생하면 신속하게 서비스를 받을 수 있도록 "상자"와 "기계"를 즉시 교체용으로 보관할 수도 있습니다.

답변1

RAID에는 항상 장치가 필요합니다(적어도 md를 사용하는 경우). 두 가지 방법이 있습니다. 아마도 더 나은 방법은 네트워크 블록 장치를 사용하는 것입니다.

https://en.wikipedia.org/wiki/Network_block_device

(읽기가 너무 느리기 때문에) 쓰기용으로만 이러한 장치를 사용하도록 md에 지시할 수 있습니다 mdadm ... --write-mostly.

또 다른 옵션은 네트워크 볼륨(파일 시스템 수준)에 파일을 생성하고 이를 루프 장치에 사용하는 것입니다.

관련 정보