MaxCompute與Hadoop叢集構建湖倉一體時,如果Hadoop叢集開啟了Kerberos安全機制,則需要上傳keytab設定檔。本文為您介紹如何產生keytab設定檔。
操作步驟
以下以阿里雲E-MapReduce(EMR)為例,說明產生keytab設定檔的過程。
- 使用SSH登入EMR Hive Master節點主機,執行如下命令進入Kerberos的admin用戶端。
sh /usr/lib/has-current/bin/admin-local.sh /etc/ecm/has-conf -k /etc/ecm/has-conf/admin.keytab
EMR-3.30.0及後續版本(EMR-3x)和EMR-4.5.1及後續版本支援上述命令。 - 在Kerberos用戶端,執行如下命令,將具有Hive存取權限的Hive使用者添加到密鑰分發中心(KDC),並查看是否添加成功。
--將具有Hive存取權限的Hive使用者添加到KDC中。 add_principal -pw <password> hive --查看是否添加成功。 list_principals
- 在Kerberos用戶端,執行如下命令,在
/tmp
目錄下產生keytab設定檔。ktadd -k /tmp/hive.keytab -glob hive
- 查看keytab設定檔的正確性。
- 在Linux的終端,執行如下命令切換至Hive使用者。
su - hive
- 在Linux的終端,使用
kinit
命令,緩衝Hive principal和keytab檔案,並使用klist
命令,查看是否緩衝成功。--緩衝Hive principal和keytab檔案 kinit -kt /tmp/hive.keytab hive --查看是否緩衝成功 klist
- 登入Hive用戶端,如果可以訪問,即產生的keytab設定檔正確。
- 在Linux的終端,執行如下命令切換至Hive使用者。