NFS가 무작위로 계속 충돌하여 다른 클라이언트의 마운트가 중단됩니다.

NFS가 무작위로 계속 충돌하여 다른 클라이언트의 마운트가 중단됩니다.

NFS를 사용하여 여러 Linux 서버를 상호 연결합니다. 한동안은 모든 일이 순조롭게 진행됐지만, 왠지 점점 불안해졌어

예: 클라이언트에서 NFS 서버로 4GB 파일을 복사하는 작업이 완료되기 전에 IO 오류로 인해 실패합니다. dmesg가득한

[1525450.884071] nfs: server quackron not responding, timed out
[1525451.384072] nfs: server quackron not responding, timed out
[1525451.884072] nfs: server quackron not responding, timed out
[1525452.384086] nfs: server quackron not responding, timed out
[1525452.884065] nfs: server quackron not responding, timed out
[1525584.112127] nfs: server quackron not responding, timed out
[1525669.492066] nfs: server quackron not responding, timed out
[1525930.544062] nfs: server quackron not responding, timed out

마운트 옵션(재부팅 또는 마운트 해제 트릭이 발생할 때까지 사라지는 NFS 서버가 전체 디렉토리를 잠그는 것을 방지하기 위한 많은 추가 옵션)

rw,intr,soft,timeo=5,retrans=5,actimeo=10,retry=5,vers=4,addr=10.0.0.20,clientaddr=10.0.0.1

서버로 이동하면 dmesg에서 이것을 얻습니다.

[1384141.237197] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
[1384141.237237] NFSD: starting 90-second grace period
[1439491.137710] nfsd: last server has exited, flushing export cache
[1439492.461197] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
[1439492.461236] NFSD: starting 90-second grace period

이 dmesg 또는 로그에서 찾을 수 없지만 "nfsd 마지막 서버가 신호 15로 종료되었습니다" 오류가 표시되는 것을 알고 있습니다. 구글링해도 유용한 정보가 나오지 않는 것 같습니다.

nfs가 계속 충돌하는 원인이 무엇인지 아시나요?

참고: 이 서버는 Ubuntu Server 11.10을 실행하고 있으며 완전히 최신 상태입니다.

답변1

테스트로서 클라이언트 설치를 다음과 같이 수정합니다.

sudo mount -t nfs -o intr,hard,timeo=14,rsize=8192,wsize=8192 

fstab또는 클라이언트 측에 넣으면 다음과 같습니다 .

remoteserver:/remote/path /local/path nfs rsize=8192,wsize=8192,hard,timeo=14,intr 0 0 

저는 직장에서 이러한 설정을 사용하며 일반적으로 일주일에 몇 TB를 전송합니다.

이러한 설정을 사용할 때 특정 경로 변수 이외의 다른 설정을 추가하지 마십시오.

답변2

사설 NFS VLAN인 경우 네트워크에 중복된 IP가 없는지 다시 확인하세요. 방금 매우 유사한 문제를 디버깅한 결과 킥스타트 파일에 일부 오타가 있고 40개 호스트 중 5개 호스트에 중복된 IP 주소가 있음을 발견했습니다. NFS는 제대로 작동하고 복제는 한동안 빨라지지만 성능은 점차 저하되고 완전히 중단됩니다.

관련 정보