認証の構成後にDataStax Enterpriseが起動しない

許可と認証の設定が一致しないか、外部認証サービスにアクセスできない場合、DataStax Enterpriseは起動できません。

dse.yaml

dse.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/dse/dse.yaml
tarボール・インストール installation_location/resources/dse/conf/dse.yaml

DataStax Enterpriseヘルプ・センターでは、トラブルシューティング情報も提供しています。

オーソライザーにオーセンティケーターが必要

問題の説明

設定が一致しない場合、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_optionsauthorization_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オプションからスキーム設定を削除してください。