Hadoopクラスターのhttps設定実戦

Hadoopは、大規模なクラスター上で実行されるオープンソースの分散コンピューティングフレームワークです。Hadoopクラスターを構成する際には、通信を暗号化するためにHTTPSを使用することができ、セキュリティを向上させることができます。以下に、HadoopクラスターのHTTPS設定の実践的なステップを示します。

  1. Hadoopクラスターの各ノードで証明書と秘密鍵を生成するためには、OpenSSLツールを使用することができます。まず、OpenSSLツールをインストールし、次のコマンドを使用して秘密鍵と証明書を生成してください。
  2. openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes を実行します。
  3. 2048ビットのRSAプライベートキーと自己署名証明書が生成され、有効期間は365日間です。
  4. Hadoopクラスター内の各ノードに証明書と秘密鍵をコピーします:生成された証明書と秘密鍵ファイル(key.pemとcert.pem)をHadoopクラスター内の各ノードの同じパスにコピーします(たとえば、/etc/hadoop/ssl)。
  5. Hadoopクラスターの各ノードにSSL設定ファイルを配置してください。例えば、core-site.xmlを編集し、以下の設定を追加してください。
  6. <プロパティ>
    <名前>hadoop.ssl.enabled</名前>
    <値>true</値>
    </プロパティ>
    <プロパティ>
    <名前>hadoop.ssl.server.conf</名前>
    <値>/etc/hadoop/ssl/hadoop-ssl-server.xml</値>
    </プロパティ>
    <プロパティ>
    <名前>hadoop.ssl.client.conf</名前>
    <値>/etc/hadoop/ssl/hadoop-ssl-client.xml</値>
    </プロパティ>
  7. HadoopのSSLサーバーの設定ファイルを配置する: Hadoopクラスターの各ノードにて、HadoopのSSLサーバーの設定ファイル(例えば、hadoop-ssl-server.xml)を作成し編集し、以下の設定を追加する。
  8. <設定>
    <プロパティ>
    <名前>ssl.server.keystore.location</名前>
    <値>/etc/hadoop/ssl/key.pem</値>
    </プロパティ>
    <プロパティ>
    <名前>ssl.server.keystore.password</名前>
    <値>keystore_password</値>
    </プロパティ>
    <プロパティ>
    <名前>ssl.server.truststore.location</名前>
    <値>/etc/hadoop/ssl/cert.pem</値>
    </プロパティ>
    <プロパティ>
    <名前>ssl.server.truststore.password</名前>
    <値>truststore_password</値>
    </プロパティ>
    </設定>
  9. 鍵ストアのパスワードを秘密鍵のパスワードに、信頼ストアのパスワードを証明書のパスワードに置き換えてください。
  10. Hadoopクラスターのすべてのノードにおいて、HadoopのSSLクライアント設定ファイル(例:hadoop-ssl-client.xml)を作成して編集し、以下の設定を追加してください。
  11. <設定>
    <プロパティ>
    <名前>ssl.client.keystore.location</名前>
    <値>/etc/hadoop/ssl/key.pem</値>
    </プロパティ>
    <プロパティ>
    <名前>ssl.client.keystore.password</名前>
    <値>keystore_password</値>
    </プロパティ>
    <プロパティ>
    <名前>ssl.client.truststore.location</名前>
    <値>/etc/hadoop/ssl/cert.pem</値>
    </プロパティ>
    <プロパティ>
    <名前>ssl.client.truststore.password</名前>
    <値>truststore_password</値>
    </プロパティ>
    </設定>
  12. 鍵ストアのパスワードを秘密鍵のパスワードに、トラストストアのパスワードを証明書のパスワードに置き換えてください。
  13. HadoopのSSL機能を有効にする:Hadoopクラスターの各ノードに、次の環境変数をHadoopの起動スクリプト(例:hadoop-env.sh)に追加してください。
  14. HADOOP_OPTS環境変数に、”-Djavax.net.ssl.trustStore=/etc/hadoop/ssl/cert.pem -Djavax.net.ssl.trustStorePassword=truststore_password -Djavax.net.ssl.keyStore=/etc/hadoop/ssl/key.pem -Djavax.net.ssl.keyStorePassword=keystore_password”を追加します。
  15. 訳:truststore_passwordを証明書のパスワードに置き換え、keystore_passwordを証明書のパスワードに置き換える。
bannerAds