Hadoop简介与安装

hadoop简介

Apache Hadoop软件库是一个框架,允许使用简单的编程模型跨计算机集群分布式处理大型数据集。它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储。该库本身不是依靠硬件来提供高可用性,而是设计用于检测和处理应用层的故障,从而在计算机集群之上提供高可用性服务,每个计算机都可能容易出现故障。

hadoop的思想之源来源于Google在大数据方面的三篇论文
GFS => HDFS
MapReduce => MapReduce 
BigTable => HBase

hadoop的优势:
1)高可靠性:
	因为Hadoop假设计算元素和存储会出现故障,因为它维护多个工作数据副本,在出现故障时可以对失败的节点重新分布处理。
2)高扩展性:
	在集群间分配任务数据,可方便的扩展数以千计的节点。
3)高效性:
	在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
4)高容错性:
	自动保存多份副本数据,并且能够自动将失败的任务重新分配。
	
Hadoop组成:
1)MapReduce(计算):一个分布式的离线并行计算框架。
2)Yarn(资源调度):作业调度与集群资源管理框架。
3)HDFS(数据存储):一个高可靠,高吞吐量的分布式文件系统。
4)common(辅助工具类):支持其他模块的工具模块(Configuration、RPC、序列化机制、日志操作)。

hadoop安装

说明:

使用3台虚拟机服务器
分别是:10.1.255.121,10.1.255.1212 ,10.1.255.123
ip配置:https://blog.csdn.net/weixin_39806100/article/details/86628013

域名配置
vi /etc/hosts

bigdata121 10.1.255.121
bigdata122 10.1.255.122
bigdata123 10.1.255.123

下载地址:
https://archive.apache.org/dist/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz
1,上传解压

我这里的解压目录为:/opt/moudle/hadoop-2.7.3

2,环境变量
vi  /etc/profile

添加如下内容

export HADOOP_HOME=/opt/moudle/hadoop-2.7.3
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

使配置生效

source  /etc/profile
3,配置hadoop
cd /opt/moudle/hadoop-2.7.3/etc/hadoop
(1)vi hadoop-env.sh (用于指定jdk路径)

JDK安装
添加

export JAVA_HOME=/opt/moudle/jdk1.8.0_181
(2)vi core-site.xml (hadoop全局配置)
<configuration>
    <!-- 配置HDFS主节点,namenode的地址,9000是RPC通信端口 -->
   <property>
        <name>fs.default.name</name><!-- fs.defaultFS -->
        <value>hdfs://bigdata121:9000</value>
	</property>
    <!-- 配置HDFS数据块和元数据保存的目录,一定要修改 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/moudle/hadoop-2.7.3/tmp</value>
    </property>
</configuration>
(3)vi hdfs-site.xml (HDFS配置)
<configuration>
    <!-- 数据块的冗余度,默认是3 -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <!-- SecondaryNameNode配置 -->
    <property>
       <name>dfs.namenode.secondary.http-address</name>
       <value>bigdata121:50090</value>
    </property>

    <!-- 配置HDFS的权限检查,默认是true -->
    <property>
        <name>dfs.permissions</name>
        <value>false</value>
    </property>
</configuration>
(4)vi mapred-site.xml (配置MR程序运行的框架,默认没有)
cp mapred-site.xml.template mapred-site.xml
<configuration>
    <!-- 配置MR程序运行的框架 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>
(5)vi yarn-site.xml(配置Yarn)
<configuration>
    <!-- 配置Yarn的节点 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>bigdata121</value>
    </property>
     <!-- NodeManager执行MR任务的方式是Shuffle洗牌 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>
(6)vi slaves (配置从节点)
bigdata122
bigdata123
(7)通过HDFS namenode格式化
hdfs namenode -format

成功日志:

Storage directory /opt/moudle/hadoop-2.7.3/tmp/dfs/name has been successfully formatted.
4,scp 拷贝
scp -r /opt/moudle/hadoop-2.7.3/tmp/ root@bigdata122:/opt/moudle/hadoop-2.7.3/tmp/

scp -r /opt/moudle/hadoop-2.7.3/tmp/ root@bigdata122:/opt/moudle/hadoop-2.7.3/tmp/
5,ssh免密登录
#生成钥匙对
ssh-keygen -t rsa

#将公钥拷贝到其它两台机器上
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata121
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata122
ssh-copy-id -i ~/.ssh/id_rsa.pub root@bigdata123

其它两台机器重复上面的操作。
6,启动
cd /opt/moudle/hadoop-2.7.3/sbin

#启动
./start-all.sh

#停止
./stop-all.sh
7,查看java进程
jps

显示结果如下

主节点
7283 Jps
7013 ResourceManager
6859 SecondaryNameNode #第二节点
6670 NameNode  #名称节点

从节点
4244 DataNode #数据节点
4469 Jps
4351 NodeManager 
8,web访问:
yarn: 
http://10.1.255.121:8088 

hdfs: 
http://10.1.255.121:50070 

hadoop运行wordcount 案例

cd /opt/moudle/hadoop-2.7.3/share/hadoop/mapreduce

hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount ~/temp/a.txt ~/temp/out
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值