Passer au contenu principal
  • Passer des commandes rapidement et facilement
  • Afficher les commandes et suivre l’état de votre expédition
  • Créez et accédez à une liste de vos produits
  • Gérer vos sites, vos produits et vos contacts au niveau des produits Dell EMC à l’aide de la rubrique Gestion des informations de l’entreprise.

Isilon:Ambari 自動 Kerberos 組態與 Isilon

Résumé: 本文將引導您使用 Ambari 管理的 Hadoop 叢集來設定 Kerberos 安全性。

Cet article a peut-être été traduit automatiquement. Si vous avez des commentaires concernant sa qualité, veuillez nous en informer en utilisant le formulaire au bas de cette page.

Contenu de l’article


Symptômes

N/A

Cause

N/A

Résolution

注意:本主題為使用 Hadoop with OneFS - Isilon 資訊中心中的一部分。

本文說明如何使用 Ambari 管理的 Hadoop 叢集來設定 Kerberos 安全性。

Kerberos 是 Hadoop 進行強驗證與加密的核心,但是設定和管理起來可能很困難。Ambari 2.0 推出精靈驅動的自動化 Kerberos 組態,讓處理速度更快,且不易發生錯誤。從 OneFS 8.0.0.1 開始,Dell EMC Isilon 客戶便可利用此絕佳功能。


先決條件

  • OneFS 8.0.0.1 或更新版本。
  • Ambari 2.0 或更高版本。
  • 執行中的 MIT KDC (不支援 Dell 就等)。請依照此處的步驟設定 Kerberos 基礎架構。
  • 所有主機之間的正向和反向 DNS。
  • Ambari 儀表板上的所有服務都在執行 (綠色)。

啟用 Kerberos

預先設定

啟動精靈之前,您必須先設定兩個組態,然後重新開機所有服務。
  • HDFS 中 - > 自訂核心月臺 會將「hadoop.security.token.service.use_ip」設為「false
  • MapReduce2 - > 進階 mapred-site 將「hadoop classpath」新增到「mapreduce.application.classpath」的開頭。記下冒號和背板 (但請勿複製引號)。

開始使用

流覽至 Admin - > Kerberos ,然後按下「Enable Kerberos」按鈕。本節中的標題指的是 Kerberos 精靈頁面的標題。

SLN319432_en_US__1i_isilon-1-enable

選取「Existing MIT KDC」,並確定是否符合先決條件,然後按一下「Next」。請注意,Isilon 不使用 JAVA,也不需要 JCE。

設定 Kerberos/安裝和測試 Kerberos 用戶端

填寫所有 KDC 和管理員伺服器資訊。在步驟 3 (安裝和測試 Kerberos 用戶端) 上,Ambari 伺服器會進行抽取測試,以確保您已正確設定 Kerberos。


SLN319432_en_US__2i_isilon-2-install


設定身分/確認組態

 a) Ambari 使用者主體 (UPN)

Ambari 以$-$@$的形式建立使用者主體,然後使用core-site.xml 中的hadoop.security.auth_to_local,將主體對應至檔案系統上只需$。

Isilon 不遵守對應規則,因此您必須在「Ambari 原則」區段中,從所有主體中移除-$。Isilon 將登出 @$ ,因此不需要別名。在執行 HDFS 的 Ambari 2.2.1 叢集中,YARN、MapReduce2、Tez、Hive、HBase、生牛、Sqoop、Ohmie、Zotor、Falcon、風暴、流暢、Accumulo、Ambari 指標、Kafka、Knox、取出、滑杆和 Spark,在「一般」標籤中進行下列修改:
  • 斯莫魯塞主體名稱${cluster-env/smokeuser}-$ @$ = > ${cluster-env/smokeuser}@$
  • spark.history.kerberos.principal${spark-env/spark_user}-$ @$ = > ${spark-env/spark_user}-@$
  • 風暴主體名稱${storm-env/storm_user}-$ @$ = > ${storm-env/storm_user}-@$
  • HBase 使用者主體${hbase-env/hbase_user}-$ @$ = > ${hbase-env/hbase_user}@$
  • HDFS 使用者主體${hadoop-env/hdfs_user}-$ @$ = > ${hadoop-env/hdfs_user}@$
  • accumulo_principal_name${accumulo-env/accumulo_user}-$ @$= > ${accumulo-env/accumulo_user}@$
  • trace.usertracer-$ @$= > tracer@$

SLN319432_en_US__3i_isilon-3-身分

b) 服務主體 (SPN)

Ambari 建立服務主體,其中部分原則與其 UNIX 使用者名稱不同。同樣地,由於 Isilon 不符合對應規則,您必須修改主體名稱,以符合其 UNIX 使用者名稱。在 Ambari 2.2.1 叢集中,在「進階」標籤中進行下列修改:
  • HDFS - > dfs.namenode.kerberos.principalnn/_HOST@$ = > hdfs/_HOST@$
  • YARN - > yarn.resourcemanager.principalrm/_HOST@$ = > 牛頭/_HOST@美元
  • YARN - > yarn.nodemanager.principalnm/_HOST@ $ = > 牛頭/_HOST@美元
  • MapReduce2 - > mapreduce.jobhistory.principaljhs/_HOST@ $ = > 對應/_HOST@美元
  • Falcon - > *.dfs.namenode.kerberos.principalnn/_HOST@$ = > hdfs/_HOST@$
 

SLN319432_en_US__4i_isilon-4-身分組態


設定適當的主體後,按下「下一步」。在「確認組態」畫面中,按下「下一步」。

停止服務/Kerberize 叢集

停止服務並進行核心化服務應會成功。
 

SLN319432_en_US__5i_isilon-5 叢集


請勿繼續:Isilon 不允許 Ambari 為 Isilon 主體建立 Keytab。您必須使用以下步驟,在 Isilon 上手動設定 Kerberos。

a) 以 Isilon Auth 提供者身分建立 KDC

注意:如果這個 Isilon 區域已設定為使用您的 MIT KDC,您可以略過這些步驟。

isi auth krb5 create --realm=$REALM --admin-server=$admin_server --kdc=$kdc_server --user=$admin_principal --password=$admin_password
isi zone zones modify --zone=$isilon_zone --add-auth-provider=krb5:$REALM

b) 為 HDFS 和 HTTP (適用于 WebHDFS) 建立服務主體。

isi auth krb5 spn create --provider-name=$REALM --spn=hdfs/$isilon_smartconnect@$REALM --user=$admin_principal --password=$admin_password
isi auth krb5 spn create --provider-name=$REALM --spn=HTTP/$isilon_smartconnect@$REALM --user=$admin_principal --password=$admin_password

c) 建立任何必要的 Proxy 使用者

在不安全的叢集中,任何使用者都可以冒充任何其他使用者。在安全的叢集中,必須明確指定 Proxy 使用者。
如果您有 Hive 或 O gadgetie,請新增適當的 Proxy 使用者。

isi hdfs proxyusers create oozie --zone=$isilon_zone --add-user=ambari-qa
isi hdfs proxyusers create hive --zone=$isilon_zone --add-user=ambari-qa

d) 停用簡單的驗證

僅允許 Kerberos 或委派權杖驗證。

isi hdfs 設定修改 --zone=$isilon_zone --authentication-mode=kerberos_only

現在 Isilon 也已設定好,請在 Ambari 中按下「下一步」以移至精靈的最後一個步驟。

開始和測試服務
 

SLN319432_en_US__6i_isilon-6-startservices

 

如果服務未啟動,以下是偵錯 Kerberos 問題的一些技巧:
  1. 由於 YARN 中的錯誤,您必須在 YARN 中將「yarn.resourcemanager.principal」設為 yarn/$rm_hostname@$REALM 在 YARN - >Custom yarn-site。啟用 Kerberos 時,「_HOST」語法無法運作。
  2. 若要偵錯 JAVA GSSAPI/Kerberos 錯誤,請將「-Dsun.security.krb5.debug=true」新增至HADOOP_OPTS
  3. 若是 HTTP 401 錯誤,請使用 curl with -iv 以取得額外的偵錯資訊。
  4. 請確定在所有主機之間設定正向和反向 DNS。
(選配)強大的 RPC 安全性

HDFS 中- > 自訂核心月臺 會將「hadoop.rpc.protection」設為「完整性」或「隱私權」。除了驗證之外,完整性保證訊息並未遭到篡改,隱私權也會加密所有訊息。

執行工作!

在任何用戶端主機中,嘗試執行 MapReduce 工作!

kinit <some-user> yarn jar /usr/hdp/current/hadoop-mapreduce-client/hadoop-mapreduce-examples.jar pi 1 1000
Job Finished in 37.635 seconds
Estimated value of Pi is 3.14800000000000000000
Congratulations--you have secured your cluster with Kerberos!

(選配)停用 Kerberos

清理 Isilon

您應先清理 Isilon。這基本上與啟用 Kerberos 相反。

a) 停用 Kerberos 驗證

isi hdfs settings modify --authentication-mode=simple_only --zone=$isilon_zone

b) 刪除任何 Proxy 使用者

isi hdfs proxyusers delete oozie --zone=$isilon_zone
isi hdfs proxyusers delete hive --zone=$isilon_zone

c) 刪除主體

isi auth krb5 spn delete --provider-name=$REALM --spn=hdfs/$isilon_smartconnect@$REALM --all
isi auth krb5 spn delete --provider-name=$REALM --spn=HTTP/$isilon_smartconnect@$REALM --all

請注意,上述命令僅從 Isilon 移除這些主體,但請勿將其從 KDC 中移除。使用這些命令從 KDC 中移除 Isilon 主體:

kadmin -p $admin_principal
kadmin: delete_principal hdfs/$isilon_smartconnect@$REALM
kadmin: delete_principal HTTP/$isilon_smartconnect@$REALM

d) 將 KDC 移除為 Isilon 驗證供應商

isi zone zones modify --zone=$isilon_zone --remove-auth-provider=krb5:$REALM
isi auth krb5 delete --provider-name=$REALM

使用 Ambari 清理用戶端

Admin - > Kerberos中按下「Disable Kerberos」。所有服務皆應亮起綠色。

Propriétés de l’article


Produit concerné

Isilon, PowerScale OneFS, Isilon with HDFS

Dernière date de publication

14 Sep 2023

Version

5

Type d’article

Solution