我想使用保管库服务器存储机密并将其部署在openshift上。
我编写了这个dockerfile,构建了映像并将其推送到openshift注册表,并从该映像流创建了部署:
FROM vault:1.5.0
ADD *.hcl /etc/config.hcl
ENTRYPOINT ["vault", "server", "-config=/etc/config.hcl"]
这是配置:
storage "file" {
path = "/vault/data"
}
listener "tcp" {
address="127.0.0.1:8200"
tls_disable=1
}
disable_mlock = true
api_addr = "http://127.0.0.1:8200"
我创建了一个通往8200端口的路由。当我从Vault服务器吊舱中使用Vault CLI时,它可以正常工作,我可以登录,配置等。当我在本地计算机上使用openshift cli将端口8200转发到本地8200端口时,我也可以访问API。
问题是我无法从Pod之外的任何位置访问API。该路由使我收到503响应,并且通过http://vault-server.namepsace.svc:8200尝试时,连接被拒绝(使用Spring Rest模板)。
如何配置保险柜以也接受外部流量?
答案 0 :(得分:1)
您的listener
块表示您仅在侦听来自localhost的连接。将address
字段更改为0.0.0.0:8200
以在所有接口上侦听:
listener "tcp" {
address="0.0.0.0:8200"
}
并且请不要忘记在连接正常后立即启用TLS。