
Authorizer 接口,为 GooseFS Master 上的每一次元数据请求提供鉴权结果。/usr/local/service/ranger/ews/webapp/WEB-INF/classes/ranger-plugins。
# 生成服务,需要传入 Ranger 管理员的账号和密码,以及 Ranger 的服务地址# 对于腾讯云 EMR 集群,管理员用户是 root,密码是构建 EMR 集群时设置的 root 密码,ranger 服务的 IP 就是 EMR 服务的 Master IPadminUser=rootadminPasswd=xxxxrangerServerAddr=10.0.0.1:6080curl -v -u${adminUser}:${adminPasswd} -X POST -H "Accept:application/json" -H "Content-Type:application/json" -d @./ranger-servicedef-goosefs.json http://${rangerServerAddr}/service/plugins/definitions# 服务注册成功后,会返回一个服务 ID,请务必记录下这个ID# 如果要删除 GooseFS 的服务,则传入刚刚返回的服务 ID,执行如下命令即可:serviceId=104curl -v -u${adminUser}:${adminPasswd} -X DELETE -H "Accept:application/json" -H "Content-Type:application/json" http://${rangerServerAddr}/service/plugins/definitions/${serviceId}



\\${GOOSEFS_HOME}/conf路径下,并分别填写其必要配置:<configuration xmlns:xi="http://www.w3.org/2001/XInclude"><property><name>ranger.plugin.goosefs.service.name</name><value>goosefs</value></property><property><name>ranger.plugin.goosefs.policy.source.impl</name><value>org.apache.ranger.admin.client.RangerAdminRESTClient</value></property><property><name>ranger.plugin.goosefs.policy.rest.url</name><value>http://10.0.0.1:6080</value></property><property><name>ranger.plugin.goosefs.policy.pollIntervalMs</name><value>30000</value></property><property><name>ranger.plugin.goosefs.policy.rest.client.connection.timeoutMs</name><value>1200</value></property><property><name>ranger.plugin.goosefs.policy.rest.client.read.timeoutMs</name><value>30000</value></property></configuration>
<configuration><property><name>xasecure.audit.is.enabled</name><value>false</value></property><property><name>xasecure.audit.db.is.async</name><value>true</value></property><property><name>xasecure.audit.db.async.max.queue.size</name><value>10240</value></property><property><name>xasecure.audit.db.async.max.flush.interval.ms</name><value>30000</value></property><property><name>xasecure.audit.db.batch.size</name><value>100</value></property><property><name>xasecure.audit.jpa.javax.persistence.jdbc.url</name><value>jdbc:mysql://localhost:3306/ranger_audit</value></property><property><name>xasecure.audit.jpa.javax.persistence.jdbc.user</name><value>rangerLogger</value></property><property><name>xasecure.audit.jpa.javax.persistence.jdbc.password</name><value>none</value></property><property><name>xasecure.audit.jpa.javax.persistence.jdbc.driver</name><value>com.mysql.jdbc.Driver</value></property><property><name>xasecure.audit.credential.provider.file</name><value>jceks://file/etc/ranger/hadoopdev/auditcred.jceks</value></property><property><name>xasecure.audit.hdfs.is.enabled</name><value>true</value></property><property><name>xasecure.audit.hdfs.is.async</name><value>true</value></property><property><name>xasecure.audit.hdfs.async.max.queue.size</name><value>1048576</value></property><property><name>xasecure.audit.hdfs.async.max.flush.interval.ms</name><value>30000</value></property><property><name>xasecure.audit.hdfs.config.encoding</name><value></value></property><!-- hdfs audit provider config--><property><name>xasecure.audit.hdfs.config.destination.directory</name><value>hdfs://NAMENODE_HOST:8020/ranger/audit/</value></property><property><name>xasecure.audit.hdfs.config.destination.file</name><value>%hostname%-audit.log</value></property><proeprty><name>xasecure.audit.hdfs.config.destination.flush.interval.seconds</name><value>900</value></proeprty><property><name>xasecure.audit.hdfs.config.destination.rollover.interval.seconds</name><value>86400</value></property><property><name>xasecure.audit.hdfs.config.destination.open.retry.interval.seconds</name><value>60</value></property><property><name>xasecure.audit.hdfs.config.local.buffer.directory</name><value>/var/log/hadoop/%app-type%/audit</value></property><property><name>xasecure.audit.hdfs.config.local.buffer.file</name><value>%time:yyyyMMdd-HHmm.ss%.log</value></property><property><name>xasecure.audit.hdfs.config.local.buffer.file.buffer.size.bytes</name><value>8192</value></property><property><name>xasecure.audit.hdfs.config.local.buffer.flush.interval.seconds</name><value>60</value></property><property><name>xasecure.audit.hdfs.config.local.buffer.rollover.interval.seconds</name><value>600</value></property><property><name>xasecure.audit.hdfs.config.local.archive.directory</name><value>/var/log/hadoop/%app-type%/audit/archive</value></property><property><name>xasecure.audit.hdfs.config.local.archive.max.file.count</name><value>10</value></property><!-- log4j audit provider config --><property><name>xasecure.audit.log4j.is.enabled</name><value>false</value></property><property><name>xasecure.audit.log4j.is.async</name><value>false</value></property><property><name>xasecure.audit.log4j.async.max.queue.size</name><value>10240</value></property><property><name>xasecure.audit.log4j.async.max.flush.interval.ms</name><value>30000</value></property><!-- kafka audit provider config --><property><name>xasecure.audit.kafka.is.enabled</name><value>false</value></property><property><name>xasecure.audit.kafka.async.max.queue.size</name><value>1</value></property><property><name>xasecure.audit.kafka.async.max.flush.interval.ms</name><value>1000</value></property><property><name>xasecure.audit.kafka.broker_list</name><value>localhost:9092</value></property><property><name>xasecure.audit.kafka.topic_name</name><value>ranger_audits</value></property><!-- ranger audit solr config --><property><name>xasecure.audit.solr.is.enabled</name><value>false</value></property><property><name>xasecure.audit.solr.async.max.queue.size</name><value>1</value></property><property><name>xasecure.audit.solr.async.max.flush.interval.ms</name><value>1000</value></property><property><name>xasecure.audit.solr.solr_url</name><value>http://localhost:6083/solr/ranger_audits</value></property></configuration>
<configuration><property><name>xasecure.policymgr.clientssl.keystore</name><value>hadoopdev-clientcert.jks</value></property><property><name>xasecure.policymgr.clientssl.truststore</name><value>cacerts-xasecure.jks</value></property><property><name>xasecure.policymgr.clientssl.keystore.credential.file</name><value>jceks://file/tmp/keystore-hadoopdev-ssl.jceks</value></property><property><name>xasecure.policymgr.clientssl.truststore.credential.file</name><value>jceks://file/tmp/truststore-hadoopdev-ssl.jceks</value></property></configuration>
...goosefs.security.authorization.permission.type=CUSTOMgoosefs.security.authorization.custom.provider.class=org.apache.ranger.authorization.goosefs.RangerGooseFSAuthorizer...
...GOOSEFS_RANGER_CLASSPATH="${GOOSEFS_HOME}/lib/ranger-goosefs-plugin-${version}.jar"GOOSEFS_SERVER_CLASSPATH=${GOOSEFS_SERVER_CLASSPATH}:${GOOSEFS_RANGER_CLASSPATH}...


文档反馈