当前位置:   article > 正文

HADOOP学习详细教程

HADOOP学习详细教程

一、
CentOS配置
1、CentOS下载
CentOS下载
链接:https://pan.baidu.com/s/19qYeyDHKaoVs1VTIBnJ33g
提取码:jl1l
2、VMware下载
链接:https://pan.baidu.com/s/1Y-rVMaFUT2E78rg6B4shvQ
提取码:ifjk
3、使用VMware打开CentOS配置
(1)基本配置

在这里插入图片描述
在这里插入图片描述

(2)网络配置edit→Virtual NetWork Editor
查看本地使用的虚拟网络ip
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

启动虚拟机
在这里插入图片描述
在这里插入图片描述
360可能会禁用这里要启动
在这里插入图片描述
4、CentOS网络配置几种方式
(1)图形化界面配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
切换到root下重启网络服务
在这里插入图片描述
Ifconfig查看ip是否生效

(2)修改配置文件修改ip的方式
在这里插入图片描述
在这里插入图片描述

sudo vim /etc/sysconfig/network-scripts/ifcfg-eth0
  • 1

i进入编辑

DEVICE="eth0"
BOOTPROTO="static"               ###静态地址启动
HWADDR="00:0C:29:3C:BF:E7"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.1.101"           ### ip
NETMASK="255.255.255.0"          ###掩码
GATEWAY="192.168.1.1"            ###网关
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

在这里插入图片描述
Esc
:wq 保存并退出
改完配置文件不会自动生效,必须重启linux服务器(reboot)
或者重启network服务(sudo service network restart)
5、ContOS基本配置
(1)常用命令
vi 编辑文件
cd 打开目录
(2)让普通用户具备sudo执行权限
使用vi单行快捷键 yy 复制 p 粘贴 dd删除一行
Vim多行快捷键 v然后加上 “上下键” yy 复制 p 粘贴
切换到root
然后 vi /etc/sudoers
i 进入编辑
复制一行改成

root    ALL=(ALL)       ALL
hadoop  ALL=(ALL)       AL
  • 1
  • 2

在这里插入图片描述
Esc
:wq! 强制保存并退出
(3)服务器启动默认字符界面
sudo vi /etc/inittab
在这里插入图片描述
修改 字符界面
I 进入编辑
将启动级别改成3

id:3:initdefault:
  • 1

在这里插入图片描述
Esc
:wq 保存并退出
(4)
修改主机名和ip的映射关系

sudo vi /etc/sysconfig/network
  • 1

在这里插入图片描述
在这里插入图片描述

sudo hostname weelend110
  • 1

配置映射关系

sudo vi /etc/hosts
192.168.131.100  weekend110
  • 1
  • 2

在这里插入图片描述

ping weekend110
  • 1

验证一下
在这里插入图片描述
关闭防火墙
#查看防火墙状态

service iptables status
  • 1

#关闭防火墙

service iptables stop
  • 1

#查看防火墙开机启动状态

chkconfig iptables --list
  • 1

#关闭防火墙开机启动

chkconfig iptables off
  • 1

Init3启动字符界面使用终端连接
SecureCRTPortable.exe下载
链接:https://pan.baidu.com/s/1v0zKf8gbs1cq2waT3qstqA
提取码:nh2f
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

上传文件软件
链接:https://pan.baidu.com/s/1D6xHCmGmOi3WT-3hOVNcuQ
提取码:owxt

二、hadoop安装
1、准备
创建文件夹

makdir app
  • 1

在这里插入图片描述
递归删除文件夹及文件

rm -rf P* D* Music/ Videos/ Templates/
  • 1

在这里插入图片描述

2、Jdk安装
(1)Jdk下载
链接:https://pan.baidu.com/s/1KVYy21a5Jw2afcaV4I-kxg
提取码:6bmd
(2)上传服务器

Alt + p

打开sftp
  • 1
  • 2
  • 3

在这里插入图片描述
把jdk上传到服务器

put D:/hadoop/jdk-7u65-linux-i586.tar.gz 
  • 1

在这里插入图片描述
把jdk解压到 app/

tar -zxvf jdk-7u65-linux-i586.tar.gz -C app/
  • 1

在这里插入图片描述

检查jdk是否能用

cd ~/app/jdk1.7.0_65/bin/
./java -version
  • 1
  • 2

在这里插入图片描述
(3)配置环境变量

sudo vi /etc/profile
  • 1

不清楚路径可以有两种方法
a.直接在编辑器里面 esc :cd /home/hadoop/app/jdk1.7.0_65/
在这里插入图片描述

b.直接克隆一个窗口
在这里插入图片描述
在这里插入图片描述
最后面加上

export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
export PATH=$PATH:$JAVA_HOME/bin
  • 1
  • 2

在这里插入图片描述
立即生效并验证

source /etc/profile
java -version
  • 1
  • 2

在这里插入图片描述

3、Hadoop安装
(1)Hadoop下载
链接:https://pan.baidu.com/s/1Cnrmkt26hlbiPtJ8oOFuSA
提取码:cuxz
(2)上传hadoop

put D:/hadoop/hadoop-2.4.1.tar.gz
  • 1

在这里插入图片描述
(3)解压到app/

tar -zxvf hadoop-2.4.1.tar.gz -C app/
  • 1

在这里插入图片描述
bin 可执行脚本
include 本地库
libexec
NOTICE.txt
sbin 系统执行脚本
etc 配置文件
lib 本地库
LICENSE.txt
README.txt
share jar包
(4)删除shar下的doc帮助文档减少内存占用
cd ~/app/hadoop-2.4.1/share/
rm -rf doc
在这里插入图片描述

cd ~/app/hadoop-2.4.1/share/hadoop/
  • 1

common 公共组件
hdfs hdf.jars做存储
httpfs
mapreduce 编程模型运算模型
tools 工具类
yarn 资源调度

(5)修改配置文件

cd ~/app/hadoop-2.4.1/etc/hadoop/
  • 1

(a)修改环境配置文件

vi hadoop-env.sh
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
  • 1
  • 2

在这里插入图片描述
(b)修改core-site公共相关的
TFS是

vi core-site.xml

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

        <property>
                <name>hadoop.tmp.dir</name>
                <value>/home/hadoop/app/hadoop-2.4.1/data/</value>
        </property>
</configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

在这里插入图片描述
(c)修改hdfs相关的

vi hdfs-site.xml 

<configuration>
<property>
<name>dfs.replication</name><!--副本数-->
<value>1</value>
</property>
</configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述
(d)修改 mapred框架运行相关的
首先重命名

mv mapred-site.xml.template mapred-site.xml
  • 1

在这里插入图片描述

 vi mapred-site.xml
  • 1

说明 mapreduce程序应该放到什么程序上去跑放到yarn上跑,如果不指定yarn他就只会在本地跑不会到集群上面跑,就变成单机版的了。

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述
(e)修改yarn框架运行相关的

 vi yarn-site.xml

<configuration>
<!--指定yarn集群里面的老大-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>weekend110</value>
</property>
<!--指定reduce获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

在这里插入图片描述
(f)关闭防火墙

sudo service iptables status  #查看防火墙状态
sudo service iptables stop	#关闭防火墙
sudo chkconfig iptables --list	#查看防火墙自启状态
  • 1
  • 2
  • 3

在这里插入图片描述

sudo chkconfig iptables off	#关闭防火墙自启
  • 1

在这里插入图片描述
4、验证启动hadoop
(1)增加环境变量

sudo vi /etc/profile
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
export HADOOP_HOME=/home/hadoop/app/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
source /etc/profile #应用并执行
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述
(2)格式化hadoop

hadoop namenode -format
  • 1

在这里插入图片描述
成功
(3)启动hadoop

sudo vi /etc/profile 		#增加hadoop sbin环境变量
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
export HADOOP_HOME=/home/hadoop/app/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

source /etc/profile		#立即执行
  • 1

启动hadoop dfs

start-dfs.sh 
  • 1

在这里插入图片描述
Jps 查看启动项
在这里插入图片描述
启动DataNode
是在cd etc/hadoop/目录下的 slaves 默认是localhost
在这里插入图片描述
改成主机名
在这里插入图片描述
启动 yarn
在这里插入图片描述
出现以下服务则配置启动成功
在这里插入图片描述

(4)Hdfs测试
配置访问主机名
在这里插入图片描述
打开下面链接进入页面
http://weekend110:50070/
在这里插入图片描述
Configured Capacity: 17.46 GB Namenode 多大容量
Live Nodes 1 (Decommissioned: 0) 运行的datenode有几个
Dead Nodes 0 死掉datenode没有

Hdfs 文件系统
在这里插入图片描述
在这里插入图片描述

上传文件

 hadoop fs -put jdk-7u65-linux-i586.tar.gz hdfs://weekend110:9000/
  • 1

在这里插入图片描述
查看
在这里插入图片描述
从hdfs下载文件

 hadoop fs -get hdfs://weekend110:9000/jdk-7u65-linux-i586.tar.gz
  • 1

在这里插入图片描述
(5)Mapreduce测试

cd ~/app/hadoop-2.4.1/share/hadoop/mapreduce/	#mapreduce路径
  • 1

在这个jar下
在这里插入图片描述
(a)计算圆周率

hadoop jar hadoop-mapreduce-examples-2.4.1.jar pi 5 5 
  • 1

在这里插入图片描述
结果
在这里插入图片描述

(b)统计每个单词出现的总次数
在当前目录下写一个文本

vi test.txt
  • 1

在这里插入图片描述
在这里插入图片描述
创建一个目录

hadoop fs -mkdir /wordcount
  • 1

在这里插入图片描述

hadoop fs -mkdir /wordcount/input
  • 1

在这里插入图片描述

把刚才的文件上传到hdfs上

hadoop fs -put test.txt /wordcount/input
  • 1

在这里插入图片描述

 hadoop jar hadoop-mapreduce-examples-2.4.1.jar wordcount /wordcount/input  /wordcount/output
  • 1

在这里插入图片描述
查看目录下生成的结果文件

hadoop fs -ls /wordcount/output
  • 1

在这里插入图片描述

hadoop fs -cat /wordcount/output/part-r-00000
  • 1

在这里插入图片描述
也可以从图形界面下载看
在这里插入图片描述
5、HDFS的实现思想
1、hdfs是通过分布式集群来存储文件,为客户端提供了一个便捷的访问方式,就是一个虚拟的目录结构。
2、文件存储到hdfs集群中去的时候是被切分成block的
3、文件的block存放到若干台DataNode节点上
4、Hdfs文件系统中的文件与真实的block之间有映射关系,由namenode管理。
5、每一个block在集群中会存储多个副本,好处是可以提高数据的可靠性,还可以提高访问的吞吐量。
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/632925
推荐阅读
相关标签
  

闽ICP备14008679号