五年大数据经验:Hadoop实验环境部署这么做
了解Hadoop这样的重量级平台,必须有一个实验环境
Hadoop的部署又是一个比较复杂而繁琐的过程,对于入门的选手来说,能避开繁琐的部署过程,先使用起来是极其重要的。Hadoop的商用厂家cloudera发布了官方的免费cdh容器镜像,我们可以简单几步就搭建起一个cdh的实验环境。
五年大数据经验:Hadoop实验环境部署这么做(300集Hadoop教程)
搭建环境准备
1.部署docker
- centos或者red hat
yum install docker
- ubuntu
apt
-
get
install docker
-
ce
- mac
下载mac版的docker,地址:https://store.docker.com/editions/community/docker-ce-desktop-mac,再双击部署即可。
- windows
最好先部署virtualbox或者vmware workstation,再开虚拟机部署centos,red hat,ubuntu等,最后按照上述方法部署docker。
2.配置docker国内镜像源(可选)
笔者选用的源是daocloud的源,登录daocloud,按照步骤配置源。
部署
1.拉取镜像
docker pull loicmathieu
/
cloudera
-
cdh
-
edgenode
docker pull loicmathieu
/
cloudera
-
cdh
-
namenode
docker pull loicmathieu
/
cloudera
-
cdh
-
yarnmaster
docker pull loicmathieu
/
cloudera
-
cdh
-
datanode
docker pull loicmathieu
/
cloudera
-
cdh
-
edgenode
loicmathieu/cloudera-cdh-edgenode包含以下的Hadoop客户端:hdfs,yarn,mapreduce v2,pig,hive,spark,sqoop,flume。
2.为集群创建网络
docker network create hadoop
3.启动HDFS和yarn容器
docker run
-
d
--
net hadoop
--
net
-
alias
namenode \
-
p
8020
:
8020
loicmathieu
/
cloudera
-
cdh
-
namenode
docker run
-
d
--
net hadoop
--
net
-
alias
yarnmaster \
-
p
8032
:
8032
-
p
8088
:
8088
loicmathieu
/
cloudera
-
cdh
-
yarnmaster
4.启动datanode容器
docker run
-
d
--
net hadoop
--
net
-
alias
datanode1
-
h datanode1 \
--
link namenode
--
link yarnmaster
-
p
50020
:
50020
-
p
50075
:
50075
-
p
8042
:
8042
\
loicmathieu
/
cloudera
-
cdh
-
datanode
5.启动edgenode并且进入edgenode
docker run
-
ti
--
net hadoop
--
net
-
alias
edgenode
--
link namenode
--
link yarnmaster \
loicmathieu
/
cloudera
-
cdh
-
edgenode bash
示例
镜像里面包含一些用来测试集群的测试数据和脚本 1.HDFS和MapReduce
hadoop fs
-
mkdir
/
cities
hadoop fs
-
put cities
.
csv
/
cities
hadoop fs
-
cat
/
cities
/
cities
.
csv
hadoop jar
/
usr
/
lib
/
hadoop
-
mapreduce
/
hadoop
-
mapreduce
-
examples
.
jar \
wordcount
/
cities
/
cities
.
csv
/
wordcount
hadoop fs
-
ls
/
wordcount
2.Pig
pig cities
.
pig
hadoop fs
-
ls
/
data_by_department
hadoop fs
-
cat
/
data_by_department
/
part
-
r
-
00000
3.Hive
beeline
-
u jdbc
:
hive2
:
// -f cities.hql
beeline
-
u jdbc
:
hive2
:
//
select
*
from
cities limit
10
;
select
*
from
cities
where
department
=
'82'
limit
10
;
4.Spark(local)
spark
-
shell
val cities
=
sc
.
textFile
(
"hdfs:///cities"
);
cities
.
count
();
exit
;
5.Spark(yarn)
spark
-
shell
--
master yarn
val cities
=
sc
.
textFile
(
"hdfs:///cities"
);
cities
.
count
();
exit
;
6.Sqoop和flume Flume和Sqoop本篇不做过多的讨论,后续会专门讨论。
目前为止,我们已经搭建了一个用于实验的CDH集群,对于我们探索Hadoop已经迈出了关键性的一步,下一篇我们将讨论Hadoop存储层HDFS
文字性的叙述,就给大家介绍到这里,接下来的是以视频的方式传播给大家,希望大家能够喜欢,把Hadoop讲的明明白白的,让大家理解的透彻,能够好好的运用,那么我就把Hadoop 300集给大家了。
获取资料进Java小白自学交流群:538700182