Я использую Vault на AWS с бэкэндом DynamoDB.Бэкэнд поддерживает HA.
storage "dynamodb" {
ha_enabled = "true"
region = "us-west-2"
table = "vault-data"
}
Чтение документации по концепции HA: https://www.vaultproject.io/docs/concepts/ha.html
Для обеспечения высокой доступности один из узлов сервера Vault захватывает блокировку в хранилище данных,Успешный серверный узел затем становится активным узлом;все остальные узлы становятся резервными.На этом этапе, если резервные узлы получают запрос, они либо перенаправляют запрос, либо перенаправляют клиента в зависимости от текущей конфигурации и состояния кластера - подробности см. В разделах ниже.Благодаря этой архитектуре HA не позволяет повысить масштабируемость.
Меня не интересует наличие парка экземпляров EC2 за ELB, где только 1 экземпляр ведет себя как мастер и взаимодействует с DynamoDB.
Я хотел бы запустить N экземпляров Ec2 с Vault, которые читают и пишут независимо от DynamoDB.
Поскольку DynamoDB поддерживает чтение / запись из нескольких экземпляров EC2, я ожидал, что смогу распечатать Vaultиз нескольких экземпляров одновременно и выполнять операции чтения и записи.Это должно работать даже с ha_enabled = "false"
, без проведения выборов лидера.
Почему эта архитектура не предлагается в документации?Почему это не должно работать?Есть ли какое-то криптографическое ограничение, которое я пропускаю?
спасибо