
Situación: Necesito transferir alrededor de 100 TB de un clúster Hadoop antiguo a un clúster Hadoop nuevo. Los dos clústeres tienen una conexión directa de 1 GbE desde el nodo de nombre de cada clúster. Los nodos de datos no están conectados.
Lo que he probado:
- Distcp: esto no funciona porque los nodos de datos antiguos y nuevos no están conectados, informaría que se agotó el tiempo de conexión en cada trabajo de reducción de mapas.
- hdfs dfs -cp: Esto está funcionando bastante bien hasta ahora, pero tiende a ralentizarse y eventualmente deja de transferirse después de unas horas. Tampoco admite compresión ni buena capacidad de reinicio.
Lo que me interesa:
- Dado que mi conexión entre el Clúster 1 y el Clúster 2 es el cuello de botella, estoy interesado en encontrar una herramienta que me permita comprimir los datos en el Clúster 1, enviarlos por cable con muy poca sobrecarga (¿netcat tal vez?) y descomprimirlos en el Clúster 2. Rsync sería perfecto, pero no estoy seguro de cómo usarlo entre dos clústeres de Hadoop.
- Otras recomendaciones que no conozco.
Mi pregunta:
- ¿Qué herramientas o scripts puedo usar para transferir datos entre el Grupo 1 y el Grupo 2 de manera eficiente dadas las limitaciones enumeradas?