NFS 자동 페일 오버 또는로드 밸런싱 또는 클러스터링?


11

내가 사용했던 NFS (그리고 그것은 단지 하나의 내가 네트워크 파일을 잘 알고있다) 몇 년 동안. 그러나 여전히 찾을 수 없습니다 ..

  • NFS클러스터 된 디자인 (또는로드 균형 조정)으로 서버 를 만드는 방법
  • 또는 적어도 MORE-THEN-ONE 서버와 "자동 장애 조치"에 배포해야합니다.

주요 목적은 단일 단일 NFS 서버를 단일 실패 지점으로 만들지 않는 것입니다.


나는 그것을 올바르게 만드는 법을 모르기 때문에 지금까지 나는 내 자신으로 발명했다.

  1. 2 대의 서버에있는 NFS.
  2. 첫 번째 (가정 마스터) 서버에서 다른 두 번째 서버로의 RSYNC
  3. 응용 프로그램 (웹 등) 서버에서 Shell ScriptNSF- 마스터 서버 마운트 지점의 상태를 확인하십시오. 그런 다음 필요한 경우 자동 마운트 해제 (방치) 후 두 번째 마운트에서 자동 마운트합니다.
  4. 자동 쉘 스크립트에서 사용한 주요 기능 nfsstat -m은 마운트 포인트의 상태를 확인하는 것입니다.

(저는 Redhat을 사용하고 있습니다 )

그러나 어쨌든, 나는 여전히 그것이 안전하고 표준적인 방법이라고 생각하지 않습니다.

답변:


8

이 자습서 ( 고 가용성 NFS 클러스터 : 설정 Corosync & Pacemaker) 는 NFS, Corosync 및 Pacemaker를 사용하여 NFS 활성 / 활성을 설정하는 방법을 보여줍니다. 또는 DRDB 및 Pacemaker를 사용하여 활성 / 활성 설정을 보여주는 DRBD 및 Pacemaker가 포함 된 고 가용성 NFS 스토리지 라는 안내서를 따를 수 있습니다.

또한 다양한 기술과 용어를 익히기 위해 이러한 다른 링크를 살펴볼 수도 있습니다.

이 ServerFault Q & A는 linux clustered Filesystem 도 유용하다는 것을 증명해야합니다 .

추가 참조


@AndrewSavinykh-링크는 당신이 찾고있는 것이라면 공유 / 액티브를 보여줍니다.
slm

5

이것은 NFS가 많은 방법 중 하나 일뿐입니다.

NFS를 버전 3까지만 사용하여이 작업을 수행 할 수있는 방법이 없습니다. 기능을 수동으로 추가해야합니다.

이것은 아마도 다음을 의미합니다.

  • 데이터 복제 또는 일부 공유 스토리지
  • IP 인수
  • 일종의 하트 비트 모니터링
  • 클러스터 관리

이 모든 작업을 수행 할 수있는 패키지가 있지만 조직에 맞게 패키지를 통합해야합니다.

Linux HA 프로젝트는 몇 년 전에 이러한 것들 중 일부를 구현하기 위해 설립되었습니다. http://www.linux-ha.org/

당신이 사용하고있는 인기있는 배포판에 이미 패키지화 된 것들의 대부분을 찾아야합니다.

주의 할 점 ... 시스템의 가장 큰 실패 원인은 관리 오류이며 HA 클러스터는 정의상 복잡한 시스템이므로 관리 오류가 발생하기 쉽습니다.

NFS v4를 넘어 서면 NFS v4 는 AFS가 20 년 동안 가지고 있었던 확장 성, 보안 및 가용성 기능 중 일부를 구현하기 시작 합니다. 이는 다양한 클라이언트 및 서버와 완벽하게 또는 광범위하게 구현되거나 아직 완전히 호환되지는 않습니다. NFS를 사용하는 경우 v4로 시작하여 플랫폼에서 이미 구현 된 것을 확인하십시오.


AFS는 훌륭했고 잊혀졌습니다 ... 명예로운 언급으로 +1
glallen

2

내가 아는 한 NFS를 활성-활성 클러스터로 사용할 수 없습니다. 이제 액티브-패시브에는이를 달성하는 데 도움이되는 특정 도구가 있습니다. 필자는 목표에 따라 고 가용성 NFS 공유 / 공유를 만들 수있는 Solaris OS 및 Solaris Cluster에 대해 더 잘 알고 있습니다.

필요한 경우 서버 A에서 서버 B로 또는 그 반대로 이동할 수있는 공유 스토리지가 필요합니다. 이상적으로 iSCSI 또는 SAN 스토리지. 그리고 NFS 공유와 관련된 IP.

클러스터는 다음과 같이 작동합니다. 서버 A가 실패한 경우 서버 B는 IP를 NFS 서버와 연관시키고 공유 디스크의 소유권을 가져 와서 마운트 한 후 NFS 서버를 시작합니다. 서버 B가 실패하고 서버 A가 가동 된 경우에도 마찬가지입니다.

이 작업을 수동으로 수행하려면 서비스를 자동으로 활성화 및 비활성화하기 위해 스크립트 및 스크립트를 모니터링하여 기본 단계로 수행해야합니다.

Redhat 여기를 살펴보세요


로드 밸런서, CentOS, DRBD, GFS2 및 Pacemaker를 사용하여 활성 / 활성 NFS 클러스터를 설정했습니다. 자세한 내용은 내 답변을 참조하십시오.
doublesharp


2

Red Hat RHSS / RHGS (Red Hat Storage / Gluster Server) 제품은 FUSE 기반 GlusterFS 클라이언트를 사용하여 실행중인 백엔드 서버에 대한 NFS 연결을 프록시하고 여러 서버 노드 백엔드 미러링 된 스토리지를 유지하면서이를 완벽하게 수행합니다. 모두 클라이언트 측에 투명합니다. 이것은 매우 매끄러운 솔루션입니다. EPEL / Extra RPM 솔루션을 설치하거나 Red Hat에서 구입할 수 있습니다. 클라이언트 측에서는 fstab에서 마운트 유형으로 FUSE / glusterfs 또는 NFS를 사용하기 만하면됩니다. 지저분한 쿼럼 / 펜싱 문제는 없습니다.


동의합니다, 잘 작동하고 구성이 간단합니다
elbarna

1

이것은 매우 훌륭하고 간단한 사용법, 시도 및 잘 작동합니다.

https://www.howtoforge.com/high_availability_nfs_drbd_heartbeat

개인적으로 나는 ha를로드 밸런스와 결합하기 때문에 lvs를 선호하지만 nfs + gfs2 + drbd로 시도해 보았고 실제로 작동하지 않습니다. 어쩌면 나는 방법이 필요하지만 lvs + nfs ha에 대해 아무것도 찾을 수 없습니다.


그러나 Virtual IP서버에서 언급 한 것처럼 어떻게해야 합니까? (나도 모르겠다)
夏 期 劇場

나는 가상 서버를 생성하기 위해 가상 머신을 생성하기 위해 가상 머신을 생성하고, 가상 가상 머신을 생성하기 위해 pirahna gui라는 멋진 웹 인터페이스가 필요하다면이 PDF를 읽으십시오. -Terminal-Cluster-UNIHH.pdf
elbarna

nfs가 원격에서 마운트되고 하나의 서버가 다운되면 nfs가 마지막 서버 및 원격 클라이언트에서도 차단됩니다.
elbarna 2019

설마, NFS 불가능한 액티브 / 액티브 클러스터입니다
elbarna의

그러나 다행히도 우리는 pNFS는있을 수 있습니다
elbarna의
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.