Life cycle manager is awesome tool and their APIs are easy to use and understand .
I have tried almost 30+ api and I feel it is good and Handy way to check the details and perform basic operation using python and API
Here is the List the Task which we can run using Python commands
- Get DNS server details
- Get DataCenter Details
- Create New DataCenter
- Update DataCenter Details like Rename or Location change
- Remove DataCenter
- Get DataCenter vCenter details
- Trigger DataCollection for vCenter
- Validate vCenter
- Create New vCenter under DataCenter
- Delete vCenter
- Perform Health check of Life Cycle Manager
- Get FIPS status
- Set FIPS status
- Get Passwords
- Create New Password
- Delete Password
- Edit Passwords
- Get Password More Info
- Get Password referenced Environment details
- Get All Environments
- Rename Environment
- Trigger Inventory sync for one Environment
- Trigger Inventory sync for All Environment
- Trigger Inventory sync for Product
- Get Product VMs
- Create snapshot of Product
- Get snapshot details or Product
- Check SSH status of Life Cycle Manager(LCM) appliance
- Enable/ Disable SSH for Life Cycle Manager(LCM) appliance
- Get System Details
- Get Disk Utilization details
- Expand Data Disk for Life Cycle Manager(LCM) appliance
There are some pre-requisite before we can use these python commands
- Please follow the detailed instruction here python installation and required module before we use this module -do not skip this step.
- Download the file and unzip and copy the file by name vRLCM82 and paste the file in directory where python is installed.
- General path in windows is: C:\Users\Administrator\AppData\Local\Programs\Python\Python39
- I am using Python 3.9 for example ,It will be different as per your version.
- Once the step 1-3 is completed , all we need to do is launch the Python IDLE from task bar

Once IDLE is launched , The initial screen will look like this.

Before we start running the commands we need to load the module/package and Initialize the class.
from vRLCM import vrLCM
as11 = vrLCM(vrlcmurl='vrlcm82.vmwarecode.com',userName='admin@local',password='VMware123!')

If you have followed the article without skipping anything , that means you are ready to use the python commands.
- Get DNS server details
as11.lcmGetDNSServer()

2. Get DataCenter Details
as11.lcmGetDC()

3. Create New DataCenter
Parameters:
namedc : — Enter Name of the datacenter
location :- Enter location
as11.lcmNewDC(namedc='Ankush', location='Bangalore;Karnataka;IN;12.97194;77.59369')

4. Update DataCenter Details like Rename or Location change
Parameters:
namedc : — Enter Name of the datacenter
location :- Enter location
dcvmid : – We can get from command 2 -Get Datacenter
Note: I have taken the dcvmid from Command 3 in this example – you can run command 2 (as11.lcmGetDC()) to list all Datacenters
as11.lcmSetDC(dcvmid='fe1aa91a-8f74-4402-9c0f-c4b5f3664f0f', nameDC='AnkushS', location='Bangalore;Karnataka;IN;12.97194;77.59369')

5. Remove DataCenter
Paremeters:
dcvmid -We can get from command 2 -Get Datacenter
Note: I have taken dcvmid from Command 3 in this example – you can run command 2 (as11.lcmGetDC()) to list all Datacenters
as11.lcmRemoveDC(dcvmid='fe1aa91a-8f74-4402-9c0f-c4b5f3664f0f')

6. Get DataCenter vCenter details
Paremeter:
dcvmid -We can get from command 2 -Get Datacenter
as11.lcmGetDCvCenters(dcvmid='93bb2cb4-2b47-461f-892a-0a7ff32beec0')

7. Trigger DataCollection for vCenter
Parameters:
dcvmid–We can get from command 2 -Get Datacenter
vcname–we can get the alias of vCenter from command 6
as11.lcmTriggerDataCollection(dcvmid='93bb2cb4-2b47-461f-892a-0a7ff32beec0',vcname='VCSA1')

8. Validate vCenter
Parameters:
dcvmid:–DataCenter ID , we can grab from command 2
vcname–Provide Alias Name
vcHostName–FQDN of vCenter
vcPassword–Sample:
locker:password:5572c7ea-887e-4915-9711-d49f4826da41:installervCenter‘
Grab ID from Get password Command 14 and installervCenter is Alias
vcUsedAs–Provide details like WORKLOAD/MANAGEMENT/MANAGEMENT_AND_WORKLOAD
vcUserName— UserName of vCenter
Note: Existing details vCenter Name and vCenterHostName and Password I have got from Command 6
In below highlighted ID you can grab from command 14 (Get password), In case you want to supply new password
as11.lcmValidatevCenter(dcvmid='93bb2cb4-2b47-461f-892a-0a7ff32beec0', vcname='VCSA1', vcHostName='vcsa1.vmwarecode.com',vcPassword='locker:password:5572c7ea-887e-4915-9711-d49f4826da41:installervCenter', vcUsedAs='MANAGEMENT_AND_WORKLOAD', vcUserName='administrator@vsphere.local')

9. Create New vCenter under DataCenter
Parameters
dcvmid–DataCenter ID , we can grab from command 2
vcname— Provide Alias Name
vcHostName— Provide vCenter FQDN
vcPassword— Sample:
locker:password:5572c7ea-887e-4915-9711-d49f4826da41:installervCenter‘
Grab ID from Get password Command 14 and installervCenter is Alias
vcUsedAs— Provide details like WORKLOAD/MANAGEMENT/MANAGEMENT_AND_WORKLOAD
vcUserName–Provide the username
as11.lcmCreatevCenter(dcvmid='93bb2cb4-2b47-461f-892a-0a7ff32beec0', vcname='VCSA2', vcHostName='vcsa2.vmwarecode.com',vcPassword='locker:password:5572c7ea-887e-4915-9711-d49f4826da41:installervCenter', vcUsedAs='WORKLOAD', vcUserName='administrator@vsphere.local')

10 Delete vCenter
Parameters:
dcvmid–DataCenter ID, we can get from command 2
vcname— Provide the Alias name which was used during the add –to check the existing run command 6
as11.lcmDeletevCenter(dcvmid='93bb2cb4-2b47-461f-892a-0a7ff32beec0',vcname='VCSA2')

11. Perform Health check of Life Cycle Manager
as11.lcmHealthcheck()

12. Get FIPS status
as11.lcmGetFipsStatus()

13. Set FIPS status
Note: Changing the FIPS state will restart the services
as11.lcmSetFIps(Enable='false')

14. Get Passwords
as11.lcmGetPasswords()

15. Create New Password
Parameters:
alias–Provide alias name for password
password— Provide password
username— Provide UserName
passwDesription— Provide description of password
as11.lcmCreatePassword(alias='Ankush',password='ankush@123',username='as@vmwarecode.com',passwDesription='This is for test')

16. Delete Password
Parameter:
vmid–It can be retrieved from command 14 Get passwords
as11.lcmDeletePassword(vmid='b3af53af-9644-4d79-9960-15682075729e')

17. Edit Passwords
Parameters:
alias— Provide the name of the aliad
password— Provide the password
username— Provide the username
passwDesription–Provide description
vmid— Get the vmid from get password , command 14
as11.lcmEditPassword(alias='AS11',password='VMwareCode11',username='as@vmwarecode.com',passwDesription='This is for Binary download',vmid='34adae8e-4813-493e-86f8-aca3c77d07e6')

18. Get Password More Info
Parameter:
vmid— We can get from Get password command-14
as11.lcmGetPasswordInfo(vmid='a87841c8-24c9-4516-a4fb-087f4eb65679')

19. Get Password referenced Environment details
Parameter:
vmid— We can get from Get password command-14
as11.lcmGetPwdReferEnvironment(vmid='d16769b6-24c4-441b-9bbe-7a10efa4b9ac')

20. Get All Environments
as11.lcmGetAllEnvironment()

21.Rename Environment
Parameters:
envid:–We can get from Command 20- Get Environment
envname :– Provide new Name for environment
as11.lcmSetEnvironmentName(envid='c2cf3afe428825379b1f59f6',envname='VMwareCode2021')

22. Trigger Inventory sync for one Environment
Parameters:
envid:–We can get from Command 20- Get Environment
as11.lcmTriggerInventorySncEnv(environmentId='c2cf3afe428825379b1f59f6')

23. Trigger Inventory sync for All Environment
as11.lcmTriggerInventorySncAllEnv()

24. Trigger Inventory sync for Product
Parameters:
environmentId— We can get from Command 20- Get Environment
productId–We can get from Command 20- Get Environment
as11.lcmTriggerInventorySyncProduct(environmentId='globalenvironment',productId='vidm')

25. Get Product VMs
Parameters:
environmentId— We can get from Command 20- Get Environment
productId–We can get from Command 20- Get Environment
as11.lcmGetProductVMs(environmentId='globalenvironment', productId='vidm')

26. Create snapshot of Product
Parameters:
environmentId–We can get from Command 20- Get Environment
productId–We can get from Command 20- Get Environment
snapshotName–Enter Snapshot name
snapshotWithMemory–False/True
as11.lcmCreateSnapshotProduct(environmentId='globalenvironment', productId='vidm',snapshotName='VMwareCode-Test',snapshotWithMemory='False')

27.Get snapshot details or Product
Parameters:
environmentId–We can get from Command 20- Get Environment
productId–We can get from Command 20- Get Environment
as11.lcmGetSnapshotdetailsProduct(environmentId='globalenvironment', productId='vidm')

28. Check SSH status of Life Cycle Manager(LCM) appliance
as11.lcmGetSSHStatus()

29. Enable/ Disable SSH for Life Cycle Manager(LCM) appliance
Parameter:
enable-True/False
as11.lcmSeTSSH(enable='True')

30. Get System Details
as11.lcmGetSystemDetails()

31. Get Disk Utilization details
as11.lcmGetSystemDiskDetails()

32. Expand Data Disk for Life Cycle Manager(LCM) appliance
Parameters:
diskSizeInGb–Enter disk size in GB
vCenterHost–Enter vCenter name where LCM vm is hosted
vcPassword–Enter the password of the vCenter
vcUsername–Enter the username of the vCenter
as11.lcmExpandDiskSize(diskSizeInGb=1, vCenterHost='vcsa1.vmwarecode.com', vcPassword='VMware123!', vcUsername='administrator@vsphere.local')
