一、Hadoop在CDH和HDP中的使用
咱们前面学习了官方的Apache Hadoop版本,我们前面也说了,在实际工作中其实会使用CDH或者HDP,那下面我们就看一下在CDH和HDP中如何操作Hadoop。
注意了,在这里我不打算讲CDH和HDP的安装部署,意义不大,咱们是开发人员,主要侧重于代码开发,安装部署的工作是运维人员的,咱们不能抢饭碗啊,什么都让你做了,别人不就得喝西北风啊,这样太不地道了,对吧。
如果确实想了解CDH是怎么安装的,看下面我整理的CDH集群以及单机部署
大数据平台安装部署–CDH6.2版本【集群】大数据平台安装部署–CDH6.2版本单机
不过我们在这里要演示,肯定先安装部署了,在这里给大家分享一个好东西,不要告诉别人哦,这里面的东西目前到官网都下载不到了,没有下载链接了,幸亏我之前留的有后手,提前下载了一份。
cloudera-quickstart-vm-5.13.0-0-vmware.zip
链接:https://pan.baidu.com/s/1rt6HODKweNrfYnLcmN77bw
提取码:tbwg
HDP_3.0.1_vmware_181205.ova
链接:https://pan.baidu.com/s/1hW3UOBu9_iQgCk-svVJ5oQ
提取码:7e7b
注:文件都比较大,尤其是HDP_3.0.1_vmware_181205.ova,有20多个G,谨慎下载,如果自己环境资源是够的,可以尝试下。
这两个文件可以通过vmware打开,里面已经安装好了CDH和HDP,可以在一台机器上启动,模拟正常的集群环境,这都是在官网上下载的,可以直接使用,非常简单,我们在这主要是为了演示一下如何在CDH和HDP中操作Hadoop,其实说实话,他们在操作的时候没有什么区别,和我们操作原生版本的Hadoop一样,但是呢如果不带着大家去亲身感受一把,大家心里面总是感觉有点虚。
注意了,这里面的cloudera-quickstart-vm-5.13.0-0-vmware.zip这个文件目前官网已经没有下载链接了
HDP_3.0.1_vmware_181205.ova目前是有的。
1、下面我们就来先演示一下CDH
先解压,再使用vmware直接打开即可,
选择本地的镜像文件,在这里最好选择centos6.7的iso镜像文件,因为这个操作系统的版本就是centos6.7。
CentOS-6.7-x86_64-minimal.iso
没有的话使用7也行。
注意了,这个虚拟机默认会使用4G内存,1个CPU,64G的磁盘,内存至少要4个G,太少的话有可能启动不了,在这我把资源调大一些,内存给他分8个G,CPU分2个,这样这个虚拟机运行会快一些,当然了,如果你本地的资源不多的话就使用默认的也可以。
接着启动这个虚拟机即可。
在启动之前,先把本地启动的那几台虚拟机关闭掉,要不然启动太多机器容易卡。
启动的过程稍微有点慢,不要着急。
最后可以看到这个界面,就说明启动成功了。
虚拟机启动后,CDH中大数据的所有组件都是启动状态,可以在root账号下通过jsp命令查看已启动的服务
root账号的密码是cloudera
通过su命令切换到root用户,然后输入root用户的密码即可。
这里面除了有Hadoop的相关进程,还有其他大数据框架的进程
注意了,CDH和HDP是一个平台,里面可以安装很多大数据组件,Hadoop只是它里面的一个软件而已。就类似于安卓的谷歌市场,苹果的appstore一样。
我们尝试操作一下hdfs
[root@quickstart Desktop]# hdfs dfs -ls /
Found 6 items
drwxrwxrwx - hdfs supergroup 0 2017-10-23 10:29 /benchmarks
drwxr-xr-x - hbase supergroup 0 2020-04-28 01:06 /hbase
drwxr-xr-x - solr solr 0 2017-10-23 10:32 /solr
drwxrwxrwt - hdfs supergroup 0 2020-04-28 01:06 /tmp
drwxr-xr-x - hdfs supergroup 0 2017-10-23 10:31 /user
drwxr-xr-x - hdfs supergroup 0 2017-10-23 10:31 /var
在这需要注意一下,我们使用HDFS的全路径尝试一下
[root@quickstart Desktop]# hdfs dfs -ls hdfs://127.0.0.1:9000/
20/04/28 01:13:57 WARN ipc.Client: Failed to connect to server: quickstart.cloudera/127.0.0.1:9000: try once and fail.
java.net.ConnectException: Connection refused
结果发现执行报错,这是因为CDH中启动的Hadoop集群,namenode的端口号是8020,不是9000,这一点需要注意一下
[root@quickstart Desktop]# hdfs dfs -ls hdfs://127.0.0.1:8020/
Found 6 items
drwxrwxrwx - hdfs supergroup 0 2017-10-23 10:29 hdfs://127.0.0.1:8020/benchmarks
drwxr-xr-x - hbase supergroup 0 2020-04-28 01:06 hdfs://127.0.0.1:8020/hbase
drwxr-xr-x - solr solr 0 2017-10-23 10:32 hdfs://127.0.0.1:8020/solr
drwxrwxrwt - hdfs supergroup 0 2020-04-28 01:06 hdfs://127.0.0.1:8020/tmp
drwxr-xr-x - hdfs supergroup 0 2017-10-23 10:31 hdfs://127.0.0.1:8020/user
drwxr-xr-x - hdfs supergroup 0 2017-10-23 10:31 hdfs://127.0.0.1:8020/var
在这里同样可以访问HDFS的web界面和YARN的web界面
在这里访问HDFS的web界面我们需要使用50070端口,因为这里面的hadoop集群的版本是2.6的,在hadoop2.x中hdfs的web界面端口是50070
可以通过hadoop version命令查看版本号
[root@quickstart Desktop]# hadoop version
Hadoop 2.6.0-cdh5.13.0
Subversion http://github.com/cloudera/hadoop -r 42e8860b182e55321bd5f5605264da4adc8882be
Compiled by jenkins on 2017-10-04T18:08Z
Compiled with protoc 2.5.0
From source with checksum 5e84c185f8a22158e2b0e4b8f85311
This command was run using /usr/lib/hadoop/hadoop-common-2.6.0-cdh5.13.0.jar
YARN的web界面
剩下的就没什么区别了,基本使用都是一样的。
2、接下来看一下HDP
在vmware中打开HDP_3.0.1_vmware_181205.ova,会弹出如下界面
在这里面修改一下新虚拟机的存储路径
指定到这里,和之前安装的虚拟机放到同一个目录下
D:\Program Files (x86)\Virtual Machines\HDP_3.0.1_vmware_181205
然后点击导入按钮即可
这个导入需要消耗一些时间,大约需要5~10分钟。
导入进去以后,来编辑虚拟机设置
这里的内存默认就需要10G,CPU需要4个,磁盘空间需要117.2G[需要确保磁盘空间够用,最终会占用70多G],这些我们就不调整了,使用默认的即可。如果大家的笔记本资源不够的话,这个就不要启动了。
这里的ISO镜像需要使用centos7,因为这个虚拟机的操作系统就是centos7
CentOS-7-x86_64-DVD-1908.iso
开启虚拟机
在这个界面需要等待一段时间,半个小时左右
安装成功以后,会看到如下界面内容
注意:这个虚拟机里面其实安装了docker,在docker启动的容器中安装的HDP
根据里面的提示,访问http://192.168.182.130:1080界面
点击左侧的LAUNCH DASHBOARD
会进入如下窗口
用户名和密码都是:raj_ops 点击登录即可
登录之后会进入如下界面,在HDP中有一个ambari服务,这个服务提供的这个web界面 ,在这个界面中可以很方便的管理大数据组件,这里面就包含我们学习过的HDFS、MapRedcue、YARN。
其实前面的CDH中也有一个cm服务,cm服务启动之后也有如下类似的界面,默认情况下cm服务是没有启动的,启动的话需要至少10G资源,所以前面我就没有启动。
下面我们想在命令行下操作一下hdfs,但是这里面并没有命令行,但是它提供了一个基于界面的shell命令行
访问http://192.168.182.130:4200
打开之后让输入用户名和密码,用户名为root,默认密码为hadoop
接下来就可以操作了
这样也可以访问,端口还是8020
接下来我们访问一下HDFS的web界面和YARN的web界面
HDFS的web界面,虽然这里的Hadoop集群是3.1版本的,但是这里的访问端口还是50070,主要是HDP为了不影响大家的使用习惯
http://192.168.182.130:50070/
YARN的web界面,端口是8088
http://192.168.182.130:8088