매일 밤 파일을 백업 할 CentOS 5.7 서버가 있습니다. 백업이 네트워크를 통해 전송되는 동안 서버가 호스팅하는 다양한 사이트를 방문하는 사람은 성능이 저하 될 것으로 우려됩니다.
프로세스의 최대 허용 처리량을 네트워크 인터페이스로 제한 할 수 있습니까? SSH 기반 파일 전송을 사용 가능한 대역폭의 절반으로 제한하고 싶습니다. 서버 또는 클라이언트쪽에있을 수 있습니다. 즉, 연결을 시작하는 클라이언트 또는 연결을 수신하는 서버 에서이 작업을 수행하게되어 기쁩니다.
(불행히도 백업 전용 인터페이스를 추가 할 수 없습니다. 사용 가능한 처리량을 늘릴 수는 있지만 네트워크 전송이 더 빨리 완료되지만 연결하는 동안 연결의 총 용량을 최대로 늘릴 수 있습니다.)
일부 배경
아마도 어떤 배경이 순서대로있을 것입니다. 물러서서 백업 자체를 생성하기에 충분한 로컬 공간이 부족하다는 문제가있었습니다. SSHFS를 입력하십시오! 백업은 웹 서버 자체에 백업 비트가 전혀 없도록 로컬 드라이브에 저장됩니다.
왜 중요한가요? 그것은 유서 깊은 사용을 무효화하는 것처럼 보이기 때문입니다 rsync --bwlimit
. rsync
실제로 전송을하고도되지 수 있습니다 심지어 백업 파일을 저장할 공간을 절약 할 수 없기 때문에 그것을.
"잠깐, 왜 백업 파일을 만들어야합니까? rsync
소스 파일과 폴더 만이 아닌 이유는 무엇 입니까?" "Plesk"라는 성가신 것이 혼합되어 있기 때문에! 이것은 편의상 Plesk를 사용하는 클라이언트 쪽 웹 호스트입니다. 따라서 Plesk는 백업에 모든 종류의 추가 마법을 추가하여 복원 절차 중에 백업을 사용하는 것이 매우 안전하기 때문에 Plesk를 사용하여 백업을 시작합니다.
슬픈 얼굴
ionice
은 프로세스가 작성할 수있는 쓰기를 조절하는 데 사용 하는 것입니다. SSHFS 파일 시스템에 작성 중이므로 백업 프로세스 클래스를 3으로 삭제하여 작성하려는 다른 프로세스에 완전히 영향을 줄 수 있습니다. 이렇게하면 백업 호그 대역폭으로 인해 사이트 방문자의 경험을 결코 저하시키지 않는 효과를 얻을 수 있습니다.