分散カタログ内のデータストアでメディアの同期が失敗します。
search cancel

分散カタログ内のデータストアでメディアの同期が失敗します。

book

Article ID: 414339

calendar_today

Updated On:

Products

VMware Cloud Director

Issue/Introduction

免責事項: これは英文の記事 「Media synchronization fails for data stores in a distributed catalog.」 の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

 

  • 分散カタログにメディアをアップロードしても、全てのデータストアに同期されません。
  • 手動で更新を行っても、タスクはエラーとなり同期は失敗します。
  • タスクがエラーとなった際に次のようなログの出力が見られます。

    vcloud-container-debug.log
    ----------------
    XXXX-XX-XX XX:XX:XX,XXX | ERROR    | content-library-activity-pool33 | RefreshCatalogActivity         | [Activity Execution] Error occurred while updating bound catalog <catalog-num> permissions - Handle: urn:uuid:<handle-uuid>, Current Phase: RefreshCatalogActivity$ProcessPermissionsPhase | requestId=<request-id>,request=POST https://<vCD-FQDN>/cloudapi/1.0.0/catalogs/urn:vcloud:catalog:<catalog-id>/refresh,requestTime=XXXXXXXXXX,remoteAddress=XX.XX.X.XX:XXXXX,userAgent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ...,accept=application/json;version 40.0.0-alpha vcd=<vcd-id>,task=<task-id> activity=(com.vmware.vcloud.backendbase.management.system.TaskActivity,urn:uuid:<task-id>) activity=(com.vmware.cl.activities.RefreshCatalogActivity,urn:uuid:<catalog-id>)
    com.vmware.ssdc.util.LMException: com.vmware.ssdc.util.LMException: HTTP error on GET https://<ESXi-HostName>/folder/distributedCatalogs/<catalog-num>//default-permissions?dsName=<datastore-name>: 401
            at com.vmware.ssdc.util.LMException.wrap(LMException.java:135)
            at com.vmware.cl.distributed.DistributedCatalogUtils.processPermission(DistributedCatalogUtils.java:700)
            at com.vmware.cl.activities.RefreshCatalogActivity$ProcessPermissionsPhase.invokeCancelableOperation(RefreshCatalogActivity.java:584)
            at com.vmware.vcloud.common.activity.toolkit.VcdAbstractActivity$CancelablePhase.invoke(VcdAbstractActivity.java:591)
            at com.vmware.vcloud.activity.executors.ActivityRunner.runPhase(ActivityRunner.java:175)
            :
    ----------------

    ESXi: hostd
    ----------------
    XXXX-XX-XXTXX:XX:XX.XXXZ warning hostd[2100186] [Originator@6876 sub=Vimsvc.CgiServiceManager] Path for ticket is not valid: ***e71f9: '/folder/distributedCatalogs/<catalog-num>/default-permissions?dsName=<datastore-name>' != '/folder/distributedCatalogs/<catalog-num>//default-permissions?dsName=<datastore-name>'
    XXXX-XX-XXTXX:XX:XX.XXXZ info hostd[2100226] [Originator@6876 sub=Vimsvc.TaskManager opID=<request-id>;activity=urn:uuid:<activity-id> user=vpxuser:VSPHERE.LOCAL\Administrator] Task Created : haTask--vim.SessionManager.acquireGenericServiceTicket-2053185
    XXXX-XX-XXTXX:XX:XX.XXXZ info hostd[6434068] [Originator@6876 sub=Vimsvc.TaskManager opID=<request-id>;activity=urn:uuid:<activity-id> user=vpxuser:VSPHERE.LOCAL\Administrator] Task Completed : haTask--vim.SessionManager.acquireGenericServiceTicket-2053185 Status success
    XXXX-XX-XXTXX:XX:XX.XXXZ warning hostd[2100391] [Originator@6876 sub=Vimsvc.CgiServiceManager] Path for ticket is not valid: ***0906d: '/folder/distributedCatalogs/<catalog-num>/default-permissions?dsName=<datastore-name>' != '/folder/distributedCatalogs/<catalog-num>//default-permissions?dsName=<datastore-name>'
    ----------------

Environment

VMware Cloud Director 10.6.x

Cause

分散カタログ同期の際、カタログパスのチェックの不一致でエラーとなります。
これは vCD に "vcloud.val.httptransfer.useVcenterUrl" パラメータが追加されており、
"false" に設定されている場合、カタログパスに余分な "/" が追記されることにより発生します。

Resolution

"vcloud.val.httptransfer.useVcenterUrl" パラメータの値を "true" に設定します。

# /opt/vmware/vcloud-director/bin/cell-management-tool manage-config -n vcloud.val.httptransfer.useVcenterUrl -v true
# service vmware-vcd restart

Additional Information

この問題は将来の vCD バージョンで fix される予定です。