栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

2021-10-21 基于virtual box虚拟机的Hadoop集群安装配置教程

2021-10-21 基于virtual box虚拟机的Hadoop集群安装配置教程

本文记录参考 http://dblab.xmu.edu.cn/blog/2775-2/ 搭建hadoop分布式集群的过程

前置
  • 已在一台虚拟机配置好了伪分布式hadoop系统
  • 一台虚拟机作为master作为namenode,三台虚拟机data1、2、3(均安装了ubuntu系统)作为datanode
网络配置
  • 网卡1配置为NAT网络,这样虚拟机可以正常访问外部网络

  • 网卡2配置为host-only,这样data虚拟机可以和master虚拟机通信

    如果界面名称显示未指定,可以在virtualBox左上角菜单栏点击管理,主机网络管理器,点击创建,便可以指定界面名称

  • 配置主机名称和网络
    sudo vim /etc/hostname

    ping data1 -c 3 测试网络是否连通

SSH无密码登录节点
  • 必须要让Master节点可以SSH无密码登录到各个Slave节点上。首先,生成Master节点的公匙,如果之前已经生成过公钥,必须要删除原来生成的公钥,重新生成一次,因为前面我们对主机名进行了修改。具体命令如下

    cd ~/.ssh              # 如果没有该目录,先执行一次ssh localhost
    rm ./id_rsa*           # 删除之前生成的公匙(如果已经存在)
    ssh-keygen -t rsa       # 执行该命令后,遇到提示信息,一直按回车就可以
    
  • 为了让Master节点能够无密码SSH登录本机,需要在Master节点上执行如下命令:
    cat ./id_rsa.pub >> ./authorized_keys

  • 接下来,在Master节点将上公匙传输到Slave1节点(具体文件夹视具体情况而定)
    scp ~/.ssh/id_rsa.pub hadoop@Slave1:/home/hadoop/

  • 在data1节点上,将SSH公匙加入授权:

    mkdir ~/.ssh       # 如果不存在该文件夹需先创建,若已存在,则忽略本命令
    cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
    rm ~/id_rsa.pub    # 用完以后就可以删掉
    
  • 如果有其他节点,一样配置

配置PATH变量
  • 在前面的伪分布式安装内容中,已经介绍过PATH变量的配置方法。可以按照同样的方法进行配置,这样就可以在任意目录中直接使用hadoop、hdfs等命令了。如果还没有配置PATH变量,那么需要在Master节点上进行配置。 首先执行命令“vim /.bashrc”,也就是使用vim编辑器打开“/.bashrc”文件,然后,在该文件最上面的位置加入下面一行内容:
    export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin
    保存后执行命令“source ~/.bashrc”,使配置生效。
配置集群/分布式环境
  • 在配置集群/分布式模式时,需要修改“/usr/local/hadoop/etc/hadoop”目录下的配置文件,这里仅设置正常启动所必须的设置项,包括workers 、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml共5个文件,更多设置项可查看官方说明。文件在/usr/local/hadoop/etc/hadoop中

  • workers

  • core-site.xml

    
    		
    				fs.defaultFS
    				hdfs://Master:9000
    		
    		
    				hadoop.tmp.dir
    				file:/usr/local/hadoop/tmp
    				Abase for other temporary directories.
    		
    
    
  • hdfs-site.xml

    
    		
    				dfs.namenode.secondary.http-address
    				Master:50090
    		
    		
    				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
    		
    
    
  • mapred-site.xml

    
    		
    				mapreduce.framework.name
    				yarn
    		
    		
    				mapreduce.jobhistory.address
    				Master:10020
    		
    		
    				mapreduce.jobhistory.webapp.address
    				Master:19888
    		
    		
    				yarn.app.mapreduce.am.env
    				HADOOP_MAPRED_HOME=/usr/local/hadoop
    		
    		
    				mapreduce.map.env
    				HADOOP_MAPRED_HOME=/usr/local/hadoop
    		
    		
    				mapreduce.reduce.env
    				HADOOP_MAPRED_HOME=/usr/local/hadoop
    		 
    
    
  • yarn-site.xml

    
    		
    				yarn.resourcemanager.hostname
    				Master
    		
    		
    				yarn.nodemanager.aux-services
    				mapreduce_shuffle
    		
    
    
  • 5个文件全部配置完成以后,需要把Master节点上的“/usr/local/hadoop”文件夹复制到各个节点上
    在master节点上:

    cd /usr/local
    sudo rm -r ./hadoop/tmp     # 删除 Hadoop 临时文件
    sudo rm -r ./hadoop/logs/*   # 删除日志文件
    tar -zcf ~/hadoop.master.tar.gz ./hadoop   # 先压缩再复制
    cd ~
    scp ./hadoop.master.tar.gz Slave1:/home/hadoop
    

    在data1节点上

    sudo rm -r /usr/local/hadoop    # 删掉旧的(如果存在)
    sudo tar -zxf ~/hadoop.master.tar.gz -C /usr/local
    sudo chown -R hadoop /usr/local/hadoop
    
启动
  • 首次执行,在master节点上格式化节点:

    hdfs namenode -format
    
  • 启动

    start-dfs.sh
    start-yarn.sh
    mr-jobhistory-daemon.sh start historyserver
    
  • 在master上jps查看

  • data1上查看

关闭
  • 在master虚拟机上
    stop-yarn.sh
    stop-dfs.sh
    mr-jobhistory-daemon.sh stop historyserver
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/342405.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号