HDFS Transparent Encryptionは、ディスク上にあるHadoopデータを保護します。 クラスタで暗号化が有効になると、ディスク上の暗号化されたzones(HDFSディレクトリ)上のデータの書き込みと読み取り操作が自動的に暗号化され、解読されます。 このプロセスは、データを扱うアプリケーションからは見えないため、透過的です。 HDFS Transparent Encryptionは、Hadoopデータへのユーザー・アクセスには影響しませんが、パフォーマンスにはほとんど影響しません。
前提条件
HDFS透過的暗号化を使用するクラスタでは、Kerberosを有効にする必要があります。
重要:
クラスタを作成するときは、セキュリティ設定を有効にする必要があります。 クラスタを作成する人は、「クラスタの作成」で説明されているように、Create ClusterウィザードのSecurityページで「セキュリティ設定: 有効」オプションを選択する必要があります。 クラスタを作成した後は、Kerberosを有効にすることはできません。
セキュリティ設定を有効にしてクラスタを作成すると、次の処理が行われます:
HDFS透過暗号化はクラスタで有効になっています。 これを確認するには、コマンドラインで次のように入力します:
bdacli getinfo cluster_hdfs_transparent_encryption_enabled
MIT Kerberos、Sentry、ネットワーク・ファイアウォール、ネットワーク暗号化、および監査もクラスタで有効になります。
Kerberos構成の一部として、2つのプリンシパルが作成されます:
hdfs/clustername@BDACLOUDSERVICE.ORACLE.COM
- このプリンシパルを認証するためのパスワードはClouderaの管理パスワードです。
oracle/clustername@BDACLOUDSERVICE.ORACLE.COM
- このプリンシパルを認証するためのパスワードは、Oracleオペレーティング・システムのパスワードです。
どちらの場合も、clustername
はクラスタの名前で、BDACLOUDSERVICE.ORACLE.COM
はOracle Big Data Cloud MachineのKerberosレルムです。
サーバーがクラスタにインストールされ、構成されます。 このサーバーは、HDFS透過暗号化の鍵と証明書を管理するために使用されます。 このサーバーの詳細については、「Cloudera Navigatorサーバー」を参照してください。 (定期的にKey Trustee Serverのデータベースと構成ファイルをバックアップする必要があります。 Clouderaのドキュメント・トピック「サーバーのバックアップとリストア」を参照してください。)
暗号化ゾーンは、コンテンツが書き込み操作で暗号化され、読み取り操作で復号化されるHDFSディレクトリです。
関連項目:
Cloudera documentation 「暗号化キーとゾーンの管理」。
前提条件:
Cloudera Managerでサービスが正常であることを確認してください。 特に、Key Trusteeサービスが健全であることを確認してください。
2台のKMSホストが同期していることを確認します。
各KMSホストで、以下のコマンドをroot
ユーザーとして実行します。 出力は各ホストで同じにする必要があります。 そうでない場合は、Oracle Supportでサービス・リクエスト(SR)を開きます。これは、2つの鍵管理サーバーを同期させる際に問題があることを示しているためです。
# ls -l /var/lib/kms-keytrustee/keytrustee/.keytrustee # cksum /var/lib/kms-keytrustee/keytrustee/.keytrustee/* # gpg --homedir /var/lib/kms-keytrustee/keytrustee/.keytrustee --fingerprint;
特に指定しないかぎり、クラスタの任意のノードでroot
ユーザーとして次のステップを実行します。