nfsroot가 때때로 네트워크 결함으로 인해 정지되는 것 같습니다.

nfsroot가 때때로 네트워크 결함으로 인해 정지되는 것 같습니다.

설정

나는 다음과 같이 젠투를 실행하는 씬 클라이언트를 설정했습니다.이 지침. 가끔씩 멈춘다는 점을 제외하면 꽤 잘 작동하는 것 같습니다.

네트워크를 끌어오고 ls를 실행한 다음 네트워크를 다시 연결하면 문제가 복제될 수 있다는 것을 발견했습니다. 어떤 이유로든 네트워크 손실에서 복구되지 않습니다. 저는 OS가 순간적인 I/O 손실을 처리할 수 있어야 한다고 가정합니다(하드 드라이브가 응답하는 데 1~2초가 걸린다고 가정해 보겠습니다). 따라서 이는 단순한 파일 시스템의 결함이 아니라 오히려 nfs 연결이 전혀 돌아오지 않습니다. 파일 시스템은 다음 옵션을 사용하여 nfs4로 마운트됩니다.

rw,relatime,vers=4.0,rsize=4096,wsize=4096,namlen=255,hard,proto=udp,port=0,timeo=11,retrans=3,sec=sys,clientaddr=xxx.xxx.xxx.xxx,local_lock=none,addr=yyy.yyy.yyy.yyy

이전에는 프로토 사양을 사용하지 않았으며(기본값은 tcp) 더 이상 작동하지 않았습니다.

코드를 당기지 않을 때 무슨 일이 일어나고 있는지는 네트워크에 잠시 문제가 발생하고, 무언가가 파일에 액세스하려고 시도하고(일부 소프트웨어를 컴파일할 때 정지되는 것처럼 보임) 복구되지 않는다는 것입니다.

질문

네트워크 문제에 대해 시스템을 견고하게 만들려면 어떻게 해야 합니까?

답변1

옵션 tcp,hard,_netdev를 사용해 보세요. UDP 프로토콜은 신뢰할 수 없습니다.

'_netdev' 마운트 옵션은 NFS 공유 충돌을 방지합니다.

관련 정보