首页 > 技术文章 > Linux中伪分布的搭建

hidamowang 2018-10-10 22:01 原文

一伪分布模式
            特点:在单机上,模拟一个分布式的环境,具备Hadoop的所有功能
                    HDFS:NameNode + DataNode + SecondaryNameNode
                    Yarn:ResourceManager + NodeManager
                    
            (*)hadoop-env.sh    JAVA_HOME    /root/training/jdk1.8.0_144
 
1:进入Hadoop目录下
            cd ~/training/hadoop-2.7.3/etc/hadoop
进入之后如下只有有个
 
 
 
二:需要配置的文件目录如下:
首先进行配置  (*)hdfs-site.xml
            
                    <!--配置数据块的冗余度,默认是3-->
                    <!--原则冗余度跟数据节点个数保持一致,最大不要超过3-->
                    <property>    
                        <name>dfs.replication</name>
                        <value>1</value>
                    </property>
 
                    <!--是否开启HDFS的权限检查,默认是true-->
                    <!--使用默认值,后面会改为false-->
                    <!--
                    <property>    
                        <name>dfs.permissions</name>
                        <value>false</value>
                    </property>                
                    -->      
              
(1)将如上代码放入到  hdfs-site.xml中的  
        进行命令 进入到hdfs-site.xml文件中  vi hdfs-site.xml  
并将上面的配置信息放入<configuration> </configuration>中,保存并退出。如下:
 
 
 
(2)进行配置   (*)core-site.xml
            
                    <!--配置HDFS主节点的地址,就是NameNode的地址-->
                    <!--9000是RPC通信的端口-->
                    <property>    
                        <name>fs.defaultFS</name>
                        <value>hdfs://bigdata111:9000</value>
                    </property>    
 
                    <!--HDFS数据块和元信息保存在操作系统的目录位置-->
                    <!--默认是Linux的tmp目录,一定要修改-->
                    <property>    
                        <name>hadoop.tmp.dir</name>
                        <value>/root/training/hadoop-2.7.3/tmp</value>
                    </property>
 
首先创建一个tmp目录在 /root/training/hadoop-2.7.3 下。
 
             (因为 HDFS数据块和元信息保存在操作系统的目录位置。。-默认是Linux的tmp目录,一定要修改。默认的tmp目录特点是一开机这里面的所有文件都会被删除了的)
 
返回到cd ../etc/hadoop/。进行命令  vi core-site.xml。然后将以上的配置信息加入到配置文件中的<configuration> </configuration>中,保存并退出
      如下:
 
 
 
(3)进行配置(*)mapred-site.xml(默认没有这个文件)
   而默认是mapred-site.xml.template。
 
 <!--MR程序运行容器或者框架-->
                    <property>    
                        <name>mapreduce.framework.name</name>
                        <value>yarn</value>
                    </property>        
*********************************************************************8
 
这里我们将这个文件改为mapred-site.xml
    命令: mv mapred-site.xml.template mapred-site.xml
 
 
vi mapred-site.xml
            将以上配置信息写入该配置文件中。保存并退出
 
                   
 
(4)进行配置(*)yarn-site.xml
 
                    <!--配置Yarn主节点的位置-->
                    <property>    
                        <name>yarn.resourcemanager.hostname</name>
                        <value>bigdata111</value>
                    </property>            
 
                    <!--NodeManager执行MR任务的方式是Shuffle洗牌-->
                    <property>    
                        <name>yarn.nodemanager.aux-services</name>
                        <value>mapreduce_shuffle</value>
                    </property>    
                    
进入该配置文件。
        vi yarn-site.xml
并将如上的配置信息放入到里面。保存并退出
 
 
(5)将如上配置信息配置完成后并没结束。还要 对HDFS的NameNode进行格式化  -----> 目录:/root/training/hadoop-2.7.3/tmp
                    举例:软盘,需要格式化
                    
                    命令:hdfs namenode -format
                    日志:Storage directory /root/training/hadoop-2.7.3/tmp/dfs/name has been successfully formatted.  如果出现该日志则表明格式化成功
            
 
 
三:欧克,以上伪分布就已经完全部署上了。看看我们的成果吧!!
首先来启动一下。直接启动所有  start-all.sh
        
            (*)启动:
                    HDFS:start-dfs.sh
                    Yarn: start-yarn.sh
                    统一的:start-all.sh
  
这里由于没有设置免密码。启动的时候要输入4次密码。。哦!对了,在启动的过程中会提示是否继续。记得按yes哦!!!
 
 
 
 
输入jps查看进程:
    如果出现入下信息则表示启动成功!!
还可以进行网页端查看  。在浏览器中输入http://192.168.40.111:8088/cluster/apps    hdfs端口
                                                                http://192.168.40.111:50070/dfshealth.html#tab-datanode   yarn端口
      进行查看
 Web Console访问:hdfs: 端口: 50070
                                     yarn: 端口:8088
 
 
 
 

推荐阅读