HDFS-HA的配置—–手动Failover方式

Linux大全评论1.6K views阅读模式

1、配置log的路径(可选)
etc/Hadoop/hadoop-env.sh
export HADOOP_LOG_DIR=/home/ziang/DfsDataDir/hdpcdh4/logs
export JAVA_HOME=/home/ziang/software/jdk1.7.0_05
log=$HADOOP_LOG_DIR/hadoop-$HADOOP_IDENT_STRING-$command.out

2、配置log文件的名字,使其没有hostname字符串。(可选)
sbin/hadoop-daemon.sh
export HADOOP_LOGFILE=hadoop-$HADOOP_IDENT_STRING-$command.log

3、配置etc/hadoop/core-site.xml
<property>
             <name>fs.defaUltFS</name>
             <value>hdfs://hdpcdh4</value>
</property>

4、配置etc/hadoop/hdfs-site.xml

<description>必须与core-site.xml中的配置一致</description>         <name>dfs.nameservices</name>
        <value>hdpcdh4</value>
    </property>
    <property>
        <description>多个NN</description>
        <name>dfs.ha.namenodes.hdpcdh4</name>
        <value>nn1,nn2</value>
    </property>
    <property>
        <description>第一个NN的rpc端口配置</description>
        <name>dfs.namenode.rpc-address.hdpcdh4.nn1</name>
        <value>dw13:31313</value>
    </property>
    <property>
        <description>第一个NN的http端口配置</description>
        <name>dfs.namenode.http-address.hdpcdh4.nn1</name>
        <value>dw13:31314</value>
    </property>
    <property>
        <description>第二个NN的rpc端口配置</description>
        <name>dfs.namenode.rpc-address.hdpcdh4.nn2</name>
        <value>dw23:31313</value>
    </property>
    <property>
        <description>第二个NN的http端口配置</description>
        <name>dfs.namenode.http-address.hdpcdh4.nn2</name>
        <value>dw23:31314</value>
    </property>
    <property>
        <description>第一个NN和第二个NN共享的Edit目录</description>
        <name>dfs.namenode.shared.edits.dir</name>
        <value>file:///home/ziang/NameNodeEdit</value>
    </property>
    <property>
        <description>client的failover代理配置</description>
        <name>dfs.client.failover.proxy.provider.hdpcdh4</name>
        <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>
    <property>
        <description>各个NN独占的Name目录</description>
        <name>dfs.name.dir</name>
        <value>file:///home/ziang/DfsDataDir/hdpcdh4/namenode</value>
    </property>
    <property>
        <description>各个DN的数据存放目录</description>
        <name>dfs.data.dir</name>
        <value>file:///home/ziang/DfsDataDir/hdpcdh4/datanode</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.handler.count</name>
        <value>5</value>
    </property>
     <property>
         <namedfs.ha.fencing.methods</name >           <valuesshfence(ziang)</ value>      </property>      <property>                <namedfs.ha.fencing.ssh.connect-timeout</name >                <value3</ value>         </property>         <property>                <namedfs.ha.fencing.ssh.private-key-files </name>                <valued:/home/ziangssh/id_rsa</value >         </property>

5、格式化及同步两个NN的namespace文件
     1、在其中一个NN上执行格式化
          sh bin/hdfs namenode -format
     2、将格式化数据同步到另一个NN
scp  ~/DfsDataDir/hdpcdh4/namenode/current/* dw23:~/DfsDataDir/hdpcdh4/namenode/current/

6、启动Hdfs
     sh sbin/start-dfs.sh
     此时两个NN都是处于stanby状态,无法提供服务,可以通过DFSHAAdmin来将其中转化为active。

企鹅博客
  • 本文由 发表于 2019年8月20日 04:11:44
  • 转载请务必保留本文链接:https://www.qieseo.com/154933.html

发表评论