14.hadoop-2.7.2公式サイトのドキュメント翻訳 - サービスレベルライセンスガイド


目標

この文書では、Hadoopの認定サービスレベルを設定し、管理する方法について説明します

前提

Hadoopのをインストールしてください、構成や設定は正しいです。詳細は、以下をご覧ください:

概要

サービスレベルの権限は、顧客は、必要に応じて事前に設定され、特定のHadoopサービスに接続し、特定のサービスへのアクセスを承認する権限を持っていることを確認するために、最初の認証機構です。例えば、MapReduceのクラスタは、このメカニズムは、ユーザーがタスクを提出するリストまたはグループを設定することができます使用することができます。

$HADOOP_CONF_DIR/hadoop-policy.xmlさまざまなサービスのHadoopコントロールリストを定義するために使用されるコンフィギュレーション・ファイルへのアクセス。

このように、ジョブキュー制御へのアクセスをファイルのパーミッションをチェックするなど、他のアクセス制御チェック、前に、サービスのレベルを承認しました。

コンフィギュレーション

このセクションでは、どのように構成ファイルを記述し$HADOOP_CONF_DIR/hadoop-policy.xm、サービスレベルの認可を設定します。

サービスレベルの認可を有効にします

デフォルトでは、Hadoopのサービスレベルの許可は彼をオンにするために、シャットダウンされます。必要とプロパティがtrueに設定されています。$HADOOP_CONF_DIR/core-site.xmlhadoop.security.authorization

Hadoopのサービスおよび構成プロパティ

ここでは様々なサービスとそれらのHadoopの構成は以下のとおりです。

ACL(アクセスコントロールリスト、アクセス制御リスト)

プロパティ サービス
security.client.protocol.acl 分散ファイル・システム上のユーザーコードのためのACLのクライアントプロトコル
security.client.datanode.protocol.acl ACL ClientDatanodeProtocol、クライアント-DataNode契約をブロックするように返信
security.datanode.protocol.acl ACL、および名前ノード間のデータノード通信のDatanodeProtocol
security.inter.datanode.protocol.acl 内部データノード契約生成タイムスタンプを更新InterDatanodeProtocol ACL、
security.namenode.protocol.acl ACLのNamenodeProtocol、名前ノードセカンダリ名前ノードとの通信
security.job.client.protocol.acl このResourceManagerと通信するクライアントのために、などのジョブ投入、ジョブステータスの問い合わせのため、ACLをJobSubmissionProtocol
security.job.task.protocol.acl TaskUmbilicalProtocol ACL、マップやノードマネージャとの通信のための作業を軽減
security.refresh.policy.protocol.acl ACL、dfsadminとrmadminコマンドのRefreshAuthorizationPolicyProtocolは、セキュリティポリシーが有効であるリフレッシュします
security.ha.service.protocol.acl HAAdminアクティブおよびスタンバイ状態の名前ノードを管理するためのACL HAサービス契約

アクセス制御リスト

$HADOOP_CONF_DIR/hadoop-policy.xmlHadoopのサービスは、各アクセス・コントロール・リストを定義します。各アクセス制御リストは、単純な形式になっています。

ユーザーとグループは、名前のカンマ区切りのリストです。スペースで区切られた2つのリストの間で。

例えば:user1,user2 group1,group2

リストだけならば、行の先頭にスペースまたは決してユーザーの唯一の特定のセットの後に、ユーザーのカンマ区切りのリストと同等のものをスペースを追加します。

指定された値は、*すべてのユーザーがサービスにアクセスできることを意味します。

アクセス制御リストサービスが定義されていない場合、security.service.authorization.default.acl値が有効になります。場合はsecurity.service.authorization.default.acl設定されていない、*それが有効になります。

  • アクセス制御リストをブロックされたいくつかのケースでは、サービスとしてアクセス制御リストのブロッキングを指定する必要があります。指定されたユーザーまたはグループのリストは、サービスへのアクセスを持っていません。フォーマットおよびアクセス制御リストのアクセス制御リストをブロックと同じ形式。アクセス制御リストを遮断することはでき$HADOOP_CONF_DIR/hadoop-policy.xml指定すること。プロパティ名は「.blocked」サフィックスによって得られます。
    例:ブロックアクセス制御リストプロパティがsecurity.client.protocol.aclなりますsecurity.client.protocol.acl.blocked
    サービスのために、あなたはアクセス制御リストを指定し、アクセス制御リストをブロックします。ユーザーがアクセス制御リストにある場合は、アクセス制御リストをブロックしていないながら、あなたがサービスにアクセスすることができます。
    ブロッキングサービスのアクセス制御リストが定義されていない場合、security.service.authorization.default.acl.blocked値が有効になります。場合はsecurity.service.authorization.default.acl.blocked未定義、アクセス制御リストを遮断することは空になります。

サービスレベル認可構成を更新

サービスレベルの権限と設定名前ノードResourceManagerがどのHadoopの主要プロセスを再起動することなく変更することができます。クラスタ管理者は、マスターノードに変更することができ$HADOOP_CONF_DIR/hadoop-policy.xml、スイッチを介して、dfsadmin及びそれらのコンフィギュレーションコマンドをロードするように通知名前ノードとのResourceManager。rmadmin -refreshServiceAcl

名前ノードのリフレッシュサービスレベルの許可の設定:$ bin/hdfs dfsadmin -refreshServiceAcl

ResourceManager快適なサービスレベルの許可の設定:$ bin/yarn rmadmin -refreshServiceAcl

もちろん、あなたも使用することができ、サービスレベルの許可の設定をリフレッシュするために、特定のユーザーまたはグループへのアクセスを制限するプロパティを。$HADOOP_CONF_DIR/hadoop-policy.xmlsecurity.refresh.policy.protocol.acl

  • サービス・アクセス・コントロールのリストにIPアドレス、ホスト名とIPアドレスの範囲を使用して、クライアントのIPアドレスの制御に基づくことができます。また、サービスへのアクセスを制限するために、マシンのホスト名とIPアドレスの範囲のセットを指定したIPアドレスを使用することができます。各サービスのプロパティは、対応するACL名からコマンド。ACL属性名がある場合はsecurity.client.protocol.acl、属性名ホストリストは次のようになりますsecurity.client.protocol.hosts
    サービスが定義されていない場合は、リストをホスト使用security.service.authorization.default.hosts価値を、場合security.service.authorization.default.hosts値が設定されていない、使用されます*
    可能なホストブロックのリストを指定します。唯一のこれらのマシンは、ホストのリストにアクセスすることはできません。サービスのリストへのアクセスを許可するこれ以上の障害物はありません。プロパティ名の接尾辞によって.blocked取得します。例:ブロックされたホストの属性名のリストがsecurity.client.protocol.hostsなりますsecurity.client.protocol.hosts.blocked
    NOTEサービスのブロックリストが定義されていない場合は、使用しsecurity.service.authorization.default.hosts.blockedている場合値は、security.service.authorization.default.hosts.blocked値も設定されていない、ホストリストを遮断することが空です。

唯一の「アリス」と「ボブ」にユーザーを可能にし、タスクのMapReduceクラスターユーザーのMapReduce」グループに提出することができます

<property>
     <name>security.job.client.protocol.acl</name>
     <value>alice,bob mapreduce</value>
</property>

データノードにのみ動作させること、およびデータノードのユーザに属するグループは、名前ノードと通信することができます。

<property>
     <name>security.datanode.protocol.acl</name>
     <value>datanodes</value>
</property

これは、すべてのユーザーがDFSクライアントHDFSクラスターにアクセスすることができます

<property>
     <name>security.client.protocol.acl</name>
     <value>*</value>
</property>

「); }他{VARのloadJs =関数(D、A){VARのC = document.getElementsByTagName( "ヘッド")[0] || || document.headはdocument.firstChild; VARのB =のdocument.createElement( "スクリプト")。 b.setAttribute( "タイプ"、 "テキスト/ javascriptの"); b.setAttribute( "文字セット"、 "UTF-8"); b.setAttribute( "SRC"、D); IF(typeof演算A ===」機能"){(window.attachEvent){b.onreadystatechange =関数(){VAR電子= b.readyStateなら;もし(E ===" ロードされた "|| E ===")」は、完全な{b.onreadystatechange = NULL ;そうでなければ()}}} {b.onload = A}} c.appendChild(B)}; loadJs( "https://changyan.sohu.com/upload/changyan.js"、関数(){窓。 changyan.api.config({APPID:APPID、CONF:CONF})})。}})();

オリジナル:ビッグボックス  14.hadoop-2.7.2公式サイトのドキュメント翻訳-サービスレベルライセンスガイド


おすすめ

転載: www.cnblogs.com/petewell/p/11607210.html