나는 많은 수의 bash 프로세스를 가지고 있습니다. 각 bash 스크립트는 표준 출력이 다른 로그 파일로 리디렉션되는 실행 파일을 호출합니다. 실행의 약 5%는 다음과 같이 끝납니다. sh: [로그 이름]: 리소스를 일시적으로 사용할 수 없습니다. 병렬로 실행되는 작업의 양을 줄이려고 노력했지만 일부 bash 스크립트에서는 여전히 오류가 발생합니다.
추가 정보:
- ESXi를 사용하여 가상 머신에서 실행되는 Ubuntu 14.04 LTS
- gparted 및 LVM이 할당된 새 파티션(전체 파티션으로 구성된 새 논리 볼륨)에서 발생합니다.
- nfs-kernel-server를 사용하여 LV 내보내기
- LV는 Samba를 사용하여 Windows와 공유할 수도 있습니다.
- LV는 ext4를 사용하여 포맷됩니다.
- 나는 이 컴퓨터에 대한 관리자 권한을 가지고 있습니다
더 자세한 정보
- Sun-Grid-Engine을 사용하여 모든 것이 클러스터에서 실행됩니다.
- m1, m2, m3, m4의 4개 가상 머신이 있습니다.
- m1은 sge master, sge exec 및 ldap 서버를 실행합니다.
- m2, m3, m4 sge exec 실행
- m3는 nfs-kernel-server를 실행하고 내보냅니다.집로컬 디스크 m1, m2, m4의 파티션을 사용하여 논리 볼륨(LVM 사용)에 있는 폴더
- m3에는 다음과 같은 소프트 링크가 있습니다.집폴더
- m1, m2, m4 설치집fstab을 통해 폴더에 액세스하면 모든 컴퓨터가 동일한 폴더를 가리키게 됩니다.집폴더
- m3, m2, m4는 LDAP 클라이언트를 실행하고 m1에 연결합니다.
- 모든 작업은 m1(제출 호스트로 구성)을 통해 클러스터에 제출됩니다.
- 작업은 m3(내보내기 디스크)에서만 실패합니다. 하지만 m3에 대한 대부분의 작업은 과거에 이루어졌습니다. 실패는 무작위이지만 m3에서만 일관됩니다.
- m3도 공유됨집Samba를 통해 Windows 클라이언트로
어떤 도움이라도 주시면 감사하겠습니다 :) (디버깅 방법, 관련 로그, 시스템에서 추가 정보를 얻는 방법 등...)
미리 감사드립니다!
답변1
도움을 주신 모든 분들께 감사드립니다!
m3의 논리 볼륨에 대한 소프트 링크를 사용하는 대신 nfs를 사용하여 m3의 논리 볼륨을 마운트함으로써(nfs 클라이언트인 나머지 시스템 m1/m2/m4에서와 정확히 동일한 방식으로) 문제가 해결되었습니다. /etc/fstab:에 다음 줄을 추가 <nfs server>:/ /mnt nfs auto 0 0
하고 sudo mount -a
.
힌트는 m3(nfs 서버)에 지속적인 오류가 있었고 실패한 작업을 자동으로 다시 제출하는 것도 문제를 해결했다는 사실입니다. m1/m2/m4(nfs 클라이언트)에서 오류가 발생한 적이 없습니다. m3은 nfs 서버이고 논리 볼륨에 대한 간단한 소프트 링크가 있으며 모든 클라이언트는 nfs를 사용하여 이 논리 볼륨에 연결한다는 것을 기억하십시오.
마음속으로 nfs가 이러한 문제로부터 클라이언트를 보호할 수 있을 것이라는 느낌이 들지만 논리 볼륨의 파일 시스템이 실패하면 안 된다고 생각합니다. 실패하더라도 실제 문제가 발생합니다. 문제 근본 원인. 그건 그렇고, 이것은 여전히 사실 일 수 있습니다.
이 문제와 해결책에 대한 통찰력이 있다면 적어주세요. 문제가 있으면 덮고 싶지 않습니다.