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:使用 Isilon 的 Ambari 自动化 Kerberos 配置

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

不适用

Cause

不适用

Résolution

提醒:本主题是 将 Hadoop 与 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(不支持 Heimdal)。按照此处的步骤设置 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-安装


配置标识/确认配置

 a) Ambari 用户主体 (UPN)

Ambari 以 $-$ @$ 的形式创建用户主体,然后使用 core-site.xml 中的hadoop.security.auth_to_local 将主体映射到文件系统上仅 $

Isilon 不遵守映射规则,因此您必须从“Ambari 主体”部分中的所有主体中删除 -$ 。Isilon 将剥离 @$ ,因此无需进行别名。在运行 HDFS、YARN、MapReduce2、Tez、Hive、HBase、Pig、Sqoop、Oozie、Zookeeper、Falcon、Storm、Flume、Accumulo、Ambari Metrics、Kafka、Knox、Mahout、滑块和 Spark 的 Ambari 2.2.1 群集中,在“General”选项卡中进行以下修改:
  • Smokeuser 主体名称${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 群集中,在“Advanced”选项卡中进行以下修改:
  • HDFS -> dfs.namenode.kerberos.principalnn/_HOST@$ => hdfs/_HOST@$
  • YARN —> yarn.resourcemanager.principalrm/_HOST@$ => yarn/_HOST@$
  • YARN —> yarn.nodemanager.principalnm/_HOST@$ => yarn/_HOST@$
  • MapReduce2 —> mapreduce.jobhistory.principaljhs/_HOST@$ => 映射/_HOST@$
  • Falcon -> *.dfs.namenode.kerberos.principalnn/_HOST@$ => hdfs/_HOST@$
 

SLN319432_en_US__4i_isilon-4-identitiesconfig


配置相应的主体后,按“下一步”。在“Confirm Configuration”(确认配置)屏幕中,按“Next”(下一步)。

停止服务/Kerberize 群集

停止和 Kerberizing 服务应成功。
 

SLN319432_en_US__5i_isilon-5 群集


请勿继续:Isilon 不允许 Ambari 为 Isilon 主体创建密钥表。相反,您必须使用以下步骤在 Isilon 上手动配置 Kerberos。

a) 创建 KDC 作为 Isilon 身份验证提供程序

提醒:如果此 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) 创建任何必要的代理用户

在不安全的群集中,任何用户都可以模拟任何其他用户。在安全群集中,需要明确指定代理用户。
如果您有 Hive 或 Oozie,请添加相应的代理用户。

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 settings modify --zone=$isilon_zone --authentication-mode=kerberos_only

现在还配置了 Isilon,请在 Ambari 中按“下一步”以继续执行向导的最后一步。

启动和测试服务
 

SLN319432_en_US__6i_isilon-6-start 服务

 

如果服务未启动,以下是调试 Kerberos 问题的一些技巧:
  1. 由于 YARN 中存在错误,您需要在 YARN ->Custom yarn-site 中将“yarn.resourcemanager.principal”设置为 yarn/$rm_hostname@$REALM。启用 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) 删除任何代理用户

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