首页 > 解决方案 > 如何将 vagrant 用于 Oracle 云基础架构

问题描述

vagrant-aws一样,我正在寻找与 Oracle 云基础设施一起使用的插件。

我找到了vagrant-oci,但不确定它是否有效。没有得到适当的例子。按照步骤并尝试使用此插件,但没有运气。

失败并出现以下错误

/root/.vagrant.d/gems/2.4.6/gems/oci-2.9.0/lib/oci/api_client.rb:477:in `handle_non_success_response': The required information to complete authentication was not provided or was incorrect. (OCI::Errors::ServiceError)

如果有人已经使用过它或有替代品,请提出建议。

标签: vagrantoracle-call-interfaceoracle-cloud-infrastructurevagrant-aws

解决方案


我同意@jodoglevy 的观点,它看起来像是一个可能的身份验证问题。查看您的 Vagrantfile 会很有帮助(适当地编辑是可以的),但快速测试是获取您在 Vagrantfile 中指定的配置文件名称和配置文件路径并运行以下命令:

oci iam availability-domain list --profile <profilename> --config-file <configfilepath>

如果这确实有效,那么 Vagrant 一定因为某种原因无法读取您的配置文件或 OCI API 密钥。看起来好像您正在以 root 身份运行 Vagrant。您的 OCI 配置可以在不同的用户帐户下吗?

顺便说一句,驱动程序中的一个回归是它不支持 MacOS 的 ssh-keygen 现在默认输出的较新的非 PEM 样式 ssh 密钥。如果您有其中一个(在序言中带有“-----BEGIN OPENSSH PRIVATE KEY-----”),那么现在您需要生成另一个密钥ssh-keygen -m PEM -f <filename>以强制使用必需的 PEM 格式。

仅供参考:配置选项的完整列表(如果需要)可在此处获得:https ://github.com/stephenpearson/vagrant-oci/blob/master/lib/vagrant-oci/config.rb


推荐阅读