nutch二次开发之hadoop和hbase开发环境搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/maligebazi/article/details/79948721

因为nutch存储需要hadoop和hbase,所以先把hadoop和hbase安装起来。
网上有许多通过Cygwin来搭建hadoop开发环境其实没有必要,在hadoop官方文档中已经说hadoop2.x版本的hadoop没有必要也不支持Cygwin。官方文档(Do not attempt to run the installation from within Cygwin. Cygwin is neither required nor supported.)这一点我差一点就入坑了,刚开始我不死心就翻文档,发现了这句话。

hadoop安装环境搭建

1、Starting a Single Node (pseudo-distributed) Cluster
1.1首先编辑hadoop-env.cmd ,把下列内容添加到文件末尾

set HADOOP_PREFIX=c:\deploy #hadoop安装根目录
set HADOOP_CONF_DIR=%HADOOP_PREFIX%\etc\hadoop
set YARN_CONF_DIR=%HADOOP_CONF_DIR%
set PATH=%PATH%;%HADOOP_PREFIX%\bin

1.2编辑core-site.xml

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/D:/hadoop2.5.2/tmp</value>
    </property>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

1.3编辑hdfs-site.xml

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <name>dfs.namenode.name.dir</name>
<value>file:/D:/hadoop2.5.2/tmp/namenode</value>
</property>
<property>
<name>dfs.datanode.name.dir</name>
<value>file:/D:/hadoop2.5.2/tmp/datanode</value>
</property>
</configuration>

1.4编辑slaves文件

查看文件中是否有localhost没有的话,添加localhost。

1.5编辑mapred-site.xml

    <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
   </property>
   <property>
       <name>mapred.job.tracker</name>
       <value>hdfs://localhost:9001</value>
    </property>

1.6编辑yarn-site.xml

<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

接下的启动hadoop和linux中一样,唯一有不同的地方,就是启动hadoop 后会弹出4个cmd窗口,这个窗口不能关闭,关闭会导致hadoop停止。

hbase安装

1.编辑hbase-env.cmd
添加set JAVA_HOME=D:\PROGRA~1\jdk #如果java安装路径在program file文件夹下,不能直接复制路径,要把program file替换成PROGRA~1,否则报错。
2.编辑hbase-site.xml

<property>
        <name>hbase.rootdir</name>
        <value>hdfs://localhost:9000/hbase</value>
    </property>
    <property>
        <name>hbase.cluster.distributed</name>
        <value>false</value>
    </property>
    <property>
        <name>hbase.master</name>
        <value>localhost:60000</value>
    </property>

如果启动hbase之后,
报log4j:Could not find value for key log4j.appender.DRFAS的错误
编辑log4j.properties,添加以下代码

log4j.appender.DRFAS=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DRFAS.File=${hbase.log.dir}/hbase.security.DRFAS.log
log4j.appender.DRFAS.layout=org.apache.log4j.PatternLayout  
log4j.appender.DRFAS.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n

上面同样在hadoop和hbase启动之后,都会弹出cmd窗口,这个窗口不能关闭,关闭之后,相应的服务程序就会关闭。这个地方我也不知道解决办法。希望知道的同学能在评论里告诉我!^_^

一段时间后…….
经过后来自己的测试并不能行得通,因为运行环境是window,而hadoop,hbase,nutch涉及到对文件的操作时linux和window的命令不同,导致报错!异常烦恼。例如hadoop 的 /bin/hdfs dfs -ls 查看hdfs文件查看不了。但是程序运行没有问题,我也不知道怎么解决这个问题。所以这种方案果断放弃。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页