大数据(hadoop-Hadoop2.7.3伪分布搭建)

安装准备:

vmware10
Centos6.5 64位版本
JDK1.8linux32位版
Hadoop2.7.3版本

 

安装过程讲解:

 字符界面安装centos6.5,网络设置为主机模式或者桥连接
 配置静态ip 并测试能不能从主机ping的通虚拟机
 使用secureCRT进行远程ssh登陆
 配置etc/hosts 添加ip对应的主机名,比如192.168.17.2 master
 安装ssh 客户端,通过修改本地yum源来进行,成功后重启服务
 关闭防火墙 chkconfig
 创建普通用户 hadoop(名字可自定义)
 设置免密钥ssh登录(伪分布式其实可以省略
 上传jdk和hadoop2.7.3
 使用普通用户登陆,在home目录下创建bd文件夹(非必需)
 分别解压jdk和hadoop2.7.3,并测试
 配置普通用户的环境变量,.bashrc(也可以直接在etc/profile进行配置)
 测试echo $JAVA_HOME
 修改配置5个配置文件
 hadoop-env.sh
 core-site.xml
 hdfs-site.xml
 mapred-sit.xml(将mapred-sit.xml.template重命令)
 yarn-site.xml
 使用jdk下面的bin目录中的jps来查看下进程
 或者查看日志,在hadoop解压目录中logs里面
 在主机windows里面的system32/drivers/etc/hosts里面添加linux主机名对应的linux里面的ip
 通过浏览器进行访问8088端口和50070端口进行测试

具体操作:

1.添加hadoop用户

49572e0c6b3d97a34502057a5fc6c08808e.jpg

2.切换到hadoop用户

8da8f2e172c2b7a8c576880b61d943fafe2.jpg

配置无密码ssh认证连接

...(自查)

获取hadoop安装包

从hadoop的官网获取你需要的版本,本教程采用2.8.X版本的安装包。

官网地址:http://hadoop.apache.org/releases.html

jdk

hadoop自身是用java编写的,所以需要java环境来运行它。需要下载一个和你选择的hadoop版本匹配的JDK安装包。Hadoop版本与java版本的对应关系如下:
    hadoop3.0                    java8
    hadoop2.7及后续版本        java7
    hadoop2.6及以前的版本    java6
为方便安装,我们到java的oracle官网下载一个64位的jdk8的rpm包。

 

安装jdk

...(省略)

 

安装hadoop

上传安装包

Hadoop用户操作:

5e24379c9d91a981d323d817038f50dbd8b.jpg

bf8c1e91ef500e2f49b61eed839e187a556.jpg

查看上传的文件

fb8d9c93ba210474bcdc1b5cf169290f97b.jpg

77f7416069a15000f9d2d7cd78c9a67574c.jpg

d10d13df4f3e5e83742188284ca1f2f09b5.jpg

42391dd6aee5c26b64bca71d65598f2286e.jpg

配置hadoop环境变量

7b35936895f0cccd022ea1c175f248b1706.jpg

5ea4d776eaea9b47fcc07aa8a831c22d798.jpg

e488bc000e05d97a4f134fe9002a86a0edd.jpg

为hadoop配置JAVA_HOME

3984242ddff25a60ef576a93f1f591b9ba2.jpg

e0c73f7ca486c622162968b8467e4dbcee9.jpg

0c609c5c68222b38c7e4f07eb64b1fb5449.jpg

配置hadoop集群

集群配置文件下载地址:

链接:https://pan.baidu.com/s/1R5081Nd82B5u8DLMysnY7A 密码 :ldsq

 

Hadoop基础配置

core-site.xml  核心配置文件

它会被所有的hadoop进程使用。需在该配置文件中配置hadoop集群默认文件系统的访问uri(必需配置),可以指定IO缓冲区的大小等。

b8a4c2e677a87a021d6c47837045acc21e3.jpg

这个小集群的的配置如下:

<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://192.168.0.11:9000</value>
	</property>
</configuration>

 

HDFS集群配置

hdfs-site.xml  hdfs集群参数配置文件

在该文件配置hdfs集群的参数,常用的配置参数如下,如果都是使用的默认值,则不需进行配置。

  • NameNode相关的参数:

5a17ca63b0e19d01c0ded374a0f3aa20317.jpg

  • DataNode相关的参数:

97b4b857d62d45dcf01e8852da4c4a2a6e8.jpg

小集群的配置如下:  

hdfs-site.xml

<configuration>
	<property>
		<description>文件的备份数量</description>
		<name>dfs.replication</name>
		<value>3</value>
	</property>
	<property>
		<description>NameNode文件系统名称空间存放目录</description>
		<name>dfs.namenode.name.dir</name>
		<value>/home/hadoop/namespace</value>
	</property>
	<property>
		<description>DataNode上文件数据块的存放目录</description>
		<name>dfs.datanode.data.dir</name>
		<value>/home/hadoop/data</value>
	</property>
</configuration>

从节点(DataNode)列表配置:
在NameNode的etc/hadoop/slaves 文件列出所有的DataNode的ip,一个一行。

10.0.2.20
10.0.2.21
10.0.2.22

 

YARN集群配置

etc/hadoop/mapred-site.xml 配置

<configuration>
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
</configuration>

etc/hadoop/yarn-site.xml 配置

<configuration>

<!-- Site specific YARN configuration properties -->

	<property>
		<description>resourceManager节点的主机地址</description>
		<name>yarn.resourcemanager.hostname</name>
		<value>192.168.0.13</value>
	</property>
	
	<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

</configuration>

 

复制机器

1、复制

2、修改复制机器:
修改主机名:
    hostnamectl set-hostname xxx

修改ip地址:
    vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
    修改 IPADDR=指定ip

重启网络服务
    systemctl restart network

 

启动集群

启动hdfs集群

1、格式化文件系统
$ hdfs namenode -format

2、在NameNode上启动hdfs集群
$ start-dfs.sh

hadoop进程的日志将输出在目录 $HADOOP_HOME/logs下  

3、通过浏览器浏览NameNode的web界面,默认的浏览地址为:
http://namenode-ip:50070
    如 http://192.168.0.111:50070 

可用jps命令查看各个节点上运行的java进程

4、在NameNode上关闭hdfs集群
$ stop-dfs.sh

启动yarn集群

1、启动:在ResourceManager上启动yarn集群
$ start-yarn.sh

2、通过浏览器浏览ResourceManager的web界面,默认的浏览地址为:
http:// ResourceManager-ip:8088
    如 http://192.168.0.111:8088

3、关闭:在ResourceManager上关闭yarn集群
$ stop-yarn.sh

启动jobHistoryServer
mr-jobhistory-daemon.sh start historyserver

 

测试

1、在HDFS上创建执行MapReduce作业所需的目录
$ hdfs dfs -mkdir /user
$ hdfs dfs -mkdir /user/<username>

2、将输入文件拷贝到分布式文件系统上:
$ hdfs dfs -mkdir input
$ hdfs dfs -put etc/hadoop/*.xml input

3、运行MapReduce示例作业:
$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.3.jar grep input output 'dfs[a-z.]+'

4、查看输出结果文件:
方式一:将分布式文件系统的输出文件拷贝到本地文件系统上,再查看:
$ hdfs dfs -get output output
$ cat output/*

方式二:直接在分布式文件系统上查看输出文件:
    $ hdfs dfs -cat output/*

我们会发现,系统被卡死了,为什么呢?因为机器的内存只有512M,内存被耗尽了。用 ctrl+c强制结束(会等待好长一段时间),再来看一下内存使用情况:

e9b51bf9aae768710c7f9371687ff36e74f.jpg

其实我们在启动HDFS、yarn后,内存就用完了。重启系统后,我们启动hdfs、yarn,马上看一下内存的使用情况:

5365ec3744adeac8f21a03a109e403a4365.jpg

再要执行mapreduce任务又需要很多内存(不够用),根本就执行不了。
解决办法:
1、调高机器的内存到1G
2、运行作业时加入jvm重用参数,如下所示:

hadoop jar /usr/hadoop/latest/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.3.jar grep -Dmapreduce.job.ubertask.enable=true input output5 'hdf[a-z.]+'

 

 

转载于:https://my.oschina.net/u/3728166/blog/3037787

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值