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


9

가능한 한 빨리 동일한 LAN에있는 하나의 Linux 시스템에서 약 20 개의 다른 Linux 시스템으로 복사해야하는 몇 개의 큰 파일이 있습니다. 이 파일을 복사하는 데 가장 적합한 도구 / 방법은 일회성 복사본이 아니라는 점에 유의하십시오. 이 머신들은 절대 인터넷에 연결되지 않으며 보안은 문제가되지 않습니다.

최신 정보:

내가 묻는 이유는 (내가 이해하는 것처럼) 현재 scp파일을 각 컴퓨터에 복사하기 위해 직렬로 사용 하고 있으며 이것이 너무 느리고 더 빠른 대안이 필요하다는 정보를 받았습니다. 내가 들었던 것에 따르면, scp통화 를 병렬화하려고 하면 하드 드라이브 탐색으로 인해 통화 속도가 더 느려집니다.


"큰"을 정의하십시오. 수백 MB / GB / TB 이상?
— Janne Pikkarainen

현재 총 4 기가 바이트 (압축 된) 수준이지만 향후에는 증가 할 수 있습니다.
— Jonathan Callen

즉, 2011 년에도-큰 것은 아닙니다. 제대로 전환 된 (2011 년 표준) 1 기가비트 링크를 제공하면 달성하기가 매우 쉽습니다. 10g 서버에서 실행 (2011 년에도 드문 일이 아님) ... 음;)
— TomTom

답변:


27

비트 토런트. Twitter가 내부적으로 일부를 배포하는 방법입니다.

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


3
내 대답 외에도 (실제로 구현할 수 있다면 좋은 일을 할 것이라고 생각합니다) NFS에 대한 아래 답변은 매우 좋습니다. 좋은 NFS 서버는 파일을 캐시해야 디스크를 계속 사용할 수 있습니다. 또한, 그와 함께, 파일을 복사하지 마십시오 에서 서버 에 클라이언트. 클라이언트에서 시작하고 NFS 서버의 캐시가 도움이되도록합니다.
— mfinni

1
프로덕션 환경이 아닌 환경에서 시도해보십시오. 프레젠테이션에서 (iirc) 첫 번째 배포 중에 교환 된 패킷 수로 인해 일부 스위치에 많은 문제가 발생했습니다.
— Shadok

1
@psusi 왜 모든 데이터를 20 번 보내야한다고 말합니까? 다른 피어가 파일의 일부를 가지면 다른 피어 자신에게 필요한 부분을 보내기 시작할 수 있습니다.
— Jonathan Callen

2
OP의 문제는 LAN이 아니라 중앙 서버의 디스크입니다.
— mfinni

1
@ pSusi-멀티 캐스트는 분명히 또 다른 유효한 대답 일 것입니다. 내 대답에 대한 노크가 아니라 답변으로 게시하십시오.
— mfinni

12

방법에 대한 UFTP , 그것은 한 번에 여러 클라이언트에 UDP를 통해 파일을 제공하는 멀티 캐스트 사용합니다. 모두를위한 것은 아니며 나는 그것에 대해 전문가가 아니지만 그것은 당신이 원하는 것을하는 것처럼 들립니다.


1
면책 조항 : 멀티 캐스트를 지원하는 장비가 필요합니다.
— user606723

오히려 이것이 동일한 vlan에 있기를 바랐습니다.이 사용의 영향을 줄였습니다.
— Chopper3

@ user606723 : 모든 것이 현대적이지 않습니까? 어쩌면 일부 소비자 정크는 그렇지 않지만 잠시 동안 깨진 멀티 캐스트로 아무것도 실행하지 않았습니다. 요즘 너무 많이 사용합니다. Windows Active Directory도 멀티 캐스트를 사용한다고 생각합니다.
— Zan Lynx

나는 실제로 @ZanLynx에 대한 경험이 없다. 많은 사무실 / 컴퓨터 실험실이 마지막 홉에서 소비자 / 관리되지 않는 스위치를 사용한다는 것을 알고 있습니다. 이 스위치는 멀티 캐스트와 어떻게 동작합니까?
— user606723

3

이 데이터를 복사하려고 했습니까 rsync? 1Gbit LAN 이상인 경우 4 * 20GB 이상을 복사해도 문제가되지 않습니다.

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



2

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

추가 NIC를 소스 서버에 추가하고 함께 결합하여 처리량을 향상시킬 수 있습니다.

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


1
필자는 전임자가 NFS를 사용하려고 시도했으며 (현재) RAM 캐시가 전체 전송에 충분하지 않아 하드 드라이브의 부하가 네트워크 대신 제한 요소가되는 것을 발견했습니다. 속도.
— Jonathan Callen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.