Transferir archivos grandes usando scp con consideraciones de CPU y memoria

Transferir archivos grandes usando scp con consideraciones de CPU y memoria

Quiero transferir un archivo arbitrariamente grande (digamos >20 GB) entre 2 servidores. Tengo varias consideraciones:

  • Debe usar el puerto 22 (ssh) debido a restricciones del firewall

  • No se pueden gravar la CPU (servidor de producción)

  • Eficiencia de la memoria

  • Preferiría una verificación de suma de verificación, pero eso se podría hacer manualmente

  • Tiempo esnode la esencia

Agradecería una respuesta para varios escenarios:

  1. El servidor A y el servidor B están en la misma red privada (compartiendo un conmutador) y la seguridad de los datos no es una preocupación

  2. El servidor A y el servidor B no están en la misma red y la transferencia se realizará a través de Internet público, por lo que la seguridad de los datosesuna preocupación

Mi primer pensamiento fue usarlindoen unascpcomando con un cifrado que no requiere uso intensivo de CPU (¿pez globo?). Pero pensé en consultar a la comunidad SU para obtener recomendaciones.

Respuesta1

scp debería funcionar bien. En un entorno de Internet, la velocidad general generalmente estará determinada más por la red que por el cifrado realizado por el programa scp. En la red privada, su plan de usar Blowfish para aliviar un poco la carga de la CPU es bueno. Personalmente, no usaría el comando nice a menos que la carga de su CPU de producción ya sea alta. La mayoría de los servidores están limitados por IO, no por CPU, pero usted conoce su sistema mejor que yo. Y definitivamente haga una suma de verificación md5 o sha256 en el resultado.

información relacionada