Bundle Transfer Utility (v 5.2) Cheat Sheet

Overview

I have a couple other posts on my site regarding this tool. The documentation in the wild is…well wild. Unfortunately, the vendor doesn’t make the instructions very clear, at least for the paths to use when uploading to SDDC Manager. This could be just me, but I have a suspicion that more than a few folks have trouble with this tool. Hopefully this post will help you speed through this!

I am using an Ubuntu 24.04.1 desktop to download the bundles. The default shebang on the lcm-bundle-transfer-util script is:

#!/usr/bin/env sh

This will not work with a bash shell. I have another Bundle Transfer Utility post, regarding the error that will be seen if this is the case, if you want to read more. To allow the script to work for all the procedures, edit the file and change the shebang to:

#!/usr/bin/bash

Be sure to save the file after making the edit!

Manifest File

Start by downloading the manifest file:

$ ./lcm-bundle-transfer-util --download --manifestDownload --depotUser Username

For --depotUser, enter your Broadcom Support Portal user name.

arombaut@Ubuntu-VCF:~/Downloads/lcm-tools-prod/bin$ ./lcm-bundle-transfer-util --download --manifestDownload --depotUser [email protected]
*********Welcome to OBTU tool***********

Make sure to download the most recent metadata files and upload them to the SDDC Manager appliance before
downloading bundles. If you do not have the most recent metadata files, the metadata for most recent upgrades will be
missing and will impact the upgrades. The following metadata files are required:  LCM manifest and VMware compatibility
data (For 5.0 or upgrade to 5.0), vSAN HCL data (For 5.1 or upgrade to 5.1). VxRail requires these additional metadata files: 
VxRail compatibility data (For 5.0 or upgrade to 5.0) and partner bundle manifest (PBM).
https://docs.vmware.com/en/VMware-Cloud-Foundation/5.0/context?id=vcf_451\n
OpenJDK 64-Bit Server VM warning: Ignoring option --illegal-access=warn; support was removed in 17.0
----------------------------------------------------------------------------------------------------
                                              WARNING                                               
* Have you configured TCP keepalive in your SSH client to prevent socket connection timeouts when
using the Bundle Transfer Tool for long-running operations?
----------------------------------------------------------------------------------------------------
Please acknowledge that the above requirements are met and press [Y/N] to continue: Y
VMware Cloud Foundation LCM Bundle Transfer Tool, Version: 2024.07-24108578
Enter Myvmware user password: 
Validating the depot user credentials...
Downloading LCM Manifest to: /home/arombaut/PROD2/evo/vmw
Successfully completed downloading file
Log file: /var/log/vmware/vcf/lcm/tools/debugtool/tmp/debuglog/lcmdebug.log

Pay attention to the line that lets you know where the manifest is downloaded to! This is only applicable to this computer. Since we are downloading on a different computer and then moving the files at a later time, the part that matters is the PROD2/evo/vmw portion. This is explained later in Upload Manifest File to SDDC Manager. Also note that the log file will not write even if the directory is created ahead of time.

Downloading LCM Manifest to: /home/arombaut/PROD2/evo/vmw

Compatibility Data

$ ./lcm-bundle-transfer-util --download --compatibilityMatrix --depotUser Username
arombaut@Ubuntu-VCF:~/Downloads/lcm-tools-prod/bin$ ./lcm-bundle-transfer-util --download --compatibilityMatrix --depotUser [email protected]
*********Welcome to OBTU tool***********

Make sure to download the most recent metadata files and upload them to the SDDC Manager appliance before
downloading bundles. If you do not have the most recent metadata files, the metadata for most recent upgrades will be
missing and will impact the upgrades. The following metadata files are required:  LCM manifest and VMware compatibility
data (For 5.0 or upgrade to 5.0), vSAN HCL data (For 5.1 or upgrade to 5.1). VxRail requires these additional metadata files: 
VxRail compatibility data (For 5.0 or upgrade to 5.0) and partner bundle manifest (PBM).
https://docs.vmware.com/en/VMware-Cloud-Foundation/5.0/context?id=vcf_451\n
OpenJDK 64-Bit Server VM warning: Ignoring option --illegal-access=warn; support was removed in 17.0
----------------------------------------------------------------------------------------------------
                                              WARNING                                               
* Have you configured TCP keepalive in your SSH client to prevent socket connection timeouts when
using the Bundle Transfer Tool for long-running operations?
----------------------------------------------------------------------------------------------------
Please acknowledge that the above requirements are met and press [Y/N] to continue: Y
VMware Cloud Foundation LCM Bundle Transfer Tool, Version: 2024.07-24108578
Enter Myvmware user password: 
Validating the depot user credentials...
User has not set the path using the default path
Directory to download data is existing or created at path /home/arombaut/PROD2/evo/vmw/
Download VMware compatibility matrix to directory /home/arombaut/PROD2/evo/vmw/Compatibility/VmwareCompatibilityData.json
2024-10-01T14:13:23.284-04:00  INFO   --- [           main] c.v.v.c.c.i.v.rest.client.VvsApiClient   : vvs uri with query params: https://vvs.esp.vmware.com/v1/products/bundles/type/vcf-lcm-v2-bundle?format=json
vvs uri with query params: https://vvs.esp.vmware.com/v1/products/bundles/type/vcf-lcm-v2-bundle?format=json
Successfully downloaded VMWARE_COMPAT compatibility data to file /home/arombaut/PROD2/evo/vmw/Compatibility/VmwareCompatibilityData.json
Compatibility metadata has been downloaded, to upload to SDDC Manager use this path as input: /home/arombaut/PROD2/evo/vmw/
Log file: /var/log/vmware/vcf/lcm/tools/debugtool/tmp/debuglog/lcmdebug.log

Notice that this also tells you what to use when uploading to SDDC Manager. Since we are moving the files to another computer, the part that matters is the PROD2/evo/vmw portion.

Compatibility metadata has been downloaded, to upload to SDDC Manager use this path as input: /home/arombaut/PROD2/evo/vmw/

vSAN HCL File

$ ./lcm-bundle-transfer-util --vsanHclDownload
arombaut@Ubuntu-VCF:~/Downloads/lcm-tools-prod/bin$ ./lcm-bundle-transfer-util --vsanHclDownload
*********Welcome to OBTU tool***********

Make sure to download the most recent metadata files and upload them to the SDDC Manager appliance before
downloading bundles. If you do not have the most recent metadata files, the metadata for most recent upgrades will be
missing and will impact the upgrades. The following metadata files are required:  LCM manifest and VMware compatibility
data (For 5.0 or upgrade to 5.0), vSAN HCL data (For 5.1 or upgrade to 5.1). VxRail requires these additional metadata files: 
VxRail compatibility data (For 5.0 or upgrade to 5.0) and partner bundle manifest (PBM).
https://docs.vmware.com/en/VMware-Cloud-Foundation/5.0/context?id=vcf_451\n
OpenJDK 64-Bit Server VM warning: Ignoring option --illegal-access=warn; support was removed in 17.0
Please acknowledge that the above requirements are met and press [Y/N] to continue: Y
VMware Cloud Foundation LCM Bundle Transfer Tool, Version: 2024.07-24108578
Downloading the vSAN HCL file to path: /home/arombaut/PROD2/vsan/hcl/all.json
Successfully completed downloading vSAN HCL file
Log file: /var/log/vmware/vcf/lcm/tools/debugtool/tmp/debuglog/lcmdebug.log

Downloading the Upgrade Bundles

$ ./lcm-bundle-transfer-util --download --outputDirectory absolute-path-output-dir --
depotUser Username --sv current-vcf-version --p target-vcf-version
arombaut@Ubuntu-VCF:~/Downloads/lcm-tools-prod/bin$ ./lcm-bundle-transfer-util --download --outputDirectory /home/arombaut/vcf-bundles --depotUser [email protected] --sv 5.1.0.0 --p 5.2.0.0
*********Welcome to OBTU tool***********

Make sure to download the most recent metadata files and upload them to the SDDC Manager appliance before
downloading bundles. If you do not have the most recent metadata files, the metadata for most recent upgrades will be
missing and will impact the upgrades. The following metadata files are required:  LCM manifest and VMware compatibility
data (For 5.0 or upgrade to 5.0), vSAN HCL data (For 5.1 or upgrade to 5.1). VxRail requires these additional metadata files: 
VxRail compatibility data (For 5.0 or upgrade to 5.0) and partner bundle manifest (PBM).
https://docs.vmware.com/en/VMware-Cloud-Foundation/5.0/context?id=vcf_451\n
OpenJDK 64-Bit Server VM warning: Ignoring option --illegal-access=warn; support was removed in 17.0
----------------------------------------------------------------------------------------------------
                                              WARNING                                               
* Have you configured TCP keepalive in your SSH client to prevent socket connection timeouts when
using the Bundle Transfer Tool for long-running operations?
----------------------------------------------------------------------------------------------------
Please acknowledge that the above requirements are met and press [Y/N] to continue: Y
VMware Cloud Foundation LCM Bundle Transfer Tool, Version: 2024.07-24108578
Enter Myvmware user password: 
Validating the depot user credentials...
Do you want to include VMware Aria Products bundles (Y/N)?: Y
Creating delta file
Downloading LCM Manifest to: /home/arombaut/vcf-bundles
Successfully completed downloading file
Default manifest file found, attempting to read into manifest object.
Copping /home/arombaut/vcf-bundles/tmp/index.v3 to /home/arombaut/vcf-bundles/index.v3
List of applicable bundles: 

-------------------------------------------------------------------------------------------------------------------------------------------------
Bundle                               | Product Version  |      Bundle Size | Bundle Component                                   | Bundle Type    
-------------------------------------------------------------------------------------------------------------------------------------------------
bundle-124939                        | 5.2.0.0          |         605.6 MB | ESX_HOST-8.0.3-24022510                            | PATCH          
bundle-124940                        | 5.2.0.0          |        8759.2 MB | NSX_T_MANAGER-4.2.0.0.0-24105817                   | PATCH          
bundle-124938                        | 5.2.0.0          |           0.0 MB | SDDC_MANAGER_VCF-5.2.0.0-24108943                  | PATCH (Drift)  
bundle-124937                        | 5.2.0.0          |        2367.8 MB | SDDC_MANAGER_VCF-5.2.0.0-24108943                  | PATCH          
bundle-124942                        | 5.2.0.0          |       18032.7 MB | VCENTER-8.0.3.00100-24091160                       | PATCH          
bundle-125047                        | 5.2.0.0          |        4168.8 MB | NSX_ALB-22.1.6-23390967                            | INSTALL        
bundle-124941                        | 5.2.0.0          |       11445.2 MB | NSX_T_MANAGER-4.2.0.0.0-24105817                   | INSTALL        
bundle-124943                        | 5.2.0.0          |       11075.7 MB | VCENTER-8.0.3.00100-24091160                       | INSTALL        
bundle-120815                        | 5.2.0.0          |        1841.6 MB | VRSLCM-8.18.0-24029603                             | INSTALL        
-------------------------------------------------------------------------------------------------------------------------------------------------

Created delta file
Total applicable bundles: 9
To download all the required bundles, specify value as: all.
To download all install bundles, specify value as: install.
To download all patch bundles, specify value as: patch.
To download specific bundles, provide bundle names as comma separated values, Example: bundle-38371, bundle-38378
To quit, specify value as: quit/q

You can pick and choose the bundles needed by typing either install, patch, or all. I typically grab all the bundles to make them available offline.

For the next snippet, note that I only downloaded one additional bundle to display the process after typing all. If you currently do not have any of the bundles downloaded, please note that this will take a long time depending on the speed of your Internet connection. This is a little over 60 GB worth of bundles!

List of applicable bundles: 

-------------------------------------------------------------------------------------------------------------------------------------------------
Bundle                               | Product Version  |      Bundle Size | Bundle Component                                   | Bundle Type    
-------------------------------------------------------------------------------------------------------------------------------------------------
bundle-120815                        | 5.2.0.0          |        1841.6 MB | VRSLCM-8.18.0-24029603                             | INSTALL        
-------------------------------------------------------------------------------------------------------------------------------------------------

Created delta file
Total applicable bundles: 1
To download all the required bundles, specify value as: all.
To download all install bundles, specify value as: install.
To download all patch bundles, specify value as: patch.
To download specific bundles, provide bundle names as comma separated values, Example: bundle-38371, bundle-38378
To quit, specify value as: quit/q
all
Total bundles selected to download: 1
Checking for sufficient disk space before downloading bundles
Available disk space on download directory: /home/arombaut/vcf-bundles is 169199.2 MB
Required disk space to download the bundles is 4707.2 MB
Starting downloading bundles...
Downloading bundle: bundle-120815.
Deleted the temp dir Manifest File  /home/arombaut/vcf-bundles/tmp/manifests/bundle-120815.manifest
Deleted the temp dir Manifest File  /home/arombaut/vcf-bundles/tmp/manifests/bundle-120815.manifest.sig
Download Progress of bundle tar : bundle-120815.tar : 9.1 MB, Average Speed: 29.43 Mbps, Total Size:  : 1841.6 MB
Download Progress of bundle tar : bundle-120815.tar : 80.3 MB, Average Speed: 34.73 Mbps, Total Size:  : 1841.6 MB
Download Progress of bundle tar : bundle-120815.tar : 253.9 MB, Average Speed: 40.21 Mbps, Total Size:  : 1841.6 MB
Download Progress of bundle tar : bundle-120815.tar : 490.6 MB, Average Speed: 34.24 Mbps, Total Size:  : 1841.6 MB
Download Progress of bundle tar : bundle-120815.tar : 1016.5 MB, Average Speed: 33.52 Mbps, Total Size:  : 1841.6 MB
Bundle bundle-120815. checksum validation successful
Successfully downloaded bundle: bundle-120815.
Completed downloading:1 of total:1
Successfully completed downloading all VSRN bundles to directory path: /home/arombaut/vcf-bundles
Log file: /var/log/vmware/vcf/lcm/tools/debugtool/tmp/debuglog/lcmdebug.log

Upload Manifest File to SDDC Manager

After transferring all the downloaded files and the Bundle Transfer Utility to a computer with access to SDDC Manager, we need to upload the manifest file to SDDC Manager. Remember that the directory for the manifest was provided during the manifest download, but that was on a different computer!

$ ./lcm-bundle-transfer-util --update --sourceManifestDirectory Manifest-Downloaded-
Directory --sddcMgrFqdn FQDN --sddcMgrUser Username

For example, the files have been uploaded to /home/username. So the directory to use for --sourceManifestDirectory will be:

/home/username/PROD2/evo/vmw

<Need code snippet>

Upload Compatibility File to SDDC Manager

$ ./lcm-bundle-transfer-util --update --compatibilityMatrix --inputDirectory
compatibility-file-directory --sddcMgrFqdn FQDN --sddcMgrUser Username

For example, the files have been uploaded to /home/username. So the directory to use for --inputDirectory will be:

/home/username/PROD2/evo/vmw

<Need code snippet>

Upload vSAN HCL File to SDDC Manager

$ ./lcm-bundle-transfer-util --vsanHclUpload --inputDirectory hcl-file-path --
sddcMgrFqdn sddc-manager-fqdn --sddcMgrUser user

For example, the files have been uploaded to /home/username. So the directory to use for --inputDirectory will be:

/home/username/PROD2/vsan/hcl/all.json

<Need code snippet>

Upload Bundles to SDDC Manager

For this task, the tool to upload is not important, where you upload is. The suggested directory works best so there is enough space.

/nfs/vmware/vcf/nfs-mount/

When I did the download, above, I used a directory called vcf-bundles. So I will copy the entire directory into the suggested directory which will look like:

/nfs/vmware/vcf/nfs-mount/vcf-bundles

Copy Offline Bundle Tool to SDDC Manager

Make an lcm-tools directory.

$ mkdir /opt/vmware/vcf/lcm/lcm-tools

Copy the Bundle Transfer Utility into the created directory. If files exist from a previous upgrade, remove all existing files.

Extract the tools.

$ tar -xvf lcm-tools-prod.tar.gz

Set the permissions.

$ chown vcf_lcm:vcf -R /opt/vmware/vcf/lcm/lcm-tools
$ chmod 750 -R /opt/vmware/vcf/lcm/lcm-tools

Load the Bundles into SDDC Manager’s Lifecycle Manager (LCM)

Even though the bundles were transferred to the SDDC Manager, Lifecycle Manager will not be aware of them. This procedure allows LCM to ingest the bundle metadata.

$ ./lcm-bundle-transfer-util --upload --bundleDirectory absolute-path-bundle-dir

If the suggested path was used above, then the command will look like:

$ ./lcm-bundle-transfer-util --upload --bundleDirectory /nfs/vmware/vcf/nfs-mount/vcf-bundles

<Need code snippet>


Leave a Reply

Your email address will not be published. Required fields are marked *