当前cdh版本为5.2.0,且通过cloudera manger来管理集群。
选择sentry配置方式,file or db。
file形式(sentry-provider.ini),存于hdfs上。
选择group mapping方式,有HadoopGroupResourceAuthorizationProvider(正式环境中)、LocalGroupResourceAuthorizationProvider(测试环境中)。
经过测试,Hadoop groups需要使用将hadoop用户和用户组通过LDAP管理[url]configure ldap group mapping[/url],但配置后hdfs启动异常,并且若不配置ldap mapping,sentry provider file没有效果,所有表和库都看不到。
采用简单的 LocalGroupResourceAuthorizationProvider测试成功。
相关步骤参看cm配置方法
db形式,cloudera manager提供了sentry service即sentry store。
安装sentry service并配置相关的数据库(后续的权限信息都存于这些表),配置sentry如上的cm配置方法不需要配置。
sudo su hive
beeline
!connect jdbc:hive2://172.20.0.74:10000/data_system;principal=hive/slave-74@YEAHMOBI.COM
(hive kerberos 账户和密码)(据说hive0.13版本集成ldap失败,新的cdh5.3可行,所以采用kerberos认证)
create role admin_role;
GRANT ALL ON SERVER server1 TO ROLE admin_role;
GRANT ROLE admin_role TO GROUP hive;
create role bi_role;
GRANT ALL ON DATABASE data_system TO ROLE bi_role;
GRANT ROLE bi_role TO GROUP bi;
如上创建了两个角色,admin_role管理员权限,并授权给hive,bi_role对db data_system的所有权限,授权给bi用户组。
sudo su bi
beeline -u "jdbc:hive2://172.20.0.74:10000/data_system;principal=hive/slave-74@YEAHMOBI.COM"
(bi kerberos用户及密码 或者优先kinit bi/keytab)
show databases;
| database_name |
+----------------+--+
| data_system |
| default |
beeline shell帮助文档
新建用户
在所有节点中运行
useradd bi -u 1001 (id大于1000)
usermod -a -G bi bi
相关kerberos命令
addprinc -randkey krbtgt/client-75@YEAHMOBI.COM
addprinc -randkey host/client-75@YEAHMOBI.COM
addprinc -randkey HTTP/client-75@YEAHMOBI.COM
addprinc -randkey bi/client-75@YEAHMOBI.COM
addprinc -randkey bi/slave-74@YEAHMOBI.COM
addprinc bi@YEAHMOBI.COM
xst -norandkey -k bi.keytab host/client-75@YEAHMOBI.COM
xst -norandkey -k bi.keytab HTTP/client-75@YEAHMOBI.COM
xst -norandkey -k bi.keytab bi/client-75@YEAHMOBI.COM
创建hdfs目录和授权
sudo su hdfs
hadoop fs -mkdir /user/bi
hadoop fs -chmod -R 755 /user/bi
hadoop fs -chown -R bi:bi /user/bi
mr测试
sudo su bi
kinit -kt bi.keytab bi/client-75@YEAHMOBI.COM
hadoop jar /opt/cloudera/parcels/CDH-5.2.0-1.cdh5.2.0.p0.36/jars/hadoop-examples.jar pi 10 1000
beeline ldap测试:
!connect jdbc:hive2://172.20.0.74:10000/data_system
输入ldap的bi账户和密码
show databases成功
参考blog:
http://www.cloudera.com/content/cloudera/en/documentation/core/v5-2-x/topics/cm_sg_ldap_grp_mappings.html#xd_583c10bfdbd326ba--6eed2fb8-14349d04bee--7bc3
http://www.cloudera.com/content/cloudera/en/documentation/core/v5-2-x/topics/sg_policy_cm_config.html
http://blog.javachen.com/2014/11/14/config-impala-and-hive-with-sentry/
分享到:
相关推荐
然后,更新`config/services.php`文件,添加Sentry配置: ```php 'sentry' => [ 'dsn' => env('SENTRY_DSN'), 'environment' => env('APP_ENV'), ], ``` 接下来,我们需要配置Laravel的日志处理器以使用Sentry。...
该实用程序库实现了我们的标准Bunyan + Sentry配置 要求 最低Node.js版本:4 安装 npm install --save chpr-logger 配置 钥匙 必需的 描述 LOGGER_NAME 是的 设置记录器的名称。 LOGGER_LEVEL 是的 设置日志的...
2. 创建一个Sentry配置,包括Dsn(Data Source Name)和项目ID,这可以在Sentry的项目设置中找到。 3. 编写Rqalpha Mod,导入`raven`库,并在初始化时配置Sentry客户端。确保在捕获异常时调用`client....
开发者可以通过调用`init`方法配置Sentry,如设置项目DSN(Data Source Name)、调整日志级别、定义自定义处理程序等。此外,SDK还支持自动错误捕获,可以捕获和报告未处理的JavaScript异常,以及通过`...
// 其他Sentry配置选项 } } } ``` 3. **捕获错误**:一旦配置完成,`@nuxtjs/sentry`模块会自动在你的Nuxt应用中捕获和发送错误到Sentry。 ### 使用场景 - **生产环境错误监控**:在生产环境中,你可以实时...
大数据技术之CM6.3.1+CDH6.3.2配置Hue+Sentry权限管理 本文档主要介绍了CDH6.3.2配置Hue+Sentry权限管理的步骤,旨在帮助读者了解大数据技术中的权限管理机制。 一、Sentry概述 Sentry是Apache开源组件,提供了细...
1. **SQL Sentry Console**:用户界面,用于配置、监控和管理SQL Sentry的各种功能。 2. **SQL Sentry Server**:执行数据收集、分析及通知发送的核心服务。 3. **Performance Advisor**:提供性能建议和优化策略的...
同步Gradle后,就可以在代码中初始化Sentry客户端并配置服务器URL: ```java import io.sentry.Sentry; public class Application extends android.app.Application { @Override public void onCreate() { ...
CDH开启Kerberos+Sentry权限控制-实施配置指南,完整的详细教程
7. **本地部署与运行**:如果你想要在本地运行Sentry,可能还需要额外的配置和依赖。通常,`README`文件会提供有关如何启动服务的详细说明。 8. **贡献代码**:如果你打算对Sentry进行修改并提交代码,记得先阅读...
1. **配置参数**:设置`sentry.hive.testing.mode`为`true`,以启用Sentry与Hive的集成。 2. **启用Sentry服务**:配置Hive使用Sentry服务,以进行权限验证。 3. **关闭用户模拟**:关闭Hive的用户模拟功能,确保...
例如,你可以为严重级别的错误(如error和critical)配置Sentry处理程序,而将低级别的日志(如debug和info)写入文件或控制台。 集成步骤大致如下: 1. 使用Composer安装`laravel-monolog-sentry`库: ``` ...
绑架中间件哨兵 [已弃用]由于Strapi的官方Sentry插件已发布,因此该软件包将不再...将Sentry配置添加到config/middleware.js文件: 注意:该中间件使用@ sentry / node,因此请查看: : 以获取配置指南。 { // ...
对于使用Sentry的应用(如Hive、Impala),需确保它们已配置为与Sentry通信,以便在执行查询时应用这些策略。 4. 测试和监控: 完成配置后,通过测试不同用户的访问权限来验证Sentry是否正常工作。同时,定期检查...
5. **配置与启动**:配置Sentry的设置文件,包括数据库连接、日志记录、邮件通知等,然后使用`sentry run`命令启动服务。 离线安装的难点在于确保所有依赖都已正确获取和打包,因为一旦服务器断开网络,就不能再...
【Sentry 1.6.0 测试报告_x86_openEuler1】涉及的知识点主要集中在Sentry组件的移植、配置以及环境搭建上,它是一个在Hadoop生态系统中的细粒度权限管理工具,适用于基于角色的授权。以下是详细的解释: 1. **...
在 Hive 中启用 Sentry 服务需要修改配置文件,例如 hive-site.xml,添加相应的配置参数,如 sentry.hive.testing.mode、hive.server2.enable.impersonation、hive.server2.enable.doAs 等。同时,需要添加 Sentry ...
然后,配置Sentry。在`config/sentry.php`文件中,你可以设置你的Sentry DSN(Data Source Name)和其他选项,如环境、日志级别等。DSN可以从Sentry控制面板获取: ```php 'dsn' => env('SENTRY_LARAVEL_DSN'), '...
然后,在Sentry的配置文件中添加钉钉的相关设置,如webhook地址,确保Sentry在捕获到错误时能正确触发报警。在Python代码中,你可以按照Sentry的常规用法来记录和报告错误,这样一旦发生问题,Sentry就会通过钉钉...
7. **多租户管理**:支持为不同的管理员配置独立的数据集权限,例如在Hive和Impala中可以在数据库级别进行权限管理。 8. **统一平台**:Sentry利用Hadoop的Kerberos认证实现安全,提供了一个统一的平台来管理所有...