CDP7 Hadoop&Flink集群详细部署

1.文档编写的目的

安装CDH集群及相关安装配置记录。

2.集群配置服务器说明

本次安装共申请了6台服务器,分别用于管理节点、计算节点和边缘节点,
服务器列表如下:

IP地址HOSTNAME说明
172.xx.xx.13qitv3668CM NameNode
172.xx.xx.14qitv3669NameNode
172.xx.xx.15qitv3670Edge Node
172.xx.xx.16qitv3671DataNode
172.xx.xx.20qitv3666DataNode
172.xx.xx.22qitv3667DataNode

服务器OS版本RedHat7.6

3.前置准备

前置操作参考《CDH6.3.3详细部署》

建立CM,Hive等需要的表

MariaDB [(none)]> create database metastore default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'hive'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON metastore. * TO 'hive'@'%';
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> create database cm default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'cm'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON cm. * TO 'cm'@'%';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)


MariaDB [(none)]> create database rm default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'rm'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON rm. * TO 'rm'@'%';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> create database hue default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'hue'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON hue. * TO 'hue'@'%';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)


MariaDB [(none)]> create database oozie default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'oozie'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON oozie. * TO 'oozie'@'%';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> create database ranger default character set utf8;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'rangeradmin'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON ranger. * TO 'rangeradmin'@'%';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

4.Cloudera Manager安装

4.1 配置本地repo源

1、将Cloudera Manager安装需要的6个rpm包以及一个asc文件下载到本地,放在同一目录,执行createrepo命令生成rpm元数据。

createrepo .

2、验证浏览器能否正常访问

http://172.xx.xx.13/cm7.14-el7/

4.2 制作Cloudera Manager的repo源

#cd /etc/yum.repos.d/
#vim cm.repo
[cmrepo]
name = cm_repo
baseurl = http://172.xx.xx.13/cm7.1.4-el7
enable = true
gpgcheck = false

yum repolist

4.3 验证安装JDK

yum -y install openjdk8-8.0+232_9-cloudera

4.4 安装Cloudera Manager Server

1、通过yum安装Cloudera Manager Server

yum -y install cloudera-manager-server

2、初始化数据库

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm cm password

3、 启动Cloudera Manager Server

systemctl start cloudera-scm-server
systemctl status cloudera-scm-server

4、检查端口是否监听

netstat -lnpt | grep 7180

5、通过http://172.xx.xx.13:7180/cmf/login访问CM

注意:完全启动成功需要几分钟时间。

5 CDH安装

CDH安装操作参考《CDH6.3.3详细部署》

6 安装Ranger服务

CDP版本之后集群的权限控制是用Ranger来管理的,它的功能比Sentry更加强大,控制权限的粒度也更精细。Ranger可通过界面化的操作来给用户赋权。

1、在MySQL的配置文件/etc/my.cnf中添加如下内容

innodb_file_per_table = ON
innodb_file_format = Barracuda
innodb_large_prefix = ON
在这里插入图片描述

2、完成修改后重启MySQL数据库

systemctl restart mariadb

注意:该步操作主要是为了解决Ranger初始化元数据库时索引长度超过默认值的问题,指定 innodb_large_prefix参数的同时必须指定innodb_file_per_table和innodb_file_format参数。

3、在MySQL数据库中为Ranger创建元数据库

create database ranger default character set utf8;
CREATE USER ‘rangeradmin’@‘%’ IDENTIFIED BY ‘password’;
GRANT ALL PRIVILEGES ON ranger.* TO ‘rangeradmin’@‘%’;
FLUSH PRIVILEGES;

不设置log_bin_trust_function_creators参数,会导致rangeradmin启动不了,报错ranger import failed

show variables like ‘%func%’;
set global log_bin_trust_function_creators=1;

在这里插入图片描述

5、确保所在Ranger服务所在服务器安装MySQL驱动
在这里插入图片描述
6、确保当前集群是已安装Solr
在这里插入图片描述

注意:Solr Server安装在DataNode服务所在节点上。

7、选择我们要安装Ranger的Cluster点击“添加服务”菜单
在这里插入图片描述

8、自定义角色分配
在这里插入图片描述

9、 数据库设置
在这里插入图片描述10、 点击“继续”,输入Ranger的Admin、Usersync、Tagsync以及Database信息(密码为gtmc@123456)
在这里插入图片描述

11、点击“继续”,Ranger首次运行生成服务Principal和初始化数据库

在这里插入图片描述
12、击“完成”,回到CM主页面
在这里插入图片描述

13、重启集群
在这里插入图片描述
在这里插入图片描述

7 FLink部署

7.1 配置Flink Parcel包

1、 准备Flink1.10.0的csd文件,并放置到Cloudera Manager Server的/opt/cloudera/csd目录。然后重启Cloudera Manager Server服务。(注意jar包的权限)
在这里插入图片描述
2、下载Flink1.10.0的parcel并部署到httpd服务的/var/www/html/flink1.10.0目录下
在这里插入图片描述
3、 重启Httpd服务完成以后,可以通过页面查找到Flink Parcel包。
在这里插入图片描述

4、登录CM,在左侧菜单栏点击“Parcel”按钮,进入Parcles管理界面进行配置
在这里插入图片描述

点击“Parcel Repositories & Network Settings”菜单配置Flink的本地parcel库
在这里插入图片描述

完成配置后,点击“Save & Verify Configuration”,关闭配置配置界面可以看到Flink的信息
在这里插入图片描述

分别进行 “下载、分配、激活”操作,完成后显示如下:
在这里插入图片描述

7.2 添加Flink服务

1、进入CM主页点击“添加服务”。

在这里插入图片描述
2、选择添加Flink服务,点击继续。
在这里插入图片描述
3、选择Flink Dashboard以及Gateway节点,点击继续
在这里插入图片描述

4、点击继续
在这里插入图片描述

5、 等待Flink 启动成功,完成后点击继续
在这里插入图片描述

6、安装完成,点击完成回到CM主页
在这里插入图片描述

发现Flink的状态为灰色,CMS有重启提示,按照提示重启CMS服务,重启过程略。重启完成后显示Flink服务正常。
在这里插入图片描述

修改Dashboard服务节点,由于在节点端口冲突,将Dashboard端口改为8083
在这里插入图片描述
在这里插入图片描述

8 集群功能验证

集群服务功能验证参考《CDH6.3.3详细部署》

9 Flink作业验证

hadoop fs -mkdir -p wordcount/input
hadoop fs -rmr wordcount/output
hadoop fs -put wordcount.txt wordcount/input
flink run -m yarn-cluster -yjm 1024 -ytm 1024 /opt/cloudera/parcels/FLINK/lib/flink/examples/streaming/WordCount.jar --input hdfs:///user/cdhadmin/wordcount/input/wordcount.txt --output hdfs:///user/cdhadmin/wordcount/output

在这里插入图片描述

任务运行成功
在这里插入图片描述

注意:Dashboard显示提交的任务必须要确保有HDFS/Yarn/FLink的Gateway角色才可以

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值