Thanks LucD! (your older answer helped me)
using the following code:
$LicenseManager = Get-View $global:DefaultVIServer.ExtensionData.Content.LicenseManager
$LicenseAssignmentManager = Get-View $LicenseManager.LicenseAssignmentManager
$list = $LicenseAssignmentManager.GetType().GetMethod("QueryAssignedLicenses").Invoke($LicenseAssignmentManager,@($null)) | Select EntityDisplayName,
@{N='Product';E={$_.Properties | where{$_.Key -eq 'ProductName'} | select -ExpandProperty Value}},
@{N='Product Version';E={$_.Properties | where{$_.Key -eq 'FileVersion'} | select -ExpandProperty Value}},@{N='License';E={$_.AssignedLicense.LicenseKey}},
@{N='License Name';E={$_.AssignedLicense.Name}},@{N='Used License';E={$_.Properties | where{$_.Key -eq 'EntityCost'} | select -ExpandProperty Value}},@{N='Total';E={$_.AssignedLicense.Total}}
I am able to get info about ESXi host license and Cluster license in case of vSAN!
EntityDisplayName | Product | Product Version | License | License Name | Used License | Total |
---|
ESXi host name | VMware ESX Server | 6.7.1.0 | keyValue for ESXi host | VMware vSphere 6 Enterprise Plus | 2 | 250 |
Cluster name | VMware VSAN | | keyValue for vSAN cluster | VMware vSAN Advanced | 24 | 64 |
In ideal case, I would have vCenter name and cluster name in front of the ESXi host and just vCenter name in front of the cluster.