淘先锋技术网

首页 1 2 3 4 5 6 7

文档编写目的

在前面的文章中,Fayson介绍了《0733-7.0.3-如何在Redhat7.6中安装CDP DC7.0.3》和《0750-7.0.3-如何在CDP DC7.0.3集群部署Flink1.9.1》,基于前面的集群环境,本篇文章Fayson主要介绍如何在CDP DC7.0.3集群安装Ranger。

  • 文档概述

1.如何在CDP DC集群安装启用Ranger服务

2.运行一个Flink示例验证

  • 测试环境

1.操作系统Redhat7.2

2.CDP DC7.0.3

3.使用root用户操作

Ranger安装前准备

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

innodb_file_per_table = ONinnodb_file_format = Barracudainnodb_large_prefix = ON
2d262d21636bdb367dad8e00fee2bd4f.png

完成修改后重启MySQL数据库

systemctl restart mariadb

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

2.在MySQL数据库中为Ranger创建元数据库

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

3.在Ranger服务所在服务器安装MySQL驱动

将MySQL驱动拷贝至/user/share/java目录下并创建软连

ln -s mysql-connector-java-5.1.34.jar mysql-connector-java.jar
0c3f4defb8bf23553fc1acced2ab4b2f.png

4.确保当前集群是已安装Solr

97b3d631fb62ded51ff28da8a477fdbc.png

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

Ranger安装

1.选择我们要安装Ranger的Cluster点击“添加服务”菜单

a1c879d7d4115f05d794f33b90a41cb8.png

2.选择Ranger服务

2248ed2c9d97b02a305f23a4ee728258.png

3.自定义角色分配

ac1e710905f2bb950b988b069e2ae655.png

4.点击“继续”,输入Ranger的Admin、Usersync、Tagsync以及Database信息

2b71ff455018be6e3213e47524af5cc4.png
68eb89136cfc74dd53e863604ad0cc01.png

注意:Admin、Usersync、Tagsync几个用户的密码必须包含一个数字和一个字母

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

801edeb9351cc01caeaf4c50157d59bd.png

6.点击“继续”

1824669fe85bde4b91508dc88b365229.png

7.点击“完成”,回到CM主页面

eb25e1af9ecd028baf1aa4c7f0cc9361.png

8.根据CM提示重启过期服务

2e44c7428cf44bd64918a45b22e0955a.png

重启成功

e851d0a3168032ce3826f7fd98bcb421.png

9.完成后回到CM主页,至此就完成了Ranger服务的安装

0aa2dec2b3b93b06f6fc7c82425682ab.png

总结

1.Ranger服务的审计信息是存储在Solr服务中,所以在安装Ranger前需要先安装Solr服务。

2.在初始化Ranger元数据库操作前,需要先将MySQL数据库的/etc/my.cnf配置中添加innodb_large_prefix、innodb_file_per_table和innodb_file_format参数,否则会导致初始化失败。

3.文章中主要讲Ranger的安装,并不会涉及到与相应服务的集成及使用, 在后续的文章Fayson为一个个组件的讲解集成及使用。

问题汇总

1.在初始化Ranger元数据库时报如下错误

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytesSQLException : SQL state: 42000 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes ErrorCode: 10712020-02-14 10:20:46,665  [E] ranger_core_db_mysql.sql file import failed!2020-02-14 10:20:46,666  [I] Unable to create DB schema, Please drop the database and try again2020-02-14 10:20:46,666  [JISQL] /usr/java/jdk1.8.0_181-cloudera/bin/java  -cp /usr/share/java/mysql-connector-java.jar:/opt/cloudera/parcels/CDH-7.0.3-1.cdh7.0.3.p0.1635019/lib/ranger-admin/jisql/lib/* org.apache.util.sql.Jisql -driver mysqlconj -cstring jdbc:mysql://cdh1.prest.com/ranger -u 'rangeradmin' -p '********' -noheader -trim -c ;  -query "delete from x_db_version_h where version = 'CORE_DB_SCHEMA' and active = 'N' and updated_by='cdh2.prest.com';"2020-02-14 10:20:47,106  [E] CORE_DB_SCHEMA import failed!
16ec5ce4e3d41f059c91ee10cabb248d.png

解决方法:

在MySQL的配置文件/etc/my.cnf中增加如下配置:

innodb_file_per_table = ONinnodb_file_format = Barracudainnodb_large_prefix = ON
afe3018ca204d1a1d8574e52018afb13.png