hadoop搭建

伪分布式建立(已经正确实施过)

配置export JAVA_HOME

配置export HADOOP_HOME/bin……sbin

修改hadoop-env.sh的JAVA_HOME,改成绝对路径

修改mapred-env.sh的JAVA_HOME,改成绝对路径

修改yarn-env.sh的JAVA_HOME,改成绝对路径

修改core-site.xml:

添加

<property>

<name>fs.defaultFS</name> 

          <value>hdfs://node02:9000</value>

</property>

      <property>

<name>hadoop.tmp.dir</name> 

          <value>/var/huiandong/local</value>

      </property>

修改hdfs-site.xml

添加

<property> 

     <name>dfs.replication</name> 

     <value>1</value> 

    </property>

<property> 

     <name>dfs.namenode.secondary.http-address</name> 

     <value>node02:50090</value> 

    </property>

修改slaves

      添加node01

hdfs namenode -format格式化

伪分布式到这里就配置完成了

Node02

 

完全分布式搭建:(已正确实施过

node02作为主,node03作为secondarynamenode

配置export JAVA_HOME

配置export HADOOP_HOME/bin……sbin

修改hadoop-env.sh的JAVA_HOME,改成绝对路径

修改mapred-env.sh的JAVA_HOME,改成绝对路径

修改yarn-env.sh的JAVA_HOME,改成绝对路径

修改core-site.xml:

添加

<property>

<name>fs.defaultFS</name> 

          <value>hdfs://node02:9000</value>

</property>

      <property>

<name>hadoop.tmp.dir</name> 

          <value>/var/huiandong/full</value>

      </property>

修改hdfs-site.xml

添加

<property> 

     <name>dfs.replication</name> 

     <value>2</value> 

    </property>

<property> 

     <name>dfs.namenode.secondary.http-address</name> 

     <value>node03:50090</value> 

    </property>

修改slaves,

      添加datanode节点

           node02

node03

           node04

hdfs namenode -format格式化

启动 start-dfs.sh

成功完成完全分布式搭建。

登录 node02:50070进入webui界面

 

HA模式搭建,使用zookeeper(已正确实施)

配置export JAVA_HOME

配置export HADOOP_HOME/bin……sbin

配置export ZOO_HOME/bin

修改hadoop-env.sh的JAVA_HOME,改成绝对路径

修改mapred-env.sh的JAVA_HOME,改成绝对路径

修改yarn-env.sh的JAVA_HOME,改成绝对路径

安装zookeeper

修改zoo.cfg

      添加

           Server.1=node02:2888:3888

Server.2=node02:2888:3888

Server.3=node02:2888:3888

修改dataDir目录

      添加myid文件,echo 编号>myid

启动zookeeper,使用zkServer.sh status命令查看leader和folower

 

 

 

 

 

core-site.xml

<property> 

        <name>fs.defaultFS</name> 

        <value>hdfs://mycluster</value> 

</property>

<property>

<name>hadoop.tmp.dir</name> 

          <value>/var/huiandong/ha</value>

      </property>

<property>

<name>ha.zookeeper.quorum</name> 

          <value>node02:2181,node03:2181,node04:2181</value>

      </property>   

  

   

 

 

hdfs-site.xml

<property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>

<property>
  <name>dfs.nameservices</name>
  <value>mycluster</value>
</property>
<property>
  <name>dfs.ha.namenodes.mycluster</name>
  <value>nn1,nn2</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn1</name>
  <value>node02:8020</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn2</name>
  <value>node03:8020</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn1</name>
  <value>node02:50070</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn2</name>
  <value>node03:50070</value>
</property>
<property>
  <name>dfs.namenode.shared.edits.dir</name>
  <value>qjournal://node02:8485;node03:8485;node04:8485/mycluster</value>
</property>

<property>
  <name>dfs.journalnode.edits.dir</name>
  <value>/var/sxt/hadoop/ha/jn</value>
</property>


<property>
  <name>dfs.client.failover.proxy.provider.mycluster</name>
  <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
  <name>dfs.ha.fencing.methods</name>
  <value>sshfence</value>
</property>
<property>
  <name>dfs.ha.fencing.ssh.private-key-files</name>
  <value>/root/.ssh/id_rsa</value>
</property>


<property>
        <name>dfs.namenode.name.dir</name>
        <value>file://${hadoop.tmp.dir}/dfs/name</value>
    </property>
<property>
        <name>dfs.datanode.data.dir</name>
        <value>file://${hadoop.tmp.dir}/dfs/data</value>
    </property>


 <property>
<name>dfs.ha.automatic-failover.enabled</name>
   <value>true</value>
 </property>

将修改后的配置文件分发到其他节点

启动journalnode,启动之后直接在主节点使用命令hdfs namenode -format格式化namenode.格式化成功之后,启动Namenode.然后使用hdfs namenode -bootstrapStandby命令同步standby节点。成功之后使用hdfs zkfc -formatZK命令格式化zkfc.最后使用star-dfs.sh启动集群

posted @ 2018-08-08 10:26  uuhh  阅读(153)  评论(0编辑  收藏  举报