-Hadoop HA HA-HDFS distribuyó set clúster y utilizar el aprendizaje de datos grandes (3)

cúmulo NameNode HDFS para asegurar una alta disponibilidad, con el fin de permitir la elección NameNode más seguro aquí con racimos ZOOKEEPER para asegurar

Medioambiental y listo

Ibid artículos Edición

Crear un clúster empleado del zoológico

  1. Descargar y descomprimir el cuidador del zoológico
  2. Crear una carpeta de datos en el directorio raíz empleado del zoológico
  3. Modificar la configuración en la carpeta conf
    3.1 Modificar zoo_sample.cfg llamado zoo.cfg
    3,2 edición zoo.cfg
       dataDir=/opt/install/zookeeper-3.4.5/data

       server.0=hadoop1.msk.com:2888:3888
       server.1=hadoop2.msk.com:2888:3888
       server.2=hadoop3.msk.com:2888:3888
  1. MyID crear archivos en el cuidador del zoológico / datos
第一台节点myid里面填0  第二台  1  以此类推(三台机器分别为 0,1,2)
  1. Con cada registro de densidad nodo primario ssh libre tres máquinas (incluyendo el nodo maestro en sí)
    ZooKeeper iniciar y órdenes de parada
bin/zkServer.sh start | stop | restart | status

los comandos del cliente zookeeper

  • Nota: El nodo maestro dirige el cuidador del zoológico
 bin/zkCli.sh

HA-HDFS distribuye instalación de clúster

  • Si está utilizando el cluster ordinaria anterior, se recomienda vaciar los datos / tmp, si el nuevo entorno puede hacer referencia al artículo anterior para construir una versión basada en la fundación del entorno de clúster
  1. Modificar el archivo de configuración
    de núcleo-site.xml
<!--  这里的ns随意  只是入口  -->
       <property>		
			<name>fs.defaultFS</name>
			<value>hdfs://ns</value>
	   </property>
	   <property>
			<name>hadoop.tmp.dir</name>
			<value>/opt/install/hadoop-2.5.2/data/tmp</value>
	   </property>
	   <property>
		    <name>ha.zookeeper.quorum</name>
            <value>hadoop1.msk.com:2181,hadoop2.msk.com:2181,hadoop3.msk.com:2181</value>
	   </property>

** hdfs-site.xml **

<property>
		  <name>dfs.permissions.enabled</name>
		  <value>false</value>
	  </property>
		
	  <!--指定hdfs的nameservice为ns,需要和core-site.xml中的保持一致 -->
	  <property>
		  <name>dfs.nameservices</name>
		  <value>ns</value>
	  </property>
	  <!-- ns下面有两个NameNode,分别是nn1,nn2 -->
	  <property>
		  <name>dfs.ha.namenodes.ns</name>
		  <value>nn1,nn2</value>
	  </property>
  <!-- nn1的RPC通信地址 -->
	  <property>
		  <name>dfs.namenode.rpc-address.ns.nn1</name>
		  <value>hadoop1.msk.com:8020</value>
	  </property>
	  <!-- nn1的http通信地址 -->
	  <property>
		  <name>dfs.namenode.http-address.ns.nn1</name>
		  <value>hadoop1.msk.com:50070</value>
	  </property>
  <!-- nn2的RPC通信地址 -->
	  <property>
		  <name>dfs.namenode.rpc-address.ns.nn2</name>
		  <value>hadoop2.msk.com:8020</value>
	  </property>
	  <!-- nn2的http通信地址 -->
	  <property>
		  <name>dfs.namenode.http-address.ns.nn2</name>
		  <value>hadoop2.msk.com:50070</value>
	  </property>

	<!-- 指定NameNode的元数据在JournalNode上的存放位置 -->
	<property>
		<name>dfs.namenode.shared.edits.dir</name>
		<value>qjournal://hadoop1.msk.com:8485;hadoop2.msk.com:8485;hadoop3.msk.com:8485/ns</value>
	</property>
<!-- 指定JournalNode在本地磁盘存放数据的位置 -->
	<property>
		<name>dfs.journalnode.edits.dir</name>
		<value>/opt/install/hadoop-2.5.2/journal</value>
	</property>
	<!-- 开启NameNode故障时自动切换 -->
	<property>
		<name>dfs.ha.automatic-failover.enabled</name>
		<value>true</value>
	</property>
    <!-- 配置失败自动切换实现方式 -->
	<property>
		<name>dfs.client.failover.proxy.provider.ns</name>
		<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
	</property>
	<!-- 配置隔离机制,如果ssh是默认22端口,value直接写sshfence即可 -->
	<property>
		<name>dfs.ha.fencing.methods</name>
		<value>sshfence</value>
	</property>
	<!-- 使用隔离机制时需要ssh免登陆 -->
	<property>
		<name>dfs.ha.fencing.ssh.private-key-files</name>
		<value>/root/.ssh/id_rsa</value>
	</property>

yarn-env.sh

export JAVA_HOME=/usr/java/jdk1.7.0_71
  1. En primer lugar empezar cúmulo empleado del zoológico (tres se ejecute para comenzar cuidador del zoológico Directiva de Servicios)
  2. En el nodo maestro NameNode formateado zkfc
    bin/hdfs zkfc -formatZK
  1. Journalnode comenzar con el siguiente comando en cada nodo journalnode
    sbin/hadoop-daemon.sh start journalnode
  1. En el directorio NameNode journalnode nodo maestro y NameNode formatear
     bin/hdfs namenode -format ns
  1. proceso NameNode inició en el NameNode nodo maestro
     sbin/hadoop-daemon.sh start namenode
  1. Preparación NameNode ejecutado primer nodo de comando, este es el formato de los nodos de directorio y el modo de espera NameNode metadatos sobre NameNode del nodo maestro de copia, y este comando no se re-formateado journalnode directorio! Y luego iniciar el proceso de copia de seguridad con un segundo comando NameNode
     bin/hdfs namenode -bootstrapStandby
     sbin/hadoop-daemon.sh start namenode
  1. En dos nodos NameNode ejecutar el siguiente comando
     sbin/hadoop-daemon.sh start zkfc
  1. Comience DataNode DataNode en todos los nodos de ejecutar el siguiente comando
    sbin/hadoop-daemon.sh start datanode
  1. comandos de inicio y parada diaria
    sbin/start-dfs.sh
    sbin/stop-dfs.sh
Se han publicado 19 artículos originales · ganado elogios 8 · vistas 4552

Supongo que te gusta

Origin blog.csdn.net/M283592338/article/details/90950966
Recomendado
Clasificación