问:如何获取块卷复制的状态

时间:2018-02-15 15:50:49

标签: ibm-cloud-infrastructure

如何知道块卷复制的逻辑副本完成? *目的是在完成逻辑副本后重新启动应用程序DB。

我想知道它是否能够使用以下API或其他API进行检查。

  1. 当"活跃交易次数"在源磁盘中是0. *
  2. 当API" Network_Storage :: isDuplicateReadyToMount"表示" true"在目标磁盘上。
  3. 当API" SoftLayer_Network_Storage_Iscsi :: getVolumeStatus"表示源磁盘上的某个值。
  4. *显示" slcli block volume-detail"等

1 个答案:

答案 0 :(得分:0)

要知道卷复制是否成功完成,您需要验证存储卷上是否有任何活动事务。

  1. 您注意到此交易数量应为0。
  2. 此方法仅返回一个布尔值,该布尔值与卷是否已准备好让主机有权访问它有关,但它也声明“这不表示另一个操作是否可能阻塞”并更好地检查volumeStatus,因此它不能验证是否已完全配置存储卷。
  3. 如果在指定卷上运行了事务,并且成功完成后“PROVISION COMPLETED”值,则此方法返回null。
  4. 您可以在块卷上使用SoftLayer_Network_Storage :: getObject方法,如果尚未完成,它将在activeTransactionsCount参数上具有不同于0的值,并且对象activeTransactions将显示更多信息。

    尝试以下REST示例: 方法GET

    https://[apiUsername]:[apiKey]@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/[storageId]/getObject?objectMask=mask[id,capacityGb,username,activeTransactionCount,activeTransactions, originalVolumeName,originalVolumeSize]
    

    我推荐上面的方法,因为控制门户和SLcli使用了这个方法。