동일한 디스크를 두 개의 Linux 시스템에 마운트 - SAN/NAS

동일한 디스크를 두 개의 Linux 시스템에 마운트 - SAN/NAS

저는 스토리지와 파일 시스템에 대해 아무것도 모르기 때문에 이 질문을 만들었습니다.

동일한 디스크를 두 개의 Linux 시스템에 마운트하고 싶습니다. 두 시스템 모두 동시에 동일한 디스크에서 읽고 쓸 수 있어야 합니다.

내가 아는 한, 서로 다른 두 컴퓨터가 동일한 디스크에 액세스하면 파일이 손상될 수 있기 때문에 쉽지 않습니다.

두 시스템에 동일한 디스크를 마운트하기 위해 무엇을 사용해야 하는지, 그리고 SAN 또는 NAS가 이 모든 것에 어떻게 적합한지 알고 싶습니다.

몇 가지 조사 끝에 이 작업을 수행하려면 NFS 또는 ACFS와 같은 것을 사용해야 한다고 생각합니다.

답변1

NFS를 통해 이 작업을 수행할 수 있습니다. 디스크를 한 컴퓨터에 마운트하고 NFS를 통해 다른 컴퓨터에 드라이브를 공유합니다.

공유할 디스크가 /dev/sdb이고 공유할 머신이 machine1.example.com 및 machine2.example.com이라고 가정하고 다음을 수행합니다.

  1. machine1에 /dev/sdb 마운트(디스크가 이미 machine1에 마운트되어 사용되고 있는 경우 이 단계를 건너뛸 수 있음)

  2. machine1을 NFS 서버로 사용하고 /dev/sdb에 마운트된 디렉터리를 내보냅니다. /dev/sdb가 /mnt/sharemount에 마운트되어 있다고 가정합니다. NFS 내보내기 항목은 다음 /etc/exports과 같아야 합니다.

    /mnt/sharemount machine2.example.com(rw,sync)

  3. 이제 2단계에서 machine2가 NFS를 통해 machine1에서 /mnt/sharemount를 사용하도록 허용하고, machine1의 /mnt/sharemount를 machine2에 마운트하기만 하면 됩니다.

    mount machine1.example.com:/mnt/sharemount /mnt/sharemount

두 시스템 모두 /mnt/sharemount의 동일한 위치에 쓰기 시작하면 필요한 잠금이 적용되므로 데이터가 손상되지 않으며 이 모든 것이 사용자에게 투명해집니다.

이 답변은 단지 개요일 뿐입니다. 서버에 새 디스크를 마운트하고 NFS를 설정하는 데 익숙하지 않다면 Google에서 검색해 보세요 how to configure nfs client and server linux. 검색 결과는 따라하기 쉬운 수십 개의 튜토리얼과 단계별 가이드를 제공합니다. 명령줄을 사용하는 것이 편하다면(나는 그럴 것이라고 가정합니다), 최소한의 시간에 설정을 완료할 수 있을 것입니다.

답변2

저장소를 파일 공유로 공유하면 아무런 문제가 없습니다. 하나 생각해봐CIFS(삼바) 공유또는네트워크 파일 시스템NAS 장치에서 또는 한 서버에서 다른 서버로.

디스크를 다음과 같이 공유하는 경우블록 장치, iSCSI 또는 Fibre Channel LUN이 필요합니다.클러스터 인식 파일 시스템가장 중요한 것은 두 시스템 모두에서 동시 읽기 및 쓰기 작업을 용이하게 하는 것입니다.
파일 시스템은 클러스터를 인식해야 합니다. 일반 파일 시스템에서는 커널이 메모리에서 잠금을 수행하고 한 노드는 어떤 파일이 잠겼는지, 다른 노드에서 수정되었는지 확인할 수 없기 때문에 다음과 같은 결과가 발생합니다. 파일이 손상되었습니다.

Linux용 일반적인 클러스터 파일 시스템은 오픈 소스입니다.GFS2또는 사업베리타스 클러스터 파일 시스템.

답변3

NFS를 통해 쉽게 달성할 수 있습니다.

사용자가 NFS 공유를 읽고 쓸 수 있도록 하려면 동일한 지침을 찾을 수 있습니다.여기

관련 정보