I have successfully used the Apache Hadoop KMS with HDFS for encryption.
I'm now attempting to integrate the Ranger 0.7.0  KMS implementation.  I
feel I have configured everything correctly, but I'm getting the following
exceptions when attempting to create a key.

On the command line:

[pebradley@cognosprod hadoop-2.7.3]$ bin/hadoop key create lukas
l has not been created. java.io.IOException: HTTP status [500], message
[Internal Server Error]
java.io.IOException: HTTP status [500], message [Internal Server Error]
at org.apache.hadoop.util.HttpExceptionUtils.validateResponse(
HttpExceptionUtils.java:169)
at org.apache.hadoop.crypto.key.kms.KMSClientProvider.call(
KMSClientProvider.java:546)
at org.apache.hadoop.crypto.key.kms.KMSClientProvider.call(
KMSClientProvider.java:504)
at org.apache.hadoop.crypto.key.kms.KMSClientProvider.createKeyInternal(
KMSClientProvider.java:677)
at org.apache.hadoop.crypto.key.kms.KMSClientProvider.
createKey(KMSClientProvider.java:685)
at org.apache.hadoop.crypto.key.KeyShell$CreateCommand.
execute(KeyShell.java:483)
at org.apache.hadoop.crypto.key.KeyShell.run(KeyShell.java:79)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.crypto.key.KeyShell.main(KeyShell.java:515)

In the KMS Plugin logs within /usr/local/ranger-kms/ews/logs/kms.log:

2017-04-24 14:41:27,473 ERROR [webservices-driver] - Servlet.service() for
servlet [webservices-driver] in context with path [/kms] threw exception
java.lang.NullPointerException
at org.apache.http.client.utils.URLEncodedUtils.parse(
URLEncodedUtils.java:235)
at org.apache.hadoop.security.token.delegation.web.
ServletUtils.getParameter(ServletUtils.java:48)
at org.apache.hadoop.security.token.delegation.web.
DelegationTokenAuthenticationHandler.managementOperation(
DelegationTokenAuthenticationHandler.java:171)
at org.apache.hadoop.security.authentication.server.
AuthenticationFilter.doFilter(AuthenticationFilter.java:514)
at org.apache.hadoop.crypto.key.kms.server.KMSAuthenticationFilter.doFilter(
KMSAuthenticationFilter.java:129)

In the very least, the Hadoop command line is communicating with KMS for
the operation, but it appears as if something is missing.

Any insights?

Lukas

Reply via email to