hadoop多kms配置

hadoop多kms配置,hadoop,Hadoop,我尝试用多个KM配置hadoop。我将kms客户端部件配置为: <property> <name>dfs.encryption.key.provider.uri</name> <value>kms://http@test1;test2:16000/kms</value> </property> <property> <name>hadoop.security.key.provider.path<

我尝试用多个KM配置hadoop。我将kms客户端部件配置为:

<property>
<name>dfs.encryption.key.provider.uri</name>
<value>kms://http@test1;test2:16000/kms</value>
</property>

<property>
<name>hadoop.security.key.provider.path</name>
<value>kms://http@test1;test2:16000/kms</value>
</property>
我会得到不正确的不同结果。应该是这样的,无论何时或在哪台服务器上运行该命令,它都将为我提供已创建的所有密钥。 如何正确配置kms服务器以使其正常工作

谢谢


从上面的链接我们可以得到一些线索。KMS现在似乎没有很好地设计用于故障切换。必须有一个主KM,并且可以有多个备用KM。如果主KMS关闭,则无法解密所有加密的数据。在最坏的情况下,如果主KMS发生故障并且无法恢复,我们甚至没有密钥库的复制。在这种情况下,我们将丢失数据。最好的情况是,当其他备份KM关闭时,所有其他KM都可以正常工作。

首先检查您的钥匙是否同步。以下命令的输出应在kms服务器上产生相同的结果

md5sum /var/lib/kms-keytrustee/keytrustee/.keytrustee/secring.gpg
如果输出不同,则Cloudera文档建议备份目录并联系其客户支持

以下内容可以在密钥受信者密钥位置同步密钥,但请注意,您可能会丢失密钥并使加密数据无法读取。所以要小心

rsync -zav /var/lib/kms-keytrustee/keytrustee/.keytrustee \
root@the_other_kms:/var/lib/kms-keytrustee/keytrustee/.keytrustee.
md5sum /var/lib/kms-keytrustee/keytrustee/.keytrustee/secring.gpg
rsync -zav /var/lib/kms-keytrustee/keytrustee/.keytrustee \
root@the_other_kms:/var/lib/kms-keytrustee/keytrustee/.keytrustee.