일부 Linux 서버에서 하나의 디렉토리 (또는 하나의 파일 시스템)를 미러링하거나 복제하는 솔루션을 찾고 있습니다. 이상적인 솔루션은 모든 서버가 읽기 / 쓰기 액세스를 허용하는 것입니다. 또한 서버 중 하나가 다운되면 데이터가 전혀 손실되지 않고 나머지는 여전히 작동해야합니다.
몇 가지 해결책을 찾고 있습니다.
- DRBD : 블록 수준 복제.
- lsyncd : 매우 단순 해 보이지만 성능에 대해서는 의구심이 있습니다.
- GlusterFS : 복제 모드가 정확히 어떻게 작동하는지 아직 파악하지 못한 것 같습니다. 필요한 특성이 있습니까?
다른 제안은 환영합니다.
답변
첫 번째 질문은 두 대 이상의 서버로 복제 하시겠습니까? 두 대의 서버에서는 DRDB를 사용하고 세 대 이상에서는 글루 스터를 사용합니다.
I / O 대기 시간이 중요한 문제가 아니라면 글 러스터를 사용할 것입니다. 설정이 매우 쉽고 필요한 작업을 명확하게 수행 할 수 있습니다. 세 상자 모두에서 파일을 제공하는 Gluster 서버를 만든 다음 각 상자가 파일을 마운트하는 Gluster 클라이언트 역할을 수행하기 만하면됩니다.
DRDB는 3 개 이상의 서버가있는 마스터 <-> 마스터 모드에서 작업하기가 복잡해질 것입니다. 링 기반 설정을 구성해야하며 권장하지 않습니다. 그러나 두 서버에서 DRDB는 환상적입니다. 마스터 <-> 마스터 모드는 설정이 복잡하지 않으며 파일 시스템에 대해 배울 필요가 없습니다.
lsycd는 마스터 / 슬레이브 설정에 적합하지만 원하는 것은 아닙니다.
Ceph는 여전히 꽤 새롭습니다. 마지막으로 확인했을 때 아직 fsck 지원이 없었습니다. 오히려 안정적인 인프라를 기반으로 인프라를 구축하고 싶습니다.
Luster는 대규모 배포를위한 환상적인 제품이지만 mds 서버에 대해 하트 비트 및 페일 오버를 설정해야합니다. 그렇지 않으면 단일 장애 지점이 발생합니다. 그는 제한된 수의 서버를 감안할 때이 경우 과도한 사용이 의심됩니다.
답변
답변
당신은 조사해야 에서 OpenAFS 는 클러스터에 분산 존재하는 데이터의 여러 사본을 허용 주로 분산 파일 시스템의 모두가 동시에 /를 FS에 대한 쓰기를 읽을 수 있습니다 -.
다른 유용한 기능들도 있습니다 (좋은 인증, 유선 암호화, 클라이언트의 내장 로컬 캐싱, 기본 윈도우 클라이언트, 많은 버전의 유닉스 버전에서 이식 가능 등).
그래도 설정하기가 다소 힘듭니다.
답변
필요에 따라 NFS도 제대로 작동 할 수 있습니다.
답변
이것을 DRBD와 함께 사용하는 것은 정말 어려울 것입니다-문제는 n8whnp가 다중 경로 복제와 관련된 문제를 생각하는 것처럼 보이지는 않지만 (모든 노드를 미러 세트로 묶습니다) 동시성 제어입니다-당신은 d DRBD 위에서 미러링 위에서 클러스터 파일 시스템을 실행해야합니다.
동시성 제어를위한 실질적인 솔루션이 없기 때문에 lsyncd는 더욱 악화됩니다.
성숙하고 안정적인 개방형 솔루션으로 AFS 유형 솔루션 (AFS, OpenAFS)을 권장합니다. 오라클이 종료 한 이후로 광택이 없어졌습니다. glusterfs에 지나치게 익숙하지는 않지만 복제 된 스토리지가 아닌 분산 된 스토리지에 의존하기 때문에 분할 브레인 작업에서 어떻게 작동하는지에 대해 오랫동안 열심히 살펴 보는 것이 좋습니다 (AFS OTOH는 연결이 끊긴 모드에서 작동하도록 설계되었습니다).