Hadoop入坑记

按照官方给的伪分布式配置

etc/hadoop/core-site.xml:

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://localhost:9000</value>

</property>

</configuration>

进行配置会出问题

 

 

正确的配置如下:

Hadoop入坑记_.net

 

还有一个地方需要修改的就是/etc/hosts

Hadoop入坑记_无法启动_02

其他地方不需要进行修改

 

 

前面配置好hadoop后,在使用中发现一个问题。就是每次启动都需要格式化,不然namenode就无法启动。

在网上找到了相应的解决方法javascript:void(0)

内容如下:

  最近遇到了一个问题,执行start-all.sh的时候发现JPS一下namenode没有启动
        每次开机都得重新格式化一下namenode才可以
        其实问题就出在tmp文件,默认的tmp文件每次重新开机会被清空,与此同时namenode的格式化信息就会丢失
        于是我们得重新配置一个tmp文件目录
        首先在home目录下建立一个hadoop_tmp目录
                sudo mkdir ~/hadoop_tmp
        然后修改hadoop/conf目录里面的core-site.xml文件,加入以下节点:
                <property>
                        <name>hadoop.tmp.dir</name>
                <value>/home/chjzh/hadoop_tmp</value>
                        <description>A base for other temporary directories.</description>
                </property>
        注意:我的用户是chjzh所以目录是/home/chjzh/hadoop_tmp
                
        OK了,重新格式化Namenode
                hadoop namenode -format
        然后启动hadoop
                start-all.sh
        执行下JPS命令就可以看到NameNode了

我依照上面的方法操作后,发现还是无法启动。

最后才明白,是新建的目录没有修改权限,图点简单,就直接给了777权限,然后就都好了。

室友推荐了一篇更加详细的配置hadoop 的文章,图文并茂。javascript:void(0)