六、配置用户代理

配置用户代理

该文档包括一下内容

  • 配置PXF用户模拟
  • 配置Hadoop代理
  • Hive用户模仿
  • HBase用户模拟

PXF代表Greenplum Database最终用户访问Hadoop服务。默认情况下,PXF尝试使用登录到Greenplum数据库的Greenplum数据库用户帐户的标识访问数据源服务(HDFS,Hive,HBase),并使用PXF连接器配置文件执行操作。请记住,PXF 在访问Hadoop服务时仅使用用户的登录标识。例如,如果用户jane登入到Greenplum Database,然后执行SET ROLE或SET SESSION AUTHORIZATION来更改用户角色,则所有PXF请求仍使用该身份jane访问Hadoop服务。
使用默认的PXF配置,您必须配置每个Hadoop数据源(HDFS,Hive,HBase),以允许PXF进程所有者(通常gpadmin)充当模拟用户或组的代理。请参阅配置Hadoop代理,Hive用户模拟和HBase用户模拟。
作为替代方案,您可以禁用PXF用户模拟。禁用用户模拟后,PXF将作为PXF进程所有者(通常gpadmin)执行所有Hadoop服务请求。此行为与早期版本的PXF匹配,但它无法控制Hadoop中不同Greenplum数据库用户对Hadoop服务的访问。它要求gpadmin用户可以访问HDFS中的所有文件和目录,以及PXF外部表定义中引用的Hive和HBase中的所有表。有关禁用用户模拟的信息,请参阅配置PXF用户模拟。

配置PXF用户模拟

执行以下过程以在Greenplum数据库群集中打开或关闭PXF用户模拟。默认情况下启用用户模拟。

1、以管理用户身份登录Greenplum Database主节点并设置环境:

$ ssh gpadmin@<gpmaster>
gpadmin@gpmaster$ . /usr/local/greenplum-db/greenplum_path.sh

2、打开$GPHOME/pxf/conf/pxf-env.sh配置文件。例如:

gpadmin@gpmaster$ vi $GPHOME/pxf/conf/pxf-env.sh

3、在pxf-env.sh文件中找到PXF_USER_IMPERSONATION配置项。将值设置true为打开PXF用户模拟,或false将其关闭。例如:

PXF_USER_IMPERSONATION="true"

4、将更新的pxf-env.sh文件复制到每个Greenplum数据库segment主机。例如,该seghostfile文件包含Greenplum数据库群集中segment主机的列表,每行一个主机名称:

gpadmin@gpmaster$ gpscp -v -f seghostfile $GPHOME/pxf/conf/pxf-env.sh =:/usr/local/greenplum-db/pxf/conf/pxf-env.sh

5、在每个Greenplum数据库segment主机上重新启动PXF,以应用新设置。例如:

$ gpadmin@gpmaster$ gpssh -e -v -f seghostfile "/usr/local/greenplum-db/pxf/bin/pxf restart"

配置Hadoop代理

启用PXF用户个性化(默认设置)时,必须配置Hadoop core-site.xml配置文件以允许用户模拟PXF。跟着这些步骤:

1 、修改core-site.xml配置文件,或使用Ambari添加相关的配置

2、设置属性hadoop.proxyuser..hosts

表示允许代理请求的PXF主机名列表。替换为PXF的代理用户,通常为gpadmin。value则指定代理的主机,多个主机使用逗号隔开。例如:

<property>
    <name>hadoop.proxyuser.gpadmin.hosts</name>
    <value>pxfhost1,pxfhost2,pxfhost3</value>
</property>

2、设置属性hadoop.proxyuser..groups

以指定PXF可以模拟的HDFS组列表。您应该将此列表限制为仅需要从PXF访问HDFS数据的组。例如:

<property>
    <name>hadoop.proxyuser.gpadmin.groups</name>
    <value>group1,group2</value>
</property>

3、更改后core-site.xml,必须重新启动Hadoop才能使更改生效。

Hive用户模仿

PXF Hive连接器使用Hive MetaStore确定Hive表的HDFS位置,然后直接访问底层HDFS文件。Hive不需要特定的模拟配置,因为Hadoop代理配置core-site.xml也适用于以这种方式访问的Hive表。

HBase用户模拟

要使用户模拟使用HBase,必须AccessController在HBase配置中启用协处理器并重新启动群集。有关所需的配置设置,请参阅“Apache HBase参考指南”中的61.3简单用户访问操作的服务器端配置hbase-site.xml。


参考网址:http://gpdb.docs.pivotal.io/580/pxf/pxfuserimpers.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值