Ranger安装和使用

news2024/12/24 21:51:04

Ranger部署

1.准备
1.1 编译

Ranger编译(已经编译过的话,直接看1.2)

1.1.1 准备到Ranger官网下载ranger的源码:http://ranger.apache.org/download.html

1.1.2 Ranger编译的过程实在非虚拟机环境下完成的,下载好ranger源码后并解压,然后进入源码解压目录执行如下命令进行编译:

cd /Users/fan/Downloads/apache-ranger-2.0.0 mvn clean compile package assembly:assembly install -Dmaven.test.skip=true mvn clean install -DskipTests -Denforcer.skip=true

1.1.3 将编译好的tar包上传到bigdb03

rsync -r share/ root@172.16.1.228:/data/fan/install/native/10.ranger/package/

1.2 数据库环境准备

1.2.1 登录mysql (之前安装hive时候装的那个mysql)

[root@bigdb01 ~]# docker exec -it mysql-hive bash root@bigdb01:/# mysql -uroot -phz310012

1.2.2 创建Ranger存储数据的数据库

mysql> create database ranger;

1.2.3 创建用户

mysql> grant all privileges on ranger.* to ranger@'%' identified by '@#QWEASD123';
2.安装RangerAdmin
2.1 解压软件
[root@bigdb01 ~]# rsync root@bigdb03:/data/fan/install/native/10.ranger/package/ranger-2.0.0-admin.tar.gz /opt/software 
[root@bigdb01 ~]# mkdir /opt/module/ranger 
[root@bigdb01 ~]# tar -zxvf /opt/software/ranger-2.0.0-admin.tar.gz -C /opt/module/ranger/
2.2 配置install.properties文件
[root@bigdb01 ~]# vim /opt/module/ranger/ranger-2.0.0-admin/install.properties

修改以下内容:

2.3 在root用户下,执行安装

注意:ranger2.0需要用python2执行,RHEL9自带python3.9,所以需要自己安装python2

[root@bigdb01 ~]# cd /opt/module/ranger/ranger-2.0.0-admin/ [root@bigdb01 ranger-2.0.0-admin]# ./setup.sh

出现以下字样,表示安装成功

2.4 创建ranger的配置文件软连接到web下

[root@bigdb01 ranger-2.0.0-admin]# ./set_globals.sh usermod: no changes [2023/08/18 15:53:49]: [I] Soft linking /etc/ranger/admin/conf to ews/webapp/WEB-INF/classes/conf

2.5 启动 RangerAdmin

2.5.1 配置RangerAdminweb应用的配置信息

[root@bigdb01 ~]# cd /etc/ranger/admin/conf/ [root@bigdb01 conf]# vim ranger-admin-site.xml

修改内容如下

2.5.2 启动

[root@bigdb01 conf]# ranger-admin start

启动成功

2.5.3 查看启动后的进程

[root@bigdb01 conf]# jps 47556 EmbeddedServer 47621 Jps

2.5.4 停止 ranger

[root@bigdb01 conf]# ranger-admin stop

2.6 登录管理员用户

默认admin,密码@#QWEASD123

3.安装RangerUsersync
3.1 解压

[root@bigdb01 ~]# rsync root@bigdb03:/data/fan/install/native/10.ranger/package/ranger-2.0.0-usersync.tar.gz /opt/software [root@bigdb01 ~]# tar -zxvf /opt/software/ranger-2.0.0-usersync.tar.gz -C /opt/module/ranger/

3.2 配置

[root@bigdb01 software]# cd /opt/module/ranger/ranger-2.0.0-usersync/ [root@bigdb01 ranger-2.0.0-usersync]# vim install.properties

配置内容如下

3.3 使用root用户进行安装

[root@bigdb01 ranger-2.0.0-usersync]# ./setup.sh

出现如下信息,说明安装成功

3.4 RangerUsersync 启动

3.4.1 启动前

3.4.2 使用root启动

[root@bigdb01 ranger-2.0.0-usersync]# ./ranger-usersync-services.sh start

启动后再次查看用户信息

4.Ranger Hive-plugin
4.1 安装
4.1.1 解压软件
[root@bigdb01 ~]# rsync root@bigdb03:/data/fan/install/native/10.ranger/package/ranger-2.0.0-hive-plugin.tar.gz /opt/software 
[root@bigdb01 ~]# tar -zxvf /opt/software/ranger-2.0.0-hive-plugin.tar.gz -C /opt/module/ranger/
4.1.2 配置软件

[root@bigdb01 ~]# vim /opt/module/ranger/ranger-2.0.0-hive-plugin/install.properties

配置内容如下

4.1.3 引用hive配置文件

将hive的配置文件作为软连接安装到 Ranger Hive-plugin 目录下

[root@bigdb01 ranger-2.0.0-hive-plugin]# ln -s /opt/module/hive/conf/ conf

4.1.4 启动

使用root用户启动Ranger Hive-plugin

[root@bigdb01 ranger-2.0.0-hive-plugin]# ./enable-hive-plugin.sh

4.1.5 重启hive

[root@bigdb01 ranger-2.0.0-hive-plugin]# hiveservice.sh restart

4.2 权限管理
[root@bigdb01 ~]# beeline 
beeline> !connect jdbc:hive2://bigdb01:10000 
Connecting to jdbc:hive2://bigdb01:10000 
Enter username for jdbc:hive2://bigdb01:10000: admin 
Enter password for jdbc:hive2://bigdb01:10000: hz310012 
Connected to: Apache Hive (version 3.1.2) Driver: Hive JDBC (version 3.1.2) Transaction isolation: TRANSACTION_REPEATABLE_READ 0: 
jdbc:hive2://bigdb01:10000>

如果报以下错误,要修改/tmp权限

4.2.1 读写权限

为zion用户配置dd库student表的读的权限。

[root@bigdb01 ~]# beeline 
beeline> !connect jdbc:hive2://bigdb01:10000 
Enter username for jdbc:hive2://bigdb01:10000: zion 
Enter password for jdbc:hive2://bigdb01:10000: **** 
0: jdbc:hive2://bigdb01:10000> use dd; 
0: jdbc:hive2://bigdb01:10000> select * from student; 
0: jdbc:hive2://bigdb01:10000> select sname,sbirth from student;

看下效果

4.2.2 脱敏操作

注意要配合的用户或者用户组必须已具备查看权限

看下效果

4.2.3 行级别过滤

注意 过滤条件中的字段必须是当前用户有权限查看的。

看下效果

5.Ranger yarn-plugin
5.1安装
5.1.1 解压软件
[root@bigdb01 ~]# rsync root@bigdb03:/data/fan/install/native/10.ranger/package/ranger-2.0.0-yarn-plugin.tar.gz /opt/software 
[root@bigdb01 ~]# tar -zxvf /opt/software/ranger-2.0.0-yarn-plugin.tar.gz -C /opt/module/ranger/
5.1.2 修改配置文件
[root@bigdb01 ~]# cd /opt/module/ranger/ranger-2.0.0-yarn-plugin/ 
[root@bigdb01 ranger-2.0.0-yarn-plugin]# vim install.properties

5.1.3 使yarn-plugin生效

[root@bigdb01 ranger-2.0.0-yarn-plugin]# ./enable-yarn-plugin.sh

5.1.4 重启yarn

[root@bigdb01 ~]# hdp.sh stop [root@bigdb01 ~]# hdp.sh start

5.1.5 页面配置

4.Ranger hdfs-plugin
4.1安装
4.1.1 解压
[root@bigdb01 ~]# rsync root@bigdb03:/data/fan/install/native/10.ranger/package/ranger-2.0.0-hdfs-plugin.tar.gz /opt/software 
[root@bigdb01 ~]# tar -zxvf /opt/software/ranger-2.0.0-hdfs-plugin.tar.gz -C /opt/module/ranger/
4.1.2 配置

[root@bigdb01 ~]# vim /opt/module/ranger/ranger-2.0.0-hdfs-plugin/install.properties

修改一下内容

4.1.3 使hdfs-plugin生效

[root@bigdb01 ranger-2.0.0-hdfs-plugin]# ./enable-hdfs-plugin.sh

重启hadoop

[root@bigdb01 ~]# hdp.sh stop [root@bigdb01 ~]# hdp.sh start

4.2 测试

使用root在hdfs上创建一个文件夹rangertest,并且用root用户上传一个文件到该文件夹下,切换为zion用户去查看数据,可以查看,上传文件到改文件夹下,失败!

4.2.1 上传文件

创建目录 /rangertest

[root@bigdb01 ~]# hdfs dfs -mkdir /rangertest [root@bigdb01 ~]# hadoop fs -ls /

上传文件student.csv

[root@bigdb01 ~]# hdfs dfs -put /data/dd/student.csv /rangertest 
[root@bigdb01 ~]# hadoop fs -ls /rangertest

4.2.2 用zion用户操作

切换zion用户,并查看文件内容

[root@bigdb01 ~]# su zion [root@bigdb01 ~]# hdfs dfs -cat /rangertest/student.csv

通过用户zion上传文件到 /rangertest目录下

[root@bigdb01 ~]# su zion 
[zion@bigdb01 root]$ hdfs dfs -put /data/dd/teacher.csv /rangertest

4.2.3 页面配置hdfs-plugin参数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1275636.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

简单了解下IP的全球划分【笔记】

国际互联网号码分配机构 (The Internet Assigned Numbers Authority,简称IANA)。它是互联网名称与数字地址分配机构(The Internet Corporation for Assigned Names and Numbers,简称ICANN)旗下的一个机构,主…

wpf devexpress 使用IDataErrorInfo实现input验证

此处下载源码 当form初始化显示,Register按钮应该启动和没有输入错误应该显示。如果用户点击注册按钮在特定的输入无效数据,form将显示输入错误和禁用的注册按钮。实现逻辑在标准的IDataErrorInfo接口。请查阅IDataErrorInfo接口(System.Com…

机器学习(2)回归

0.前提 上一期,我们简单的介绍了一些有关机器学习的内容。学习机器学习的最终目的是为了服务我未来的毕设选择之一——智能小车,所以其实大家完全可以根据自己的需求来学习这门课,我做完另一辆小车后打算花点时间去进行一次徒步行&#xff0…

【ONNX】多个ONNX 模型合并为一个模型

ONNX 模型直接合并,输入和输出不一致也可以,各自输入输出各自的 示例代码 import onnxruntime# version : 1.16.0 import onnxdef log_model(model):model_1_outs {o.name for o in model.graph.output}model_1_ins {i.name for i in model.graph.in…

【Web】NISACTF 2022 个人复现

目录 ①easyssrf ②babyupload ③ level-up ④bingdundun~ 明天就新生赛了,练套题保持下手感吧 (文章只选取了一部分) ①easyssrf 输入/flag 输入file:///fl4g 访问/ha1x1ux1u.php ?filephp://filter/convert.base64-encode/resource/…

PyQt基础_012_对话框类控件QInputDialog

基本操作 import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class InputdialogDemo(QWidget):def __init__(self, parentNone):super(InputdialogDemo, self).__init__(parent)layout QFormLayout()self.btn1 QPushButton(&qu…

YOLOv8改进 | 2023 | AKConv轻量级架构下的高效检测(可变核卷积)

一、本文介绍 本文给大家带来的改进内容是AKConv(可变核卷积)是一种创新的卷积神经网络操作,它旨在解决标准卷积操作中的固有缺陷(采样形状是固定的),AKConv的核心思想在于它为卷积核提供了任意数量的参数…

Android超简单实现-即时更新Toast(可直接复制)

效果 实现 第一步、封装个工具类ToastUtil.class(可直接复制拿走) public class ToastUtil {private static Toast mToast null; // toast对象,用于判断是否第一次使用/*** 即时更新Toast* param content content* param message 消息内容…

FLASK博客系列4——再谈路由

最近好像拖更有点久了。抱歉抱歉~ 今天我们继续来聊聊路由(其实就是我上次偷懒剩下一点没讲完)。 通过上次的文章,我们基本了解了Flask中的路由,是不是比较简单呢?别急,今天来点猛料。 一、路由之HTTP方法绑…

在CentOS系统下的Tomcat8.5或9安装SSL证书

您可以在CentOS系统下的Tomcat服务器安装SSL证书,实现通过HTTPS安全访问Web服务。本文介绍如何CentOS系统下Tomcat 8.5或9安装SSL证书。 环境准备 操作系统:CentOS 7.6 64位 Web服务器:Tomcat 8.5或9 说明 Tomcat服务器需要提前安装JDK环…

C++基础 -25- 动态多态

静态多态在程序编译的时候,确定将要执行的状态。 动态多态在程序运行的时候,才能确定执行的状态。 下面举例实现动态多态 work函数接口通过传参不同做不同的工作 #include "iostream"using namespace std;class person {public:person(){}vi…

10个让UI设计更轻松的工具

UI设计软件对设计师来说非常重要。UI设计工具的使用是否直接影响到最终结果的质量,然后有人会问:UI界面设计使用什么软件?这里有一些UI设计师和那些对UI设计感兴趣的朋友列出了10个易于使用和免费的UI设计软件。 即时设计 即时设计是一款免…

《曾国藩传》:崇尚笨拙的人生哲学

哈喽啊,大家好,我是雷工! 以前读书喜欢读小说,喜欢看《我从你的全世界路过》《云间有个小卖铺》这些轻松的小说,读起来很轻松。 随着年龄增长,阅历的增加开始喜欢读历史,读人物传记,…

【涂鸦T2-U】2、添加光感bh1750

文章目录 前言一、基础介绍二、电路图2.1 电路图12.2 电路图2——实际采用 三、代码四、编译五、刷机六、测试结果小结 前言 本章介绍如何在涂鸦T2-U开发板上添加光感bh1750驱动并实现定时读取数据。 一、基础介绍 BH1750( GY-302 )光照传感器 这篇文章有bh1750的基础介绍。…

关于 ls -s 输出文件大小的单位问题的讨论

自己看书正好看到这里,正纳闷呢,上网查了下,发现不是我自己在为这个问题感到困惑。 有个大哥提出一个问题: 问题标题: ls -s的单位到底是什么? man ls -s, --size print the alloca…

库位角点检测之Centernet/CornerNet算法

1.CornerNet CornerNet 那么我们从bounding box左上角(top-left corner)看物体。视线横着的话,物体就在视线的下面(那么视线所在位置为the topmost boundary of an object)。视线竖着的话,物体就在视线的右边,那么视线…

CCFCSP试题编号:202009-2试题名称:风险人群筛查

#include <iostream> using namespace std;//判断是否在区域 bool isIn(int xl, int yd, int xr, int yu, int x, int y) {if ((x > xl && x < xr) && (y > yd && y < yu)){return true;}return false; }struct position {int a, b;…

【linux】日志有哪些

Linux系统日志主要有以下几种类型&#xff1a; 内核及系统日志&#xff1a;这种日志数据由系统服务rsyslog统一管理&#xff0c;根据其主配置文件/etc/rsyslog.conf中设置决定内核消息及各种系统程序消息记录到什么位置。/var/log/message&#xff1a;该日志文件存放了内核消息…

RDD2022提交官网得到F1-Score的步骤【自己摸索的,不保证对和全面,返回结果是F1-Score: India=nan】

文章目录 提交地址RDD2022提交的步骤1. 进入到官网2. 注册账号&登陆账号3. 提交界面4. 代码&#xff0c;制作符合要求的txt5. 提交后返回的结果 提交地址 RDD2022提交地址&#xff1a;https://crddc2022.sekilab.global/submissions/ RDD2020提交地址&#xff1a;https://…

nnDetection简明安装和训练流程(Windows环境)

安装 首先&#xff0c;官方不建议Windows安装&#xff0c;推荐Linux Docker 我的环境&#xff1a; ● 操作系统平台&#xff1a; Windows 10 ● Python&#xff1a; 3.8 ● Torch/TorchVision&#xff1a; 1.10.1cu102/ 0.11.1 ● GPU&#xff1a; Nvidia RTX 2080 Ti 11G…