Currently there is no resolution.
Workaround:
If upgraded to VC version "greater than 7.0 u1" the namespace URI has to be added to associableType. Associable types are also harder to update because once you add a type you can't remove it, you can only add more types to it. Hence, it may be necessary to recreate tags and reassign associations under new categories since after version 7.0 u1, you have to pass namespace and it's not prepended anymore so you don't lose the associations when you delete the old categories with invalid associable type.
Method 1:
You may use jXplorer to update associable types of existing categories.
For every entry, we need to update associableType field(s).
Login -
jxplorer-3.3.1.2.app/Contents/MacOS/jxplorer
To login to vcva ldap table, use the input params as below:
host: <vcva-ip or hostname>,
port: 389
user dn: cn=Administrator,cn=Users,dc=vsphere,dc=local
base dn: dc=vsphere, dc=local
level : User + pwd
Note: Make sure to update the params as per your vcva settings.
Once logged in we can browse the ldap tables, for example navigate to vsphere->services→Tagging
To edit the entry:
Method 2:
Alternatively, one may directly edit the associable types for categories from the VC replacing the cn of the category under consideration and modifying the associableTypes as necessary:
/opt/likewise/bin/ldapmodify -h localhost -p 389 -x -D "cn=administrator,cn=users,dc=vsphere,dc=local" -W << EOF
dn: cn=urn:vmomi:InventoryServiceCategory:########-####-####-####-e8cdc122ce8e:GLOBAL,cn=urn:vmomi:InventoryServiceScope:default-scope:GLOBAL,cn=Tagging,cn=Services,dc=vsphere,dc=local
Changetype: Modify
Replace: vmwTaggingCategoryAssociableType
vmwTaggingCategoryAssociableType: urn:vim25:HostSystem
EOF
One may replace the cn field of the category by using the Category REST APIs:
1. After creating a session and getting the session ID, you may use the APIs to list out all the categories:
https://developer.vmware.com/apis/vsphere-automation/latest/cis/api/cis/tagging/category/get/
2. Get each category ID using this REST API:
https://developer.vmware.com/apis/vsphere-automation/latest/cis/api/cis/tagging/category/category_id/get/
Method 3:
a. Export the tag you want to work with:
/usr/bin/ldapsearch -LLL -h localhost -p 389 -b "cn=urn:vmomi:InventoryServiceCategory:########-####-####-####-d96b4bfb740f:GLOBAL,cn=urn:vmomi:InventoryServiceScope:default-scope:GLOBAL,cn=Tagging,cn=Services,dc=vsphere,dc=local " -D "cn=administrator,cn=users,dc=vsphere,dc=local" -o ldif-wrap=no -w <administrator_password> | grep -v nTSecurityDescriptor > /root/ldif.ldif
b. Edit it and change the values to what you want.
c. Delete the current tag:
/opt/likewise/bin/ldapdelete -r -h localhost -p 389 "cn=urn:vmomi:InventoryServiceCategory:########-####-####-####-d96b4bfb740f:GLOBAL,cn=urn:vmomi:InventoryServiceScope:default-scope:GLOBAL,cn=Tagging,cn=Services,dc=vsphere,dc=local" -D "cn=administrator,cn=users,dc=vsphere,dc=local" -w <administrator_password>
d. Import the modified ldif:
/opt/likewise/bin/ldapmodify -a -x -h localhost -p 389 -D "cn=administrator,cn=users,dc=vsphere,dc=local" -w <administrator_password> -f /root/ldif.ldif
You can use "-W" instead "-w"(-W will prompt for password rather than requiring the password to be included in the command)
Folder = urn:vim25:Folder
Datastore = urn:vim25:Datastore
Datacenter = urn:vim25:Datacenter
Resource Pool = urn:vim25:ResourcePool
Content Library = urn:vim25:com.vmware.content.Library
Host = urn:vim25:HostSystem
Library Item = urn:vim25:com.vmware.content.library.Item
Cluster = urn:vim25:ClusterComputeResource
vApp = urn:vim25:VirtualApp
Virtual Machine = urn:vim25:VirtualMachine
Network:
urn:vim25:HostNetwork
urn:vim25:Network
urn:vim25:OpaqueNetwork
Distributed Port Group = urn:vim25:DistributedVirtualPortgroup
Datastore cluster - urn:vim25:StoragePod
Distributed Switch =
urn:vim25:VmwareDistributedVirtualSwitch
urn:vim25:DistributedVirtualSwitch