그래서 저는 2TB 하드 드라이브( sda
)와 500GB 하드 드라이브( sdb
)를 가지고 있습니다. sdb
전체 장치를 차지하는 파티션( )을 생성하고 sdb1
그 크기를 확인한 다음 동일한 크기의 sda
파티션( )을 생성했습니다 .sda1
그런 다음 두 파티션 사이에 RAID1 어레이를 만들었습니다 mdadm --create /dev/md/md1 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
.
내가 달성하고 싶은 것은 sda
( ) sda1
에 미러를 두는 것 입니다 sdb
. 저는 RAID를 처음 사용합니다. 내가 일을 하는 방식이 좋은 걸까? 더 좋은 방법이 있나요? 몇 가지 제안을 듣고 싶습니다.
답변1
RAID1은 미러링에 관한 것입니다. 파티션을 미러링하는지, 디스크를 미러링하는지 여부는 중요하지 않습니다.
귀하의 설명에 따르면 요구 사항을 올바르게 해결한 것 같습니다. /dev/sdb1
2TB 디스크에 500GB 파티션 크기의 500GB 파티션이 있고 그 사이에 RAID1 미러를 생성했습니다.
이를 사용하여 cat /proc/mdstat
구성(및 아직 진행 중인 경우 미러 상태)을 볼 수 있습니다.
그러나 RAID는 백업이 아닙니다. 실수로 파일을 삭제(또는 손상)한 경우 해당 파일은 미러의 양쪽에서 삭제(또는 손상)됩니다. 너가능한두 부분을 별도의 파티션으로 유지한 다음 기존 500GB 디스크를 새 파티션의 일반 백업으로 사용하는 것이 가장 좋습니다. (예를 들어, rsnapshot
맨 위에는 rsync
제가 선호하는 솔루션 중 하나이며 독점 솔루션이 있습니다.Linux용 Veeam 에이전트또 다른 것입니다. ) 그러나 이는 상황과 특정 요구 사항에 따라 크게 달라집니다.
답변2
두 개의 파티션에 대한 Raid 1: 이것이 좋은가요?
오른쪽대표하다중복성, 중복성을 원하는 이유에 따라 다릅니다.
일반적으로 말하면 첫 번째: 시스템 가용성:
중복성이 필요한 첫 번째 이유는 내결함성 측면에서입니다. 즉, 일부 하드웨어 오류(성능이 저하될 수 있음)가 발생하는 경우에도 시스템이 완전한 기능을 유지하도록 보장합니다.
RAID-1이 필요한 이유는 무엇입니까? 두 드라이브 중 하나가 작동을 멈춘 경우에도 시스템의 완전한 기능을 유지합니다.
읽기 성능(특정 RAID-1의 경우)
워크로드가 주로 디스크에 대한 동시 무작위 읽기가 많은 작업으로 구성된 경우 두 개의 서로 다른 컨트롤러에서 I/O 로드를 공유하고 처리량을 효과적으로 늘릴 수 있습니다.
물론 이 중 어느 것도 무료는 아닙니다. 적어도 모든 쓰기 작업은 비용이 더 많이 듭니다.
비용(및 기타 단점)으로 인해RAID-1을 데이터 전용 솔루션으로 원하지 않는 경우.
일부 잘 알려진 파일 시스템(ext family, zfs, ufs...)의 데이터를 보존하려면 개인적으로 가장 안전한 마운트 옵션(보통 기본값)을 선택한 다음 다음을 사용합니다.동기화백업용.
rsync는 물론 cron에서 시작하여 데몬을 실행할 수 있으며, 어떤 경우든 내가 선호하는 경우: 예약된 SCHED_BATCH(시스템에서 달성할 다른 항목이 없는 경우에만 실행)
어쨌든 이 방법은 저렴하고 안전한 방법보다 더 잘 수행할 수 있습니다. RAID를 구성합니다.