一、实现功能
添加hadoop常见组件,hdfs,yarn,hive,zookeeper,spark,flume,oozie等。
二、添加hdfs
1.点击添加hdfs
然后添加hdfs
2.namenode/secondarynamenode/datanode的资源分配
3.之后配置
4.等待部署
三、yarn
1.添加yarn
2.选择机器
3.默认配置
4.成功结果
5.测试
上传hfds需要权限,修改hfds检查权限见blog:https://blog.csdn.net/u010886217/article/details/85345729
四、按装zookeeper
1.添加服务
2.然后
3.选择3台
4.配置默认
5.等待配置完成
6.重新刷新页面即ok
五、hive配置
1.添加hive
2.选择有zookeeper的hdfs
3.配置server都在hadoop第一台
4.报错
原因:没有hive数据库,
解决:创建数据库在hadoop,见blog:部署CM报错(5):hive配置连接mysql报错:Able to find the Database server, but not the specified database.
5.metastore服务
6.等待安装成功
7.优化配置-显示列名和库名:
(1)添加配置
添加
保存
(2)重启配置
观察改变,并且重启
结果:hadoop02上
六、Hbase
1.安装
2.选择分配
主要是hadoop02,因为hadoop已经基本没内存了。
3.存储路径等基本配置(默认)
5.测试
进入hbase shell客户端,在第二台hadoop02
hbase shell
七、Sqoop
1.安装服务
安装sqoop2
2.安装在hadoop02
3.配置默认
4.等待结果(成功~)
5.测试
sqoop list-databases --connect jdbc:mysql://hadoop:3306 --username root --password 123456
有报错
解决:blog【部署CM报错(6):安装sqoop后,测试连接mysql报错java.lang.RuntimeException: Could not load db driver class: com.mysql.】
八、Flume
1.安装服务
2.选择较多的依赖
选择主机,选择02,03,因为因为1内存快满了
3.添加完成
4.安装完成默认是关闭的,需要手动 启动
5.修改配置文件和代理名称
6.启动flume,然后会收集信息。
7.测试
(1)修改配置文件
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# Describe/configure the source
a1.sources.r1.type = exec
a1.sources.r1.command = tail -F /opt/cloudera-manager/cm-5.10.2/log/cloudera-scm-agent/supervisord.log
a1.sources.r1.channels = c1
# Describe the sink
a1.sinks.k1.type = hdfs
a1.sinks.k1.hdfs.path = hdfs://hadoop:8020/cmagent/logs/%Y-%m-%d
# default:FlumeData
a1.sinks.k1.hdfs.filePrefix = cmagent-
# useLocalTimeStamp set true
a1.sinks.k1.hdfs.useLocalTimeStamp = true
a1.sinks.k1.hdfs.rollInterval = 0
a1.sinks.k1.hdfs.rollCount = 0
# block 128 120 125
a1.sinks.k1.hdfs.rollSize = 10240
a1.sinks.k1.hdfs.fileType = DataStream
#a1.sinks.k1.hdfs.round = true
#a1.sinks.k1.hdfs.roundValue = 10
#a1.sinks.k1.hdfs.roundUnit = minute
# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
(2)修改代理为a1
(3)启动flume
(4)等待结果hdfs上有结果
九、Oozie
1.安装
2.添加依赖,选择最多的
3.安装位置hadoop02,第二台
4.数据库设置
Oozie自动在mysql中创建了oozie数据库,所以这个可以直接连接!不用自己创建。但是会报错,在后面会解决。
5.默认配置
6.等待安装
(1)报错
Creating Oozie Database Tables
Failed to create Oozie database tables. Oozie Dec 30, 1:25:40 PM 3.07s
Create Oozie Database Tables
Process oozie-OOZIE-SERVER-createdbtables (id=89) on host hadoop02 (id=1) exited with 1 and expected 0
(2)原因
Oozie自动创建mysql的数据库oozie,里面有表,导致oozie重新创建表的时候失败。需要删除之前的oozie数据库,然后重建oozie。
(3)解决:
进入mysql数据库,删除oozie数据库,重新新建一个
mysql> drop database oozie;
Query OK, 12 rows affected (0.24 sec)
mysql> create database oozie;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
(4)重启启动
即可!
十、安装hue
1.安装服务
2.选择较多服务的
3.选择服务器位置
选择hadoop02
4.配置数据库mysql
hue数据库不需要手动创建,可以直接连接成功!
5.然后等待成功~
6.进入hue测试
(1)用户名和密码hue和hue
(2)查看hive数据库
(3)查看hbase数据库
报错:
HBase Thrift 1 server cannot be contacted: Could not connect to hadoop02:9090
(a)原因
hbase的thrift server被down掉了,如下图
(b)解决
启动:thrift server
结果:
(c)重新连接hbase
成功
(4)连接sqoop
成功
十一、spark创建
1.创建服务
选择yarn,因为standalone的会报错
2.机组分配
3.成功