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構成オブジェクトでプロパティを設定します。
spark.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アプリケーションまたはSparkシェルを実行する場合、Hadoop XML構成ファイルでプロパティを指定します。たとえば、/usr/local/lib/dse/resources/hadoop2-client/conf/dse-core-default.xmlの場合は、以下のようにします。
オプション:この方法を使用する場合で、dse-core-default.xmlに書き込む権限がない場合は、このファイルを任意の場所のpathにコピーし、以下のようにファイルを指すように環境変数を設定します。<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>
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 |