2017-02-02 16 views
0

kerborized CDHクラスタを使用しています。クラスタにユーザを追加する際には、hadoopディストリクラスタのように、ゲートウェイ/エッジノードにのみユーザを追加していました。しかし、新たに追加されたユーザーIDでは、map-reduce/yarnジョブを実行できず、「ユーザーが見つかりません」という例外がスローされます。保護されたクラスタにHadoopを追加する

これを調べたところ、セキュリティ保護されたクラスタで糸ジョブを実行するように指示されたリンクhttps://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/SecureContainer.htmlが出てきました。セキュアコンテナが次の資格情報で実行されるため、ジョブユーザ。

これで、すべてのノードに対応するuserIDが追加され、ジョブが実行されています。 これが当てはまり、クラスタが約100以上のノードを持つ場合、各ユーザーIDのユーザープロビジョニングは退屈な仕事になります。

プロジェクトの実装で同じシナリオに遭遇した場合、誰でも他の効果的な方法を提案できますか?

+0

この問題への任意のポインタ、してください? – user3178812

答えて

0

難易度順にいくつかのアプローチがあります(単純なものから苦しいものまで)。

1人は誰もがジョブを実行するために使用するジョブランナーユーザーを持つことです。

構成管理ツールを使用して、クラスタ上の/ etc/passwdおよび/ etc/group(シェフ、人形)を定期的(1時間〜1日)に同期させるか、またはcronジョブを使用してこれを行います。

Centrify(商用)、VAS(商用)、FreeIPA(無料)、SSSD(無料)などのオープンソースのLinux/UNIXユーザーマッピングサービスを購入したり、使用することができます。

Active DirectoryサーバーまたはLDAPサーバーを使用している場合は、Hadoop LDAPユーザーマッピングを使用します。

参考文献:

https://community.hortonworks.com/questions/57394/what-are-the-best-practises-for-unix-user-mapping.html

https://www.cloudera.com/documentation/enterprise/5-9-x/topics/cm_sg_ldap_grp_mappings.html

関連する問題