![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5yY5MmN1gzMldjM3YmM2UjY1ITY0I2M0cTM0EzM4I2Yx8CX5d2bs92Yl1iclB3bsVmdlR2LcNWaw9CXt92Yu4GZjlGbh5yYjV3Lc9CX6MHc0RHaiojIsJye.png)
注意:HDFS可插拔存儲外部表在kerberos環境下可以工作,需要OushuDB3.3.1.2以上版本
準備工作
安裝部署好Secure HDFS
安裝部署好MIT Kerberos KDC
同步KDC和OushuDB cluster的系統時間
開始部署
登入KDC server,将Kerberos配置檔案/etc/krb5.conf分發至OushuDB每個節點
scp /etc/krb5.conf <hawq-node>:/etc/krb5.conf
為postgres使用者建立Kerberos principal并生成一個keytab檔案
kadmin.local -q "addprinc -randkey postgres@REALM"kadmin.local -q "xst -k /etc/security/keytabs/hawq.keytab postgres@REALM"
将keytab檔案分發至OushuDB Master節點
scp /etc/security/keytabs/hawq.keytab <hawq-master>:/etc/security/keytabs/hawq.keytab
登入OushuDB Master,更改keytab檔案的使用者權限
chown gpadmin:gpadmin /etc/security/keytabs/hawq.keytabchmod 400 /etc/security/keytabs/hawq.keytab
修改$GPHOME/etc/hawq-site.xml,添加如下内容:
<property><name>enable_secure_filesystem</name><value>ON</value></property><property><name>krb_server_keyfile</name><value>/etc/security/keytabs/hawq.keytab</value></property>
修改$GPHOME/etc/hdfs-client.xml,去掉如下所示的KDC注釋:
<!-- KDC
...
KDC -->
分發至OushuDB各個節點
将HDFS上OushuDB資料目錄屬主改為postgres使用者
sudo -u hdfs hadoop fs -chown -R postgres:gpadmin /<dfs_url>