Hadoop2.7
Posted eyesheart
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop2.7相关的知识,希望对你有一定的参考价值。
学习大数据必先学习Hadoop,因为它是目前世界上最流行的分布式数据处理框架、Hadoop是一个用于分布式大数据处理的编程框架
一、Hadoop介绍
1、开源大数据框架
2、分布式计算的解决方案
3、Hadoop=HDFS(分布式文件系统)+MapReduce(分布式计算)
Hadoop的构造模块
NameNode
NameNode节点负责将一个文件分成若干文件块,并记录了HDFS文件系统中的文件块放了在哪些DataNode中(一个数据块被冗余地放到1个或多个DataNode节点中),一个集群中只有一个NameNode节点(Hadoop2.X中情况有所不同了),且该节点通常不再运行DataNode和TaskTracker守护进程。
DataNode
DataNode实际管理很多NameNode分配给它的很多数据块,当有文件块变动时会通知NameNode,同时也从NameNode接受指令。一个集群中有多个DataNode节点,DataNode之间也会保持联系,复制冗余文件块,这样当一个DataNode出现故障后不会影响到文件的完整性。
Secondary NameNode
SNN只与NameNode通信,定时获取HDFS元数据的快照,一个集群只有一个SNN,且SNN所在节点只运行SNN守护进程,不干其它的事情。当NameNode出现故障后,可以人工启用SNN作为NameNode。
JobTracker
JobTracker负责分配MapReduce任务给TaskTracker,负责监控任务的执行,如任务失败后重启任务。JobTracker守护进程运行在主节点上,通常该节点不运行DataNode和TaskTracker守护进程。
TaskTracker
TaskTracker负责完成JobTracker分配的任务并和JobTranker进行通信,回报情况。TaskTracker守护进程运行在多个子节点上
二:安装Hadoop
(1)准备工作
1、关闭防火墙
#关闭防火墙
service iptables stop
#永久关闭防火墙
chkconfig iptables off
#查看防火墙状态
service iptables status
2、修改hostname
vi /etc/sysconfig/network
----------------------------------
NETWORKING=yes
HOSTNAME=server1
3、修改IP
桥接模式--->网路连接选择正确的网卡
vi /etc/sysconfig/network-scripts/ifcfg-eth0
------------------------------------------------------------
DEVICE=eth0
TYPE=Ethernet #是否开机启用
BOOTPROTO=static #ip地址设置为静态
IPADDR=192.168.43.101
NETMASK=255.255.255.0
GETWAY=192.168.0.1
DNS1=8.8.8.8
------------------------------------------------------------
service network restart
4、安装配置JDK
a、解压JDK文件
-->tar -zxvf jdk-7u80-linux-x64.tar.gz
b、配置环境变量
-->Linux的环境变量文件是/etc/profile文件,直接在末尾追加以下变量即可
export JAVA_HOME=/soft/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
-->echo ‘export PATH=$PATH:/usr/local/mysql/bin‘ >> /etc/profile
c、source /etc/profile :配置文件永久生效
d、使用java和javac命令测试
e、如果报错bad ELF interpreter: 没有那个文件或目录
执行:sudo yum install glibc.i686
5、配置SSH
1、添加局域网内的主机名
vi /etc/hosts
192.168.0.150 server1
192.168.0.151 server2
192.168.0.152 server3
2、在客户端主机中生成公/私钥对
ssh-keygen -t rsa
将客户端主机中的公钥分发给服务端主机 ssh-copy-id 服务端主机地址
在客户端主机上免密码登录至服务端
ssh 服务端主机地址
(2)安装Hadoop
1、解压文件
2、配置环境变量
3、修改配置文件
core-site.xml
hadoop的全局配置
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://server1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/soft/hadoop/data</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
hadoop-env.sh
指定JDK路径:
export
JAVA_HOME=/soft/jdk1.8
export HADOOP_COMMON_LIB_NATIVE_DIR=/soft/hadoop/lib/native
export HADOOP_OPTS="-Djava.library.path=soft/hadoop/lib/native -Djava.net.preferIPv4Stack=true"
--这块是添加hbase
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/soft/hbase/lib/*
路径都要是自己的路径
hdfs-site.xml(可以不配)
slaves
添加从节点的主机名或地址
server2
server3
yarn-env.sh(可以不配)
yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>server1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
4、把已经配置好的hadoop复制到另外两台机器上
4、格式化这个hdfs
5、启动服务
warning:You have loaded library /soft/hadoop/lib/native/libhadoop.so.1.0.0
安装GLIBC_2.14或更高版本即可
6、测试web管理页http://server1:50070
7、查看集群状态:hdfs dfsadmin -report
如果无法查看集群信息、报错无法连接9000
8、运行hadoop自带的单词统计案例
1、先上传文件 hadoop fs -put 文件路径 服务器文件路径
2、运行程序开始计算
hadoop jar
~/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount /input2服务器文件路径/ /输出结果文件路径/
3、查看结果:hadoop fs -cat 程序运行的输出结果
以上是关于Hadoop2.7的主要内容,如果未能解决你的问题,请参考以下文章