認証の構成後にDataStax Enterpriseが起動しない
許可と認証の設定が一致しないか、外部認証サービスにアクセスできない場合、DataStax Enterpriseは起動できません。
dse.yaml
dse.yamlファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/dse.yaml |
tarボール・インストール | installation_location/resources/dse/conf/dse.yaml |
オーソライザーにオーセンティケーターが必要
問題の説明
設定が一致しない場合、DataStax Enterpriseは起動できません。たとえば、dse.yaml の設定がauthentication_options.enabled: false
およびauthorization_options.enabled: true
となっている場合、DSEは起動しなくなり、cassandra/system.log
に以下のエラーが記録されます。
Caused by: org.apache.cassandra.exceptions.ConfigurationException: com.datastax.bdp.cassandra.auth.DseAuthenticator does not currently require authentication, so it can't be used with com.datastax.bdp.cassandra.auth.DseAuthorizer which does currently require authorization.You need to either choose new classes or update their configurations so they are compatible.
解決策
authentication_options
とauthorization_options
の両方をdse.yaml ファイルの同じ設定に対して有効にします。
外部認証サービスにアクセスできない
問題の説明
設定が
authentication_options.enabled: true
で、かつスキームが構成されていないか、 dse.yamlで構成されている、対応するサービスが利用できない場合、DataStax Enterpriseの起動が失敗します。 role_manager.mode
authentication_options.default_scheme
authentication_options.other_scheme
たとえば、default_schemaがkerberosに設定されており、kerberos_options
で定義されているKDSサーバが使用できない場合、cassandra/system.log
に以下の起動エラーが表示されます。
1) An exception was caught and reported.Message: The dse service keytab at this location resources/dse/conf/dse.keytab either doesn't exist or cannot be read by the dse service at com.datastax.bdp.DseModule.configure(Unknown Source)
解決策
構成されたKDCまたはLDAPホストが使用可能であることを確認するか、DSE AuthenticatorまたはRole Managerオプションからスキーム設定を削除してください。