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

因为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.dirname>
        <value>file:/D:/hadoop2.5.2/tmpvalue>
    property>
    <property>
        <name>fs.default.namename>
        <value>hdfs://localhost:9000value>
    property>
configuration>

1.3编辑hdfs-site.xml

<configuration>
  <property>
    <name>dfs.replicationname>
    <value>1value>
  property>
  <name>dfs.namenode.name.dirname>
<value>file:/D:/hadoop2.5.2/tmp/namenodevalue>
property>
<property>
<name>dfs.datanode.name.dirname>
<value>file:/D:/hadoop2.5.2/tmp/datanodevalue>
property>
configuration>

1.4编辑slaves文件

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

1.5编辑mapred-site.xml

    <property>
     <name>mapreduce.framework.namename>
     <value>yarnvalue>
   property>
   <property>
       <name>mapred.job.trackername>
       <value>hdfs://localhost:9001value>
    property>

1.6编辑yarn-site.xml

<property>
    <name>yarn.nodemanager.aux-servicesname>
    <value>mapreduce_shufflevalue>
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.rootdirname>
        <value>hdfs://localhost:9000/hbasevalue>
    property>
    <property>
        <name>hbase.cluster.distributedname>
        <value>falsevalue>
    property>
    <property>
        <name>hbase.mastername>
        <value>localhost:60000value>
    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文件查看不了。但是程序运行没有问题,我也不知道怎么解决这个问题。所以这种方案果断放弃。

你可能感兴趣的:(nutch,爬虫,hadoop,hbase)