DSEFS認証

DSEFSは、セキュアなDataStax EnterpriseクラスターおよびセキュアでないDataStax Enterpriseクラスターと連携します。

DSEFSは、セキュアでないクラスターと連携します。

セキュアでないクラスターとDSEFSの連携

DSEFSは、cassandra.yamlファイルのAllowAllAuthenticator設定により、セキュアでないクラスター上で動作します。

セキュアなクラスターでのDSEFS認証

認証が必要になるのは、クラスターで認証が有効になっている場合のみです。セキュアなクラスター上のDSEFSには、DSE Unified Authenticatorが必要です。認証は、デフォルトではオフになっています。

DSE Unified AuthenticatorによるDSEFS認証では、内部Cassandraパスワード認証とLDAPパススルー認証の組み合わせを使用して認証をサポートします。DSEFSでは、Kerberos認証はサポートしていません。

DSEFS認証は、DSEFSクライアントとDSEFSサーバー間の通信にのみ適用されます。DSE Unified Authenticatorによる認証を構成する必要があり、これにはcassandra.yamlファイルおよびdse.yamlファイル内のプロパティの構成も含まれます。

dse fsコマンドを使用する場合: 認証情報を複数の方法で提供できます。「認証情報」を参照してください。

SparkシェルでのhadoopConfigurationオブジェクトを使用した認証

Sparkシェルで、次のようにします。
sc.hadoopConfiguration.set("com.datastax.bdp.fs.client.authentication", "basic")
sc.hadoopConfiguration.set("com.datastax.bdp.fs.client.authentication.basic.password", <pass>)
sc.hadoopConfiguration.set("com.datastax.bdp.fs.client.authentication.basic.username", <user>)

Spark Streamingアプリケーション

Spark Streamingアプリケーションでは、以下のいずれかの方法で認証情報を提供します。
  • 以下のように、dse spark-submit --confコマンド引数を使用して設定します。
    dse -u cassandra -p cassandra spark-submit --conf spark.hadoop.com.datastax.bdp.fs.client.authentication=basic --conf com.datastax.bdp.fs.client.authentication.basic.username=username --conf
    com.datastax.bdp.fs.client.authentication.basic.password=password
    --conf spark.hadoop.com.datastax.bdp.fs.client.authentication=basicのspark.hadoopプレフィックスに注目してください。
  • SparkContextが作成される前にSpark構成オブジェクトをプログラムで設定します。
    conf.set("spark.hadoop.com.datastax.bdp.fs.client.authentication", "basic")
    conf.set("spark.hadoop.com.datastax.bdp.fs.client.authentication.basic.username", <user>)
    conf.set("spark.hadoop.com.datastax.bdp.fs.client.authentication.basic.password", <pass>)
  • Sparkシェルを実行する場合、SparkContextが起動時に作成されるため、SparkContext Hadoop構成オブジェクトでプロパティを設定します。
    sc.hadoopConfiguration.set("com.datastax.bdp.fs.client.authentication", "basic")
    sc.hadoopConfiguration.set("com.datastax.bdp.fs.client.authentication.basic.username", <user>)
    sc.hadoopConfiguration.set("com.datastax.bdp.fs.client.authentication.basic.password", <pass>)
    spark.hadoopプレフィックスがないことに注目してください。
  • SparkアプリケーションまたはSparkシェルを実行する場合、Hadoop XML構成ファイルでプロパティを指定します。たとえば、/usr/local/lib/dse/resources/hadoop2-client/conf/dse-core-default.xmlの場合は、以下のようにします。
    <property>
    <name>com.datastax.bdp.fs.client.authentication</name>
    <value>basic</value>
    </property>
    <property>
    <name>com.datastax.bdp.fs.client.authentication.basic.username</name>
    <value>username</value>
    </property>
    <property>
    <name>com.datastax.bdp.fs.client.authentication.basic.password</name>
    <value>password</value>
    </property>
    オプション:この方法を使用する場合で、dse-core-default.xmlに書き込む権限がない場合は、このファイルを任意の場所のpathにコピーし、以下のようにファイルを指すように環境変数を設定します。
    export HADOOP2_CONF_DIR=path
dse.yamlファイルの場所は、インストールのタイプによって異なります。
Installer-Services /etc/dse/dse.yaml
パッケージ・インストール /etc/dse/dse.yaml
Installer-No Services install_location/resources/dse/conf/dse.yaml
tarボール・インストール install_location/resources/dse/conf/dse.yaml
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/dse/cassandra/cassandra.yaml
tarボール・インストール install_location/resources/cassandra/conf/cassandra.yaml