博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop2.2.0单节点安装和配置环境图文详解
阅读量:4286 次
发布时间:2019-05-27

本文共 4671 字,大约阅读时间需要 15 分钟。

摘要:最近也是刚刚入门hadoop,配置环境就折腾了很久,在网上也查看了给位大神的帖子,从中也学到 了很多东西,但是很多都是比较杂,在这里我就贴出我配置的一些心得,望各位指教。

一、简介
二、在Ubuntu下创建hadoop用户组和用户
三、在Ubuntu下安装JDK
四、安装ssh服务
五、建立ssh无密码登录本机
六、安装hadoop
七、在单机上运行hadoop。

一:简介(这里简单用图片展示下):

二、在Ubuntu下创建hadoop用户组和用户 ,这里考虑的是以后涉及到hadoop应用时,专门用该用户操作。用户组名和用户名都设为:hadoop。可以理解为该hadoop用户是属于一个名为hadoop的用户组。

1、创建hadoop用户组,如图

2、创建hadoop用户,

3、给hadoop用户添加权限,打开/etc/sudoers文件,如图

按回车键后就会打开/etc/sudoers文件了,给hadoop用户赋予root用户同样的权限。在root  ALL=(ALL:ALL)  ALL下添加hadoop  ALL=(ALL:ALL)  ALL,如图

三、在Ubuntu下安装JDK

每当Ubuntu安装成功时,我们的机器名都默认为:ubuntu ,但为了以后集群中能够容易分辨各台服务器,需要给每台机器取个不同的名字。机器名由 /etc/hostname文件决定。

1、打开/etc/hostname文件,如图

打开/etc/hostname文件,将/etc/hostname文件中的ubuntu改为你想取的机器名,重启系统后才会生效。

四:安装ssh服务 

这里的ssh和三大框架:spring,struts,hibernate没有什么关系,ssh可以实现远程登录和管理,具体可以参考其他相关资料。
1、安装openssh-server,

自动安装openssh-server时,可能会进行不下去,可以先进行如下操作:

执行如下命令升级部分软件udo apt-get update,如图:

操作完成后继续执行第1步。

这时您已经安装好了ssh,您就可以进行第五步了;

五、 建立ssh无密码登录本机 

ssh生成密钥有rsa和dsa两种生成方式,默认情况下采用rsa方式。
1、创建ssh-key,,这里我们采用rsa方式,如图

回车后会在~/.ssh/下生成两个文件:id_rsa和id_rsa.pub这两个文件是成对出现的,

2、进入~/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中,开始是没有authorized_keys文件的,如图

完成后就可以无密码登录本机了。

3、登录localhost,在命令行中输入:ssh localhost,结果如图,

至此,hadoop的ssh环境就搭好了,接下来就是配置hadoop的环境了。

六、安装Hadoop2.2,搭建集群

1、在hadoopMaster上安装hadoop

       首先到Apache官网上下载hadoop2.2的压缩文件,将其解压到当前用户的根文件夹中(home/fyzwjd/),将解压出的文件夹改名为hadoop。

$ sudo mv hadoop-2.2.0 hadoop
配置之前,先在本地文件系统创建以下文件夹:~/hadoop/tmp、~/dfs/data、~/dfs/name。 主要涉及的配置文件有7个:都在/hadoop/etc/hadoop文件夹下,可以用gedit命令对其进行编辑。

~/hadoop/etc/hadoop/hadoop-env.sh  ~/hadoop/etc/hadoop/yarn-env.sh  ~/hadoop/etc/hadoop/slaves  ~/hadoop/etc/hadoop/core-site.xml  ~/hadoop/etc/hadoop/hdfs-site.xml  ~/hadoop/etc/hadoop/mapred-site.xml  ~/hadoop/etc/hadoop/yarn-site.xml
         (1)     配置文件1:hadoop-env.sh
              修改JAVA_HOME值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
        (2)     配置文件2:yarn-env.sh
              修改JAVA_HOME值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
      (3)     配置文件3:slaves ( hadoopSalve1  、hadoopSlave2 )

       (4)    配置文件4:core-site.xml

fs.defaultFS
hdfs://hadoopMaster:9000
io.file.buffer.size
131072
hadoop.tmp.dir
file:/home/fyzwjd/hadoop/tmp
Abasefor other temporary directories.
hadoop.proxyuser.fyzwjd.hosts
*
hadoop.proxyuser.fyzwjd.groups
*
  
  (5)     配置文件5:hdfs-site.xml

dfs.namenode.secondary.http-address
hadoopMaster:9001
dfs.namenode.name.dir
file:/home/fyzwjd/dfs/name
dfs.datanode.data.dir
file:/home/fyzwjd/dfs/data
dfs.replication
3
dfs.webhdfs.enabled
true
 
(6)    配置文件6:mapred-site.xml

mapreduce.framework.name
yarn
mapreduce.jobhistory.address
hadoopMaster:10020
mapreduce.jobhistory.webapp.address
hadoopMaster:19888
 
(7)    配置文件7:yarn-site.xml

yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.resourcemanager.address
hadoopMaster:8032
yarn.resourcemanager.scheduler.address
hadoopMaster:8030
yarn.resourcemanager.resource-tracker.address
hadoopMaster:8035
yarn.resourcemanager.admin.address
hadoopMaster:8033
yarn.resourcemanager.webapp.address
hadoopMaster:8088
2、如果是真机分布式,则将hadoop文件夹拷贝到hadoopSlave1和hadoopSlave2上。

scp –r/home/fyzwjd/hadoop fyzwjd@hadoopSlave1:~/  scp –r/home/fyzwjd/hadoop fyzwjd@hadoopSlave2:~/
七、验证与运行

    所有的组件启动和停止服务都在/hadoop/sbin目录下,一般启动hadoop前会格式化namenode。具体命令参考如下:

1、进入安装目录: cd ~/hadoop/  

格式化namenode:./bin/hdfs namenode –format  
启动hdfs: ./sbin/start-dfs.sh  
此时在hadoopMaster上面运行的进程有:namenodesecondarynamenode  
hadoopSlave1和hadoopSlave2上面运行的进程有:datanode  

2、启动yarn: ./sbin/start-yarn.sh  

此时在hadoopMaster上面运行的进程有:namenodesecondarynamenoderesourcemanager  
hadoopSlave1和hadoopSlave2上面运行的进程有:datanode nodemanaget 

3、查看集群状态:./bin/hdfs dfsadmin –report  

查看文件块组成: ./bin/hdfsfsck/ -files -blocks  
查看HDFS: http://hadoopMaster:50070  
查看RM: http:// hadoopMaster:8088  

你可能感兴趣的文章
iOS即时通信之XMPP框架的使用及原理简介
查看>>
PHP之Apache服务器搭建
查看>>
iOS webDav服务器的搭建
查看>>
iOS openfire服务器的使用
查看>>
iOS ------自动布局之Masonry的使用
查看>>
iOS. UICollectionViewController的使用详解,相册滚动偏移放大
查看>>
iOS之UITableViewController使用详解(一)tableview上移
查看>>
iOS之UIScrollView的使用详解
查看>>
MAC常用终端命令汇总
查看>>
iOS之tableView(五)的编辑删除插入操作和UIAlertController的使用
查看>>
iOS之tableView(四)自定义cell/注册cell的三种方式/设置预估高度、cell上图文混排实例
查看>>
iOS之tableView(三)cell复制粘贴操作
查看>>
iOS collectionView实现瀑布流
查看>>
iOS 控制器创建的三种方式
查看>>
iOS UIAlertView和UIAlertController的使用
查看>>
iOS之常用的格式控制符
查看>>
iOS 之scrollView 实现图片轮播/collectionview实现轮播/当前页面切换collectionviewcell显示个数
查看>>
iOS 内存分区和关于static的使用
查看>>
iOS中代码性能测试的方法
查看>>
iOS 之系统的autoLayou自动t布局
查看>>