OVFをCloud Directorへインポート時に "A specified parameter was not correct: spec.sharesInfo.shares"エラーが発生する
search cancel

OVFをCloud Directorへインポート時に "A specified parameter was not correct: spec.sharesInfo.shares"エラーが発生する

book

Article ID: 411908

calendar_today

Updated On:

Products

VMware Cloud Director

Issue/Introduction

免責事項:これは英文の記事 Error "A specified parameter was not correct: spec.sharesInfo.shares" when importing OVF to a Cloud Director の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • OVFを使用してvAppを作成する際に以下のエラーが発生します(Cloud Director テナント ポータル > コンピュート > vApps > 新規 > OVF から vAppを追加):
    The operation could not be performed because the argument is invalid. A specified parameter was not correct: spec.sharesInfo.shares - A specified parameter was not correct: spec.sharesInfo.shares

  • /opt/vmware/vcloud-director/logs/vcloud-container-debug.log ファイルには、以下のようなエントリが含まれています:

YYYY-MM-DDTHH:MM:SS,### | ERROR    | task-service-activity-pool-71 | FutureUtil                     | Failed to create VM in Storage Fabric | requestId=########-####-####-####-############,request=POST https://example.com/api/vdc/########-####-####-####-############/action/instantiateOvf,requestTime=1753313976446,remoteAddress=##.####.##.###:50389,userAgent=Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/201...,accept=application/*+xml;version 38.0 vcd=########-####-####-####-############,task=########-####-####-####-############ activity=(com.vmware.vcloud.backendbase.management.system.TaskActivity,urn:uuid:########-####-####-####-############)
com.vmware.ssdc.library.exceptions.VimInvalidArgumentException: The operation could not be performed because the argument is invalid. A specified parameter was not correct: spec.sharesInfo.shares
        at com.vmware.ssdc.library.vim.LmVim.Convert(LmVim.java:262)
        at com.vmware.ssdc.library.vim.LmVim.Convert(LmVim.java:498)
        at com.vmware.vcloud.val.internal.impl.ImportVAppFromOvfActivity$ImportOvfToVcPhase.initiateImportFromOvf(ImportVAppFromOvfActivity.java:854)
        at com.vmware.vcloud.val.internal.impl.ImportVAppFromOvfActivity$ImportOvfToVcPhase.invoke(ImportVAppFromOvfActivity.java:243)
        at com.vmware.vcloud.activity.executors.ActivityRunner.runPhase(ActivityRunner.java:175)
        at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:112)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: (vmodl.fault.InvalidArgument) {
   faultCause = null,
   faultMessage = null,
   invalidProperty = spec.sharesInfo.shares
}

  • この問題は、ストレージポリシーでIOPSシェア1000が設定された仮想マシンをエクスポート/インポートする際に発生します。

Environment

VMware Cloud Director 10.5.x
VMware Cloud Director 10.6.x

Cause

この問題は、アップロードされるOVF記述子ファイル内で誤った storageIOAllocation.shares.level が指定された場合に発生します。

Resolution

この問題を回避するには:

  1. テキストエディタを使用してovfファイルを開きます。
  2. ovfファイルを編集します。
    "storageIOAllocation.shares.level" を normal に更新します。
    変更前:
    <vmw:Config vmw:key="storageIOAllocation.shares.level" vmw:value="custom" ovf:required="false"/>
    変更後:
    <vmw:Config vmw:key="storageIOAllocation.shares.level" vmw:value="normal" ovf:required="false"/>
  3. ovfファイルを保存して閉じます。
  4. テキストエディタを使用してmfファイルを開きます。
    mfファイル: ovfおよびvmdkファイルのチェックサムを含むマニフェストファイル
  5. mfファイルを編集します。マニフェストファイルには、vmdkおよびovfファイルのチェックサムが含まれています。
    例:
    SHA1(example-vm.vmdk)= #########################################
    SHA1(descriptor.ovf)= #########################################
    ovfファイルの更新されたチェックサムへマニフェストファイルを更新します。
    ファイルのチェックサムを計算するには:
    Windows:
    certutil -hashfile descriptor.ovf SHA1
    Linux:
    sha1sum descriptor.ovf

  6. mfファイルを保存して閉じます。
  7. OVFをCloud Directorにインポートします。

別の回避策:
この問題は、ストレージポリシーでIOPSシェアが1000に設定された仮想マシンからエクスポートされたOVFファイルをインポートする際に発生します。
回避策として、IOPSシェア1000以外の値で仮想マシンを作成し、vAppをエクスポートしてからインポートすることで、この問題を回避できます。