Juju 与 OpenStack 集成:“未找到凭据”

Juju 与 OpenStack 集成:“未找到凭据”

我的要求是使用 Juju 作为通用 VNF 管理器,并使用 Openstack 作为提供商。我有一个 Openstack 提供商网络,并且我的 VNF 带有基于 Centos 的图像。我创建了一个带有 Ubuntu 14.04.5 LTS 的虚拟机并安装了 Juju 2.0 2.0-beta17-trusty-amd64。

首先,我尝试手动引导来运行我的 Charm 来部署我的 VNF。手动配置到 Centos 机器失败。

现在我尝试使用 OpenStack 进行引导。我的配置文件如下

~/.local/share/juju:
clouds.yaml  config.yaml  credential.yaml

clouds:
  systack:
    type: openstack
    regions:
      RegionOne:
        endpoint: http://x.x.x./v2.0
        auth-types: [userpass]

我的凭证也正确

credentials:
  systack:
    default-credential: xxxx
    default-region: RegionOne
    juju-dev:
      auth-type: userpass
      password: xxxx
      username: xxxx
      tenant-name: xxxx
      domain-name: default

config.yaml

agent-metadata-url: https://streams.canonical.com/juju/tools/
agent-stream: devel
default-series: centos7

当我启动 Juju 时,它失败并显示以下日志。无法弄清楚出了什么问题。

ubuntu@localhost:~/.local/share/juju$ juju bootstrap openstack systack --config config.yaml --debug
00:14:10 INFO  juju.cmd supercommand.go:63 running juju [2.0-beta17 gc go1.6]
00:14:10 INFO  cmd cmd.go:141 no credentials found, checking environment
00:14:10 ERROR cmd supercommand.go:458 detecting credentials for "systack" cloud provider: openstack credentials not found
00:14:10 DEBUG cmd supercommand.go:459 (error details: [{github.com/juju/juju/cmd/juju/commands/bootstrap.go:407: } {github.com/juju/juju/cmd/modelcmd/credentials.go:122: detecting credentials for "systack" cloud provider} {github.com/juju/juju/provider/openstack/credentials.go:99: openstack credentials not found}])

答案1

您的凭证文件应该称为凭证s.yaml——请注意,输出中的文件名中缺少 s ls

仅供参考,您可以/应该使用一些命令来管理凭据,而这些命令不涉及直接接触文件:

  • juju add-credential,它将提示您输入凭证,并更新 credentials.yaml,
  • juju set-default-credential

相关内容