저는 스토리지와 파일 시스템에 대해 아무것도 모르기 때문에 이 질문을 만들었습니다.
동일한 디스크를 두 개의 Linux 시스템에 마운트하고 싶습니다. 두 시스템 모두 동시에 동일한 디스크에서 읽고 쓸 수 있어야 합니다.
내가 아는 한, 서로 다른 두 컴퓨터가 동일한 디스크에 액세스하면 파일이 손상될 수 있기 때문에 쉽지 않습니다.
두 시스템에 동일한 디스크를 마운트하기 위해 무엇을 사용해야 하는지, 그리고 SAN 또는 NAS가 이 모든 것에 어떻게 적합한지 알고 싶습니다.
몇 가지 조사 끝에 이 작업을 수행하려면 NFS 또는 ACFS와 같은 것을 사용해야 한다고 생각합니다.
답변1
NFS를 통해 이 작업을 수행할 수 있습니다. 디스크를 한 컴퓨터에 마운트하고 NFS를 통해 다른 컴퓨터에 드라이브를 공유합니다.
공유할 디스크가 /dev/sdb이고 공유할 머신이 machine1.example.com 및 machine2.example.com이라고 가정하고 다음을 수행합니다.
machine1에 /dev/sdb 마운트(디스크가 이미 machine1에 마운트되어 사용되고 있는 경우 이 단계를 건너뛸 수 있음)
machine1을 NFS 서버로 사용하고 /dev/sdb에 마운트된 디렉터리를 내보냅니다. /dev/sdb가 /mnt/sharemount에 마운트되어 있다고 가정합니다. NFS 내보내기 항목은 다음
/etc/exports
과 같아야 합니다./mnt/sharemount machine2.example.com(rw,sync)
이제 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 공유를 읽고 쓸 수 있도록 하려면 동일한 지침을 찾을 수 있습니다.여기