Como transferir ficheiros dunha nube a outra sen pasar polo seu PC
A morte, o divorcio e a mudanza son tres das situacións máis estresantes da vida de calquera persoa.
"American Horror Story".
- Andryukh, voume da casa, axúdame a moverme, todo non encaixará comigo :(
- Vale, cantos hai?
- Toneladas* 7-8...
*Ton (jarg) - Terabyte.
Recentemente, mentres navegaba por Internet, notei que a pesar da dispoñibilidade en Habré e recursos similares de moitos materiais sobre métodos e modelos para migrar varios tipos de datos, aínda aparecen preguntas sobre este tema en Internet. Que, por algún motivo, non sempre reciben respostas detalladas. Este feito levoume a recoller un día notas sobre a implementación dunha solución similar e organizalas en forma de publicación separada.
En xeral, teño que transferir datos dun dispositivo, sistema e servizo a outro cunha frecuencia molesta. O que, por proba e erro, permitiu non só familiarizarme con moitos produtos interesantes, senón tamén atopar un equilibrio entre a funcionalidade e o custo da solución da que quero falar.
Deseño
Como resultado do traballo de deseño e enquisa, a calidade e a eficiencia do proceso de migración depende non só das características técnicas dos "sitios" onde se atopan ou estarán os datos, senón tamén da súa localización física.
O xestor de migración é un nodo informático no que funciona a "lóxica" do proceso -software para xestionar a migración-.
É dicir, hai dous modelos para colocar un "xestor de migración"
Modelo A. Se polo menos un dos sitios só se pode acceder desde a rede local, paga a pena colocar un "xestor de migración" na mesma rede. Porque o rendemento e o tempo de migración aínda están limitados pola velocidade e o tempo de actividade da canle que conecta os sitios.
Modelo B. Se tanto a fonte como o receptor dos datos teñen acceso fóra da rede local, entón o "xestor de migración" debería estar situado onde a velocidade e o tempo de actividade da canle entre eles serán, obviamente, mellores.
Para descompoñer dalgunha maneira o anterior, propoño volver ás tarefas a partir da pregunta principal do artigo e formalizalas en especificacións técnicas.
Primeiro, teño que averiguar se o software que estou usando admite as nubes: Mail.ru, Yandex, Google Drive, Mega, Nextloud?
Rclone - rsync para almacenamento na nube. Software de código aberto deseñado para sincronizar ficheiros e cartafoles con máis de 45 tipos e tipos de almacenamento.
Aquí tes só algúns deles:
- Sistema de almacenamento de obxectos (OSS) Alibaba Cloud (Aliyun)
- Amazon S3
- Ceph
- Espazos Digital Ocean
- Dropbox
- Google Cloud Storage
- Google Drive
- Google Fotos
- HTTP
-IBM COS S3
— Mail.ru Cloud
- Mega
- Microsoft Azure Blob Storage
- Microsoft OneDrive
- Minio
- Nextcloud
- Openstack Swift
- Oracle Cloud Storage
- ownCloud
— Arquivos Rackspace Cloud
- rsync.net
- SFTP
- WebDAV
- Disco Yandex
Funcionalidade principal:
— Comprobar a integridade dos ficheiros mediante hash MD5/SHA1.
— Gardar marcas de tempo para crear/cambiar ficheiros.
- Soporta sincronización parcial.
— Copiando só ficheiros novos.
— Sincronización (unidireccional).
— Comprobación de ficheiros (por hash).
— Capacidade de sincronizar dunha conta na nube a outra.
- Soporte de cifrado.
- Soporte para almacenamento en caché de ficheiros locais.
— Capacidade de montar servizos na nube mediante FUSE.
Engaderei pola miña conta que Rclone tamén me axuda a resolver a maior parte dos problemas relacionados coa automatización da copia de seguridade de datos en proxecto "Väinämöinen".
A seguinte tarefa é seleccionar un modelo de colocación de "xestor de migración".
Todas as fontes de datos, que son varios servizos públicos na nube, son accesibles a través de Internet. Incluso a través da API. Dous de cada tres receptores fan o mesmo. Non está claro onde se implanta o propio Nextcloud e que acceso está dispoñible para el?
Contei cinco opcións posibles:
No teu propio servidor na túa rede doméstica/corporativa.
No teu propio servidor nun rack alugado do centro de datos do provedor de servizos.
Nun servidor alugado a un provedor de servizos.
Nun servidor virtual (VDS/VPS) cun provedor de servizos/hosting
Tendo en conta que Nextcloud segue sendo un software para crear e utilizar almacenamento na nube, podemos dicir con seguridade que o acceso a el a través de Internet está dispoñible nas cinco opcións. E neste caso, o modelo óptimo para colocar un "xestor de migración" será - modelo B.
Segundo o modelo escollido como plataforma para o "xestor de migración", escollerei unha das opcións óptimas, desde o meu punto de vista: un servidor virtual en Centro de datos M9 O maior punto de intercambio de tráfico de Internet de Rusia MSK-IX.
A terceira decisión que hai que tomar é decidir sobre a configuración do servidor virtual.
Ao escoller os parámetros de configuración de VDS, debe guiarse polo rendemento necesario, que depende do ancho das canles entre sitios, do número e tamaño dos ficheiros que se moven, do número de fluxos de migración e da configuración. En canto ao SO, Rclone é un software multiplataforma que se executa en varios sistemas operativos, incluíndo Windows e Linux.
Se planea iniciar varios procesos de migración, e mesmo cunha determinada frecuencia, paga a pena considerar a opción de alugar un VDS con pago por recursos.
creación
Con base no anterior, ao crear o prototipo para este artigo, escollín VDS na seguinte configuración.
custa 560 rublos/mes. incluíndo 15% de desconto usando cupón NOSTRESS.
Esta elección débese ao feito de que un nodo baixo o sistema operativo Windows, para cumprir coas condicións das nosas especificacións técnicas, é máis fácil de configurar que para outros sistemas operativos dispoñibles para o pedido.
Offtopic: Por certo, para maior seguridade, este servidor virtual está asignado a un dos nodos rede virtual segura. e só se permite o acceso a el a través de RDP desde alí...
Despois de crear un VDS e acceder ao escritorio a través de RDP, o primeiro que cómpre facer é preparar o ambiente para Rclone e Web-GUI. Eses. instalar un novo navegador predeterminado, por exemplo Chrome, xa que o IE 11 instalado inicialmente, desafortunadamente, non sempre funciona correctamente co software utilizado.
Despois de preparar o ambiente, descargue o arquivo co paquete de software Rclone para Windows e desembalalo.
A continuación, no modo de liña de comandos de Windows, execute o comando para ir ao cartafol cos ficheiros extraídos. Para min está situado no cartafol de inicio do administrador:
C:UsersAdministrator>cd rclone
Despois da transición, executamos o comando para iniciar Rclone desde a Web-GUI:
onde "iniciar sesión" e "contrasinal" son o inicio de sesión e o contrasinal que especificaches, por suposto, sen comiñas.
Despois da execución do comando, o terminal móstrase
2020/05/17 22:34:10 NOTICE: Web GUI exists. Update skipped.
2020/05/17 22:34:10 NOTICE: Serving Web GUI
2020/05/17 22:34:10 NOTICE: Serving remote control on http://127.0.0.1:5572/
e a interface gráfica web Rclone ábrese automaticamente no navegador.
A pesar de que a Web-GUI aínda está na fase de versión de proba e aínda non ten todas as capacidades de xestión de Rclone que ten a interface de liña de comandos, as súas capacidades son bastante suficientes para a migración de datos. E aínda un pouco máis.
axuste
O seguinte paso é establecer conexións cos sitios onde se atopan ou estarán os datos. E o primeiro da fila será o receptor de datos principal: Nextcloud.
1. Para iso, vai á sección Configuracións Web-GUI.
2. Iniciando a creación dunha nova configuración - botón Nova configuración.
3. Establece o nome do sitio - campo Nome desta unidade (para referencia): Nextcloud.
4. Selección do tipo ou tipo de almacenamento seleccionar: Para Nextcloud e Owncloud, a interface principal de intercambio de datos é WebDAV.
5. A continuación, fai clic en Paso 2: Configuración unidade, abra a lista de parámetros de conexión e complete.
- 5.1. URL do host http para conectarse ao URL — ligazón de hipertexto da interface WebDAV. En Nextcloud atópanse na configuración - esquina inferior esquerda da interface.
- 5.2. Nome do sitio/servizo/software de Webdav que está a usar — Nome da interface WebDAV. O campo é opcional, para ti, para non confundir se hai moitas conexións deste tipo.
- 5.3 Nome de usuario - Nome de usuario para a autorización
- 5.4. contrasinal - Contrasinal para a autorización
- 5.5. Token de portador en lugar de usuario/pase (por exemplo, un Macaroon) e comando para executar para obter un token de portador nas opcións avanzadas hai parámetros adicionais e comandos de autorización. Non se usan no meu Nextcloud.
6. A continuación fai clic Crear config e para asegurarse de que se crea a configuración, vai á sección Config interface web... A través da mesma páxina pódese eliminar ou editar a configuración recentemente creada.
Para comprobar a funcionalidade da conexión ao sitio, vai á sección explorador... En campo Control remoto introduza o nome do sitio configurado e prema aberto. Se ves unha lista de ficheiros e directorios, a conexión ao sitio está funcionando.
Para ser máis convincente, pode crear/eliminar un cartafol ou descargar/eliminar un ficheiro a través da interface web.
A segunda plataforma que se conectará será o disco Yandex.
Os catro primeiros pasos son similares ao proceso de conexión Nextcloud.
A continuación, deixamos todo como está, é dicir, os campos dentro Paso 2: configurar a unidade Deixámolos baleiros e non cambiamos nada nas opcións avanzadas.
Prememos Crear configuración.
A páxina de autorización de Yandex ábrese no navegador, despois de que recibe unha mensaxe sobre a conexión exitosa e unha oferta para volver a Rclone.
O que facemos é revisar a sección Config.
A migración
Cando temos dous sitios conectados, xa podemos migrar os datos entre eles. O proceso en si é similar a comprobar a funcionalidade da conexión a Nextcloud, que levamos a cabo anteriormente.
Ir a explorador.
Elixir un modelo 2 lado a lado.
En cada un de Control remoto indica o nome do teu sitio.
Prememos aberto.
Vemos un directorio de ficheiros e cartafoles para cada un deles.
Para iniciar o proceso de migración, só queda seleccionar o cartafol desexado con ficheiros no directorio de orixe de datos e arrastralo co rato ata o directorio de destino.
O mecanismo para engadir os sitios restantes e migrar datos entre eles é semellante ás operacións realizadas anteriormente. Se atopas erros durante o teu traballo, podes estudar detalles sobre eles no terminal onde se está a executar Rclone con Web-GUI.
En xeral, a documentación para clonar é extenso e dispoñible no sitio web e en Internet, e non debe causar ningunha dificultade de uso. Con isto, considero completa a primeira publicación sobre como transferir ficheiros dunha nube a outra, evitando o teu PC.
PS Se non estás de acordo coa última afirmación, escribe nos comentarios: que "tema non se trata" e en que sentido paga a pena continuar.