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.";
|
||||
|
||||
/* 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
|
||||
* (normally happens due to stale authToken)
|
||||
*/
|
||||
|
@ -433,7 +429,9 @@ public class KMSClientProvider extends KeyProvider implements CryptoExtension,
|
|||
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);
|
||||
configurator = new TimeoutConnConfigurator(timeout, sslFactory);
|
||||
encKeyVersionQueue =
|
||||
|
|
|
@ -688,6 +688,15 @@ public class CommonConfigurationKeysPublic {
|
|||
/** Default value for KMS_CLIENT_ENC_KEY_CACHE_EXPIRY (12 hrs)*/
|
||||
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
|
||||
* <a href="{@docRoot}/../hadoop-project-dist/hadoop-common/core-default.xml">
|
||||
|
|
|
@ -2138,6 +2138,14 @@
|
|||
key will be dropped. Default = 12hrs
|
||||
</description>
|
||||
</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>
|
||||
<name>hadoop.security.kms.client.failover.sleep.base.millis</name>
|
||||
|
|
|
@ -1635,7 +1635,7 @@ public class TestKMS {
|
|||
public void testKMSTimeout() throws Exception {
|
||||
File confDir = getTestDir();
|
||||
Configuration conf = createBaseKMSConf(confDir);
|
||||
conf.setInt(KMSClientProvider.TIMEOUT_ATTR, 1);
|
||||
conf.setInt(CommonConfigurationKeysPublic.KMS_CLIENT_TIMEOUT_SECONDS, 1);
|
||||
writeConf(confDir, conf);
|
||||
|
||||
ServerSocket sock;
|
||||
|
|
Loading…
Reference in New Issue