Rabbitmq 如何从外部机密设置兔子密码?

Rabbitmq 如何从外部机密设置兔子密码?,rabbitmq,kubernetes-helm,Rabbitmq,Kubernetes Helm,rabbit helm图表文档说明如果我配置 auth: existingPasswordSecret existingErlangSecret 然后兔子将从现有资源中获取这些秘密。在我启用loadDefinition以便在图表安装时预配置虚拟主机之前,这实际上是有效的: extraSecrets: load-definition: load_definition.json: | { "users": [

rabbit helm图表文档说明如果我配置

 auth:
    existingPasswordSecret
    existingErlangSecret
然后兔子将从现有资源中获取这些秘密。在我启用loadDefinition以便在图表安装时预配置虚拟主机之前,这实际上是有效的:

extraSecrets:
  load-definition:
    load_definition.json: |
      {
        "users": [
          {
            "name": "user",
            "tags": "administrator"
          }
        ],
        "vhosts": [
            {
                "name": "development"
            },
            {
                "name": "staging"
            },
            {
                "name": "/"
            }
        ],
        "permissions": [
            {
                "user": "user",
                "vhost": "development",
                "configure": ".*",
                "write": ".*",
                "read": ".*"
            },
            {
                "user": "user",
                "vhost": "/",
                "configure": ".*",
                "write": ".*",
                "read": ".*"
            },
            {
                "user": "user",
                "vhost": "staging",
                "configure": ".*",
                "write": ".*",
                "read": ".*"
            }
        ],
启用后,兔子未使用来自外部机密的密码,密码为空。 我的问题-我如何仍然使用现有的秘密来定义密码和预配置 虚拟主机、权限等


我还尝试从定义中删除“users”块,但rabbit在安装后立即崩溃。

我假设rabbit使用您的
值。yaml
条目创建用户,但在加载定义时会覆盖它。如果您从
definitions.json
中删除用户部分,这可能已经有帮助了。实际上,这目前是不可能的。定义不适用于外部机密。您必须在定义中定义用户,或者使用外部机密为预定义的
用户定义密码。