Amazon dynamodb 是否可以使用DynamoDB存储后端扩展Hashicorp Vault?

Amazon dynamodb 是否可以使用DynamoDB存储后端扩展Hashicorp Vault?,amazon-dynamodb,hashicorp-vault,Amazon Dynamodb,Hashicorp Vault,我正在使用AWS上的Vault和DynamoDB后端。后端支持HA storage "dynamodb" { ha_enabled = "true" region = "us-west-2" table = "vault-data" } 阅读医管局概念文件: 为了实现高可用性,其中一个Vault服务器节点会在数据存储中获取一个锁。然后,成功的服务器节点成为活动节点;所有其他节点都成为备用节点。此时,如果备用节点接收到请求,它们将转发请求或重定向客户机,具体取决于

我正在使用AWS上的Vault和DynamoDB后端。后端支持HA

storage "dynamodb" {
  ha_enabled = "true"
  region     = "us-west-2"
  table      = "vault-data"
}
阅读医管局概念文件:

为了实现高可用性,其中一个Vault服务器节点会在数据存储中获取一个锁。然后,成功的服务器节点成为活动节点;所有其他节点都成为备用节点。此时,如果备用节点接收到请求,它们将转发请求或重定向客户机,具体取决于集群的当前配置和状态——有关详细信息,请参阅下面的部分。由于这种体系结构,HA无法实现更高的可伸缩性

我对在ELB后面有一个EC2实例舰队不感兴趣,在ELB后面只有一个实例的行为像一个主实例,并且与DynamoDB对话

我想运行N个运行Vault的Ec2实例,它们独立于DynamoDB进行读写

因为DynamoDB支持从多个EC2实例读取/写入,所以我希望能够同时从多个实例解封Vault并执行读取和写入操作。即使在不进行领导人选举的情况下,这也应该适用于
ha_enabled=“false”

为什么文档中不建议使用此体系结构?为什么它不应该起作用?我是否缺少任何加密限制


谢谢

这是Vault Enterprise的一项功能。使用它,您可以设置一个主群集和尽可能多的“辅助”群集,即性能副本。每个集群都有自己的存储和解封机制。所以你可以把一个集群放在Dynamo DB上,另一个放在Raft上。如果两个都在Dynamo DB上,那么您需要为每个都提供一个Dynamo DB表

但请记住,性能副本将始终将写入操作转发给主群集。写入操作会影响Vault的全局状态。从这个意义上讲,发送到
/transit
的POST不被视为写入操作

另一种可能是本地安装kv存储(带有
-local
标志)。然后,即使装载到性能复制副本上,它的行为也会像主集群一样,代价是无法复制到另一个集群


最后一点注意:DR群集是任何群集的精确副本。每个群集(无论是主群集还是副本群集)都可以有其灾难恢复群集。

好问题,您成功设置了吗?2019年,我在阿姆斯特丹的HashiConf EU向一位Vault开发人员提出了这个问题。他确认多个Vault EC2实例不能同时访问后端DynamoDB存储,这样做可能会导致意外问题。我没有收到足够的信息来详细解释限制的来源。建议的解决方案是使用Vault Enterprise,它具有支持水平可扩展性的功能。我仍然非常有兴趣了解限制从何而来。