【问题标题】:Hashicorp Vault stops being initialised after rebootHashicorp Vault 重启后停止初始化
【发布时间】:2020-03-09 17:38:57
【问题描述】:

出于某些测试目的,我在单个 AWS EC2 实例上安装了带有 Consul 的 Vault 作为后端。我成功初始化并解封它。一切正常,我可以进行测试。

但是每次我停止 EC2 实例并重新启动它时,Vault 都没有初始化(命令vault status 显示“Initialized”-“false”)。结果,我需要再次启动 Vault 并丢失我所有的秘密。

有没有办法在停止 EC2 实例并重新启动后保持 Vault 的初始化?

保险库配置文件:

  • config.hcl
storage "consul" {
    address = "127.0.0.1:8500"
    path    = "vault/"
}

listener "tcp" {
    address  = "0.0.0.0:8200"
    tls_disable = 1
}

ui = true
  • vault.service
[Unit]
Description="Hashicorp Vault - A tool for managing secrets"
Documentation=https://www.vaultproject.io/docs/
ConditionFileNotEmpty=/etc/vault.d/config.hcl

[Service]
ExecStart=/usr/bin/vault server -config=/etc/vault.d/config.hcl
ExecReload=/bin/kill --signal HUP $MAINIP
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

consul 配置文件:

  • consul.hcl
datacenter = "dc1"
data_dir = "/tmp/consul"
encrypt = ""
  • server.hcl
datacenter = "dc1"
data_dir = "/tmp/consul"
encrypt = ""
  • consul.service
[Unit]
Description=Consul
Documentation=https://www.consul.io/

[Service]
ExecStart=/usr/bin/consul agent -ui -config-dir=/etc/consul.d/
ExecReload=/bin/kill -HUP $MAINIP
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

任何想法都将不胜感激。

【问题讨论】:

    标签: configuration consul hashicorp-vault


    【解决方案1】:

    Vault 正在利用 Consul 存储其数据,但您让 Consul 将该数据存储在 /tmp 中,这是一个易失性目录,并在重新启动时清空。

    datacenter = "dc1"
    data_dir = "/tmp/consul"
    encrypt = ""
    

    尝试将data_dir 更改为/var/consul 之类的内容

    【讨论】:

    • 谢谢@joeb。它有帮助
    • 如果我已经在控制台中有数据并且数据目录是 /tmp/console 怎么办?如何在不丢失所有现有数据的情况下更改数据目录?
    猜你喜欢
    • 2017-12-18
    • 2021-11-06
    • 2021-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多