需要额外的参数? SoftLayer_Network_Storage::failbackFromReplicant & SoftLayer_Network_Storage::failoverToReplicant

extra parameter is required? SoftLayer_Network_Storage::failbackFromReplicant & SoftLayer_Network_Storage::failoverToReplicant

来自文档:

SoftLayer_Network_Storage::failoverToReplicant,需要1个参数:replicantId SoftLayer_Network_Storage::failbackFromReplicant,需要 none 参数。

但来自 python 客户:

SoftLayer_Network_Storage::failoverToReplicant,需要2个参数: replicantId,立即 SoftLayer_Network_Storage::failbackFromReplicant,需要1个参数:replicantId

我不确定哪个是正确的,但 python 客户端对我来说更有意义。

我猜元数据 (https://api.softlayer.com/metadata/v3.1) 需要修复:

        "failbackFromReplicant":
        {
            "name": "failbackFromReplicant",
            "type": "boolean",
            "doc": "Failback from a volume replicant. In order to failback the volume must have already been failed over to a replicant. "
        },
        "failoverToReplicant":
        {
            "name": "failoverToReplicant",
            "type": "boolean",
            "doc": "Failover to a volume replicant.  During the time which the replicant is in use the local nas volume will not be available. ",
            "parameters":
            [
                {
                    "name": "replicantId",
                    "type": "int",
                    "doc": "Replicant ID to failover to"
                }
            ]
        },

SLDN 文档很好,

您可以使用此 RestFul 请求进行故障转移:

POST https://$USERNAME:$APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/111111/failoverToReplicant

payload:

{
    "parameters": [22222]
}

where 22222 is the ID of object storage's replica and 111111 is the ID of the block storage.

对于故障回复,您需要使用此 RESTFul:

GET https://$USERNAME:$APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/111111/failbackFromReplicant

where 111111 is the ID of the block storage

它看起来很混乱,但这就是 softlayer 制作它的方式。我猜想 Softlayer Python 客户端正试图通过添加这些额外参数来避免这种混淆。无论如何,如果您希望可以在 Softlayer Python 客户端的 Git 项目中提交问题,以便客户端尊重文档。

此致