大数据学习4——伪分布式hadoop的配置和启动

一、伪分布式Hadoop的配置

        Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xmlhdfs-site.xml 。如果需要从伪分布式模式切换回非分布式模式,需要删除 core-site.xml 中的配置项。

        1.修改core-site.xml文件     

    
        
            hadoop.tmp.dir
            file:/usr/local/hadoop/tmp
            Abase for other temporary directories.
        
        
            fs.defaultFS
            hdfs://localhost:9000
        
          

 

         2.修改hdfs-site.xml文件

    
        
            dfs.replication
            1
        
        
            dfs.namenode.name.dir
            file:/usr/local/hadoop/tmp/dfs/name
        
        
            dfs.datanode.data.dir
            file:/usr/local/hadoop/tmp/dfs/data
        
    

 

二、伪分布式Hadoop的启动

         

         1.配置完成后,执行NameNode的格式化

 

    cd  /usr/local/hadoop
    ./bin/hdfs namenode -format #如果初始化成功,会看到“successfully formatted”和“Exitting with status 0”的提示,若为“Exitting with status 1”则是出错。

 

         2.开启 NameNode 和 DataNode 守护进程

 

    ./sbin/start-dfs.sh

 

         启动完成后,可以通过命令jps来判断是否成功启动,若成功启动,则会列出如下进程“NameNode”、“DataNode”和“SecondaryNameNode” ,如果没有NameNode或DataNode,那就是配置不成功,可以通过查看启动日志排查原因。

 

 

三、常见的问题及解决办法
 

         1.DataNode没有启动     

    ./sbin/stop-dfs.sh   #关闭
    rm -r ./tmp     #删除tmp文件,注意这会删除HDFS中原有的数据,如果原有数据很重要,不要这样做
    ./bin/hdfs namenode -format   #重新格式化NameNode
    ./sbin/start-dfs.sh  #重启

 

         2. 删除tmp文件时,显示权限不足

         将hadoop文件夹的权限授予hadoop用户。

 

    sudo chown -R hadoop  /usr/local/hadoop # 用户名为hadoop,我的hadoop所在的文件夹为/usr/local/hadoop

 

         3.SecondaryNameNode没有启动      

 

    sbin/stop-dfs.sh #关闭进程,然后尝试重新启动

 

 

        如果还不成功,查看第二名称节点日志文件hadoop-hadoop-secondarynamenode-pl-Lenovo-S40-70.log(将红色部分替换成你的主机名) 

        一般会出现端口占用的情况,需要找到被占用的端口ID,并将其杀死,然后再重启。

 

    sudo lsof -i:端口 -P
    sudo kill -9 PID

 

 

 

       
 

 

 

 

你可能感兴趣的:(大数据原理与应用)