集成
trino配置
-
将编译后的ranger-trino插件包拷贝到Trino的coordinator节点,然后解压。
-
修改
install.properties
文件:# ranger admin url POLICY_MGR_URL=http://nn23.fff.com:6080/ REPOSITORY_NAME=trinodev # 审计日志根据需要 # trino 安装目录 COMPONENT_INSTALL_DIR_NAME=/apps/trino-server-378 XAAUDIT.SUMMARY.ENABLE=false
-
运行
enable-trino-plugin.sh
-
查看trino安装目录的etc目录下面多了一些与ranger有关的配置
-rw-r--r-- 1 root root 168 May 11 14:33 access-control.properties -rw-r--r-- 1 root root 7529 May 11 14:33 core-site.xml -rw-r--r-- 1 root root 509 May 11 11:15 log4j.properties -rw-r--r-- 1 root root 166 Apr 29 15:49 node.properties -rw-r--r-- 1 root root 2236 May 11 14:02 ranger-policymgr-ssl.xml -rw-r--r-- 1 root root 67 May 10 10:58 ranger-security.xml -rw-r--r-- 1 root root 13912 May 10 10:57 ranger-trino-audit.xml -rw-r--r-- 1 root root 2237 May 11 14:18 ranger-policymgr-ssl.xml -rw-r--r-- 1 root root 3160 May 10 10:55 ranger-trino-security.xml
-
修改
ranger-policymgr-ssl.xml
的文件名:mv ranger-policymgr-ssl.xml ranger-trino-policymgr-ssl.xml
-
由于ranger集成了kerberos,所以需要修改
access-control.properties
增加安全配置access-control.name=ranger ranger.hadoop_config=core-site.xml ranger.keytab=/etc/security/keytabs/trino.service.keytab ranger.principal=trino/trino34.fff.com@FFF.COM ranger.use_ugi=true
-
启动trino
ranger配置
Service Name : 一定要与trino插件安装时install.properteis文件中的REPOSITORY_NAME一致 Username: 生成默认策略的超级用户 policy.download.auth.users: 如果开启了kerberos认证,则要与access-control.properties的principal一致
这个服务连接不通也没有关系,只是在新建策略的时候不能自动补全。
问题
ranger admin ui页面没有集成trino插件
-
在ranger的/agents-common/src/main/resources/service-defs路径下找到ranger-servicedef-trino.json文件。
-
输入
curl -u admin:password -X POST -H "Accept: application/json" -H "Content-Type: application/json" -d @ranger-servicedef-trino.json "http://nn23.fff.com:6080/service/public/v2/api/servicedef"
将trino定义的策略,上传到ranger admin的服务器中,登录就可以查看到多出了trino选项。
trino启动后无法看到ranger插件日志
在trino安装目录的etc目录下创建log4j.properties文件:
# Configure logging for testing: optionally with log file log4j.rootLogger=debug, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
trino无法从ranger下载策略
ranger admin日志报错:
Request failed. loginId=null, logMessage=Unauthenticated access not allowed
从日志上看,是匿名访问未认证通过。
通过阅读源码发现:
类org.apache.ranger.authorization.trino.authorizer.TrinoRangerPlugin
@Override
public Iterable<SystemAcce