HADOOP-14880. [KMS] Document&test missing KMS client side configs. Contributed by Gabor Bota.
(cherry picked from commit 97c70c7ac6
)
Conflicts:
hadoop-common-project/hadoop-kms/src/test/java/org/apache/hadoop/crypto/key/kms/server/TestKMS.java
(cherry picked from commit 21b9e4fb979ecbc8f254b76f6ed86e6ef63d74f3)
This commit is contained in:
parent
f1ff21e00c
commit
3b47f6bdfd
|
@ -114,10 +114,6 @@ public class KMSClientProvider extends KeyProvider implements CryptoExtension,
|
||||||
|
|
||||||
private static final String CONFIG_PREFIX = "hadoop.security.kms.client.";
|
private static final String CONFIG_PREFIX = "hadoop.security.kms.client.";
|
||||||
|
|
||||||
/* It's possible to specify a timeout, in seconds, in the config file */
|
|
||||||
public static final String TIMEOUT_ATTR = CONFIG_PREFIX + "timeout";
|
|
||||||
public static final int DEFAULT_TIMEOUT = 60;
|
|
||||||
|
|
||||||
/* Number of times to retry authentication in the event of auth failure
|
/* Number of times to retry authentication in the event of auth failure
|
||||||
* (normally happens due to stale authToken)
|
* (normally happens due to stale authToken)
|
||||||
*/
|
*/
|
||||||
|
@ -433,7 +429,9 @@ public class KMSClientProvider extends KeyProvider implements CryptoExtension,
|
||||||
throw new IOException(ex);
|
throw new IOException(ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
int timeout = conf.getInt(TIMEOUT_ATTR, DEFAULT_TIMEOUT);
|
int timeout = conf.getInt(
|
||||||
|
CommonConfigurationKeysPublic.KMS_CLIENT_TIMEOUT_SECONDS,
|
||||||
|
CommonConfigurationKeysPublic.KMS_CLIENT_TIMEOUT_DEFAULT);
|
||||||
authRetry = conf.getInt(AUTH_RETRY, DEFAULT_AUTH_RETRY);
|
authRetry = conf.getInt(AUTH_RETRY, DEFAULT_AUTH_RETRY);
|
||||||
configurator = new TimeoutConnConfigurator(timeout, sslFactory);
|
configurator = new TimeoutConnConfigurator(timeout, sslFactory);
|
||||||
encKeyVersionQueue =
|
encKeyVersionQueue =
|
||||||
|
|
|
@ -688,6 +688,15 @@ public class CommonConfigurationKeysPublic {
|
||||||
/** Default value for KMS_CLIENT_ENC_KEY_CACHE_EXPIRY (12 hrs)*/
|
/** Default value for KMS_CLIENT_ENC_KEY_CACHE_EXPIRY (12 hrs)*/
|
||||||
public static final int KMS_CLIENT_ENC_KEY_CACHE_EXPIRY_DEFAULT = 43200000;
|
public static final int KMS_CLIENT_ENC_KEY_CACHE_EXPIRY_DEFAULT = 43200000;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @see
|
||||||
|
* <a href="{@docRoot}/../hadoop-project-dist/hadoop-common/core-default.xml">
|
||||||
|
* core-default.xml</a>
|
||||||
|
*/
|
||||||
|
public static final String KMS_CLIENT_TIMEOUT_SECONDS =
|
||||||
|
"hadoop.security.kms.client.timeout";
|
||||||
|
public static final int KMS_CLIENT_TIMEOUT_DEFAULT = 60;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see
|
* @see
|
||||||
* <a href="{@docRoot}/../hadoop-project-dist/hadoop-common/core-default.xml">
|
* <a href="{@docRoot}/../hadoop-project-dist/hadoop-common/core-default.xml">
|
||||||
|
|
|
@ -2138,6 +2138,14 @@
|
||||||
key will be dropped. Default = 12hrs
|
key will be dropped. Default = 12hrs
|
||||||
</description>
|
</description>
|
||||||
</property>
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>hadoop.security.kms.client.timeout</name>
|
||||||
|
<value>60</value>
|
||||||
|
<description>
|
||||||
|
Sets value for KMS client connection timeout, and the read timeout
|
||||||
|
to KMS servers.
|
||||||
|
</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
<property>
|
<property>
|
||||||
<name>hadoop.security.kms.client.failover.sleep.base.millis</name>
|
<name>hadoop.security.kms.client.failover.sleep.base.millis</name>
|
||||||
|
|
|
@ -1635,7 +1635,7 @@ public class TestKMS {
|
||||||
public void testKMSTimeout() throws Exception {
|
public void testKMSTimeout() throws Exception {
|
||||||
File confDir = getTestDir();
|
File confDir = getTestDir();
|
||||||
Configuration conf = createBaseKMSConf(confDir);
|
Configuration conf = createBaseKMSConf(confDir);
|
||||||
conf.setInt(KMSClientProvider.TIMEOUT_ATTR, 1);
|
conf.setInt(CommonConfigurationKeysPublic.KMS_CLIENT_TIMEOUT_SECONDS, 1);
|
||||||
writeConf(confDir, conf);
|
writeConf(confDir, conf);
|
||||||
|
|
||||||
ServerSocket sock;
|
ServerSocket sock;
|
||||||
|
|
Loading…
Reference in New Issue