0

按照这里所说的,我使用这个 curl 拒绝了一个连接:

curl -v -H "Content-Type: application/json" -H "Accept: application/xml" -H "X-Auth-Token: 756cfb31e062216544215f54447e2716" -H "Tenant-Id: your-tenant-id" -X POST "http://saggita.lab.fi-ware.org:8080/sdc/rest/vdc/{your-tenant-id}/productInstance"

我将其更改为看起来合适的 URL:

cat test-data | curl --insecure -v -H "Content-Type: application/json" -H "Accept: application/xml" -H "X-Auth-Token: 756cfb31e062216544215f54447e2716" -H "Tenant-Id: your-tenant-id" -X POST "https://saggita.lab.fi-ware.org:8443/sdc/rest/vdc/{your-tenant-id}/productInstance" --data-binary @-

评论:我使用文件 test-data 作为有效负载,稍后我会显示我正在使用的有效负载。

通过该请愿书(使用适合我的环境的身份验证令牌和特定参数),我得到:

Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')

似乎期待 JSON 而不是 XML,所以我重新排列如下:

cat test-data | curl --insecure -v -H "Content-Type: application/xml" -H "Accept: application/xml" -H "X-Auth-Token: 756cfb31e062216544215f54447e2716" -H "Tenant-Id: your-tenant-id" -X POST "https://saggita.lab.fi-ware.org:8443/sdc/rest/vdc/{your-tenant-id}/productInstance" --data-binary @-

无论我如何更改有效负载,我都会收到此消息:

{"message":"The entity is not valid","code":42}

我尝试了这两个有效负载(以安装 apache 为例):

<productInstanceDto>
        <vm>
        <ip>MYIP</ip>
        <fqn>same as hostname, I don't have DNS resolution</fqn>
        <hostname>MYHOSTNAME</hostname>
        </vm>
        <product>
        <productDescription/>
        <name>apache2</name>
        </product>
        <attributes>
                <key>custom_att_02</key>
                <value>default_value_plain</value>
                <type>Plain</type>
        </attributes>
</productInstanceDto>

我认为这是一个非常简约且清晰的有效载荷

<productInstanceDto>
    <vm>
        <ip>MYIP</ip>
    </vm>
    <product>
        <name>apache2</name>
    </product>
</productInstanceDto>

顺便说一句,我看到 fqdn (可能丢失,该服务器上没有 dns 解析),版本(为什么我必须知道我要安装的产品的版本,这没有出现在产品目录中)之类的不幸字段,VM_ID参数的缺失:可用、简单、唯一。

我做错了什么?谢谢

4

1 回答 1

0

您正在使用 FIWARE Lab 基础架构来使用 SDC 组件。但是,它们是在 VM 中安装软件的一些要求,例如,安装 chef/puppet,在 chef-server 中注册 VM(您可以查看https://forge.fiware.org/plugins /mediawiki/wiki/fiware/index.php/Software_Deployment_%26_Configuration_-_Installation_and_Administration_Guide)。因此,如果您想在 FIWARE Lab 基础架构中使用 SDC,我的建议是您使用云门户 (cloud.lab.fiware.org) 中的蓝图功能,部署 VM、准备 VM、在 Chef 中注册 VM -服务器等等。您可以查看http://help.lab.fiware.org/中的视频蓝图。

于 2016-06-02T06:23:57.163 回答