La copia dei file da un'area all'altra utilizzando RSYNC o FPSYNC è lenta

L'uso di rsync o fpsync per copiare i dati da un file system di un'area a un file system di un'altra area comporta un avanzamento lento.

Causa: il traffico NFS da un'area all'altra è generalmente costoso. Le copie dei file tra due server NFS, ognuna in un'area diversa, possono richiedere del tempo.

Soluzione: anziché utilizzare rsync o fpsync per copiare i dati tra i file system attivati in aree diverse, utilizzare fpsync e lo streaming da istanza a istanza.

Lo strumento fpsync è un wrapper parallelo di rsync. Per installare fpsync, abilitare il repository per sviluppatori Oracle Linux, che include la utility fpsync, in un'istanza OCI utilizzando un comando come il seguente:

yum --enablerepo ol7_developer_EPEL install -y fpart
yum --enablerepo ol8_developer_EPEL install -y fpart
Nota

Il comando è diverso in base alla versione di Oracle Linux in uso.

Un comando standard come questo copia i dati:

fpsync /<fss_src_region>/test /<fss_dest_region>/

Dopo aver installato lo strumento, utilizzare lo streaming da istanza a istanza e un comando come questo:

fpsync -o "-e ssh --progress" /<fss_src_region>/test <ssh_user>@<remote_ip>:/<fss_dest_region>/

Per ulteriori informazioni e opzioni, vedere la man page fpsync.

Confronto prestazioni

Di seguito è riportato un esempio che mostra la differenza di prestazioni tra i due approcci.

# date; time fpsync -o "-e ssh --progress --log-file ~/speedtest.log" /fss_src_bom/test root@DR_hyd:/fss_dest_hyd/ ; date
Sun Mar 13 15:22:58 GMT 2022

real 0m1.467s
user 0m0.111s
sys 0m0.075s
Sun Mar 13 15:23:00 GMT 2022

# ls -ltrd test
drwxr-xr-x. 2 root root 1 Mar 13 15:22 test
# du -sh test
1001M test
# cp -r test test1

# date; time fpsync -o "--progress --log-file ~/speedtest1.log" /fss_src_bom/test1 /fss_dest_hyd/ ; date
Sun Mar 13 15:25:16 GMT 2022

real 1m28.847s
user 0m3.688s
sys 0m1.439s
Sun Mar 13 15:26:44 GMT 202