OushuDB连接带kerberos的HDFS

一.  KDC上的操作

1. 登录KDC server,将Kerberos配置文件/etc/krb5.conf分发至KDW每个节点:

scp /etc/krb5.conf 10.0.5.58:/etc/

scp /etc/krb5.conf 10.0.5.146:/etc/

scp /etc/krb5.conf 10.0.5.239:/etc/

2. 创建KDW的principal

kadmin.local -q "addprinc -randkey postgres@HADOOP.COM"

kadmin.local -q "xst -k /etc/security/keytabs/hawq.keytab postgres@HADOOP.COM"

3. 将keytab文件分发至OushuDB Master节点

scp /etc/security/keytabs/hawq.keytab 10.0.5.58:/home/gpadmin/hawq.keytab 

4.     外部HDFS集群,/etc/hadoop/conf/core-site.xml把这个entity改一下:

 <property>

      <name>hadoop.rpc.protection</name>

      <value>authentication,privacy</value>

    </property>

改成:

<value>authentication</value>

二.  OushuDB上的操作

1. 登录OushuDB Master更改keytab文件的用户权限

chown gpadmin:gpadmin /home/gpadmin/hawq.keytab

更改keytab文件的用户权限

chmod 400 /home/gpadmin/hawq.keytab 

2. 修改hawq-site.xml,添加如下内容

        <property>

                <name>enable_secure_filesystem</name>

                <value>ON</value>

        </property>

        <property>

                <name>krb_server_keyfile</name>

                <value>/home/gpadmin/keys/hawq.keytab</value>

        </property>

              <!—如果principal配置的是postgres用户,那么不用添加,但是hdfs也要改成postgres权限

        <property>

                <name>krb_srvname</name>

                <value>postgres</value>

        </property>

3. 修改hdfs-client.xml,添加如下内容

        <property>

                <name>hadoop.security.authentication</name>

                <value>kerberos</value>

        </property>

        <property>

                <name>hadoop.rpc.protection</name>

                <value>authentication</value>

        </property>

4. 分发至OushuDB各个节点

      

5. 将HDFS上OushuDB数据目录属主改为postgres用户

sudo -u hdfs hadoop fs -chown -R postgres:gpadmin /<dfs_url>

三.  验证

1. 创建外部表

CREATE  EXTERNAL TABLE t_ext (a1 varchar) LOCATION ('hdfs://xxxx:8020/tmp/test') format 'csv';

2. 查询

select * from t_ext;

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值