LAN의 여러 시스템에 대용량 파일 복사

LAN의 여러 시스템에 대용량 파일 복사

하나의 Linux 시스템에서 약 20개의 다른 Linux 시스템으로 가능한 한 빨리 동일한 LAN에 있는 몇 가지 큰 파일을 복사해야 합니다. 이러한 파일을 복사하는 데 가장 적합한 도구/방법은 무엇입니까? 이 파일은 일회성 복사가 되지 않습니다. 이러한 컴퓨터는 인터넷에 연결되지 않으며 보안은 문제가 되지 않습니다.

업데이트:

내가 이것을 묻는 이유는 (내가 이해하는 바에 따르면) 현재 scp직렬로 파일을 각 컴퓨터에 복사하는 데 사용하고 있으며 이것이 "너무 느리다"고 더 빠른 대안을 모색하고 있기 때문입니다. 내가 들은 바에 따르면 scp호출을 병렬화하려고 하면 하드 드라이브 검색으로 인해 호출 속도가 더 느려질 뿐입니다.

답변1

비트토렌트. 이것이 Twitter가 내부적으로 몇 가지 사항을 배포하는 방식입니다.

http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html(웹 아카이브 링크)

답변2

어때?UFTP, 멀티캐스트를 사용하여 UDP를 통해 한 번에 여러 클라이언트에 파일을 전달합니다. 모든 사람을 위한 것은 아니며 나는 그것에 대한 전문가는 아니지만 원하는 대로 작동하는 것처럼 들립니다.

답변3

을(를) 사용하여 이 데이터를 복사해 보셨나요 rsync? 1Gbit 이상의 LAN이 있는 경우 4*20GB 이상 복사하는 것은 문제가 되지 않습니다.

이 사본은 얼마나 자주 발생합니까? 완료하는 데 몇 분 정도 걸리는 것이 중요합니까?

답변4

NFS 공유를 설정하고 각 시스템이 대용량 파일의 공유 저장소에서 가져오는 것이 가장 빠른 방법일 것입니다(NFS는 매우 빠르며 오버헤드가 거의 없습니다).

소스 서버에 추가 NIC를 한두 개 추가하고 함께 결합하여 더 나은 처리량을 제공할 수 있습니다.

구현은 매 시간/일/무엇이든 공유에서 맹목적으로 가져오는 각 대상 서버의 간단한 크론 작업일 수 있습니다. 새 파일을 폴링하도록 데몬을 설정할 수도 있습니다. 각 대상 상자에 SSH(키 쌍 포함)에 대한 제어 세션을 스크립트로 작성하고 스크립트를 실행할 때 파일을 가져오도록 지시할 수도 있습니다.

관련 정보