setup - ¿Cómo sincronizar los archivos de configuración de Hadoop con varios nodos?
how to make cluster in hadoop (4)
Si no quiere usar Zookeeper, puede modificar su script de hadoop en $HADOOP_HOME/bin/hadoop
y agregar algo como:
if [ "$COMMAND" == "deployConf" ]; then
for HOST in `cat $HADOOP_HOME/conf/slaves`
do
scp $HADOOP_HOME/conf/mapred-site.xml $HOST:$HADOOP_HOME/conf
scp $HADOOP_HOME/conf/core-site.xml $HOST:$HADOOP_HOME/conf
scp $HADOOP_HOME/conf/hdfs-site.xml $HOST:$HADOOP_HOME/conf
done
exit 0
fi
Eso es lo que estoy usando ahora y hace el trabajo.
Me gustaría administrar un clúster de solo 3 máquinas Centos que ejecuten Hadoop. Entonces scp
es suficiente para copiar los archivos de configuración a las otras 2 máquinas.
Sin embargo, tengo que configurar un clúster de Hadoop en más de 10 máquinas. Es realmente frustrante sincronizar los archivos tantas veces usando scp
.
Quiero encontrar una herramienta que pueda sincronizar fácilmente los archivos en todas las máquinas. Y los nombres de las máquinas se definen en un archivo de configuración, como por ejemplo:
node1
node2
...
node10
Gracias.
Si usa InfoSphere BigInsights, entonces está el script syncconf.sh
Tienes varias opciones para hacer eso. Una forma es usar herramientas como rsync . Los scripts de control de Hadoop pueden distribuir archivos de configuración a todos los nodos del clúster mediante rsync. Alternativamente, puede hacer uso de herramientas como Cloudera Manager o Ambari si necesita una forma más sofisticada para lograrlo.
Usa Zookeeper con Hadoop.
ZooKeeper es un servicio centralizado para mantener la información de configuración, nombrar, proporcionar sincronización distribuida y proporcionar servicios grupales.
Referencia: http://wiki.apache.org/hadoop/ZooKeeper