subdomain placement rule has an invalid subdomainConfigured placement rules exclude GslbServices with FQDNs mapping to subdomain: #.#.#.# to be placed on Dns-Vs.This is expected behavior when we try to remove a subdomain from all the DNS Virtual services. This can also happen while adding a new subdomain when all existing subdomains are placed on existing DNS VSs'
Deleting a subdomain from all DNS virtual services or adding a new subdoman when all other (existing) sudomains are placed on the DNS VSs' is not allowed, as it will make the system prone to a misconfiguration, where a GSLB service can be created with a subdomain with no DNS virtual service responsible for it.
There are a few workarounds that can be followed to add or delete a subdomain
First workaround to add or delete a subdomain:
1. Delete all the subdomains in the GSLB site DNS VS configuration (under Infrastructure > GSLB > site configuration - edit site > save and set DNS virtual services). This is done so that DNS VS becomes responsible for all available domains. Sample screenshot after removing all subdomains from gslb site configuration
2. Delete the undesired subdomain in the GSLB subdomain configuration under Infrastructure > GSLB > site configuration > Subdomains delegated to GSLB
3. Edit the GSLB site and reconfigure the subdomains for each DNS VS as required.
Second workaround to add a subdomain:
1. Login to Avi CLI shell prompt
2. Below is an example of adding a subdomain: "newdomain1.com" to be placed on only one DNS VS of only one of the GSLB sites.
[admin:#-#-#-#]: > configure gslb Default[admin:#-#-#-#]: gslb> dns_configs[admin:#-#-#-#]: gslb:dns_configs> domain_name newdomain1.com[admin:#-#-#-#]: gslb:dns_configs> save
#select the site as required based on where you want to place the subdomain. You can select both sites one by one if needed. In this example, we are only placing the new domain on one GSLB site[admin:#-#-#-#]: gslb> sites index <index_id>
#select the required DNS VS where you want to place the subdomain[admin:#-#-#-#]: gslb:sites> dns_vses index <index_id>[admin:#-#-#-#]: gslb:sites:dns_vses> domain_names newdomain1.com[admin:#-#-#-#]: gslb:sites:dns_vses> save[admin:#-#-#-#]: gslb:sites> save[admin:#-#-#-#]: gslb> save
Third Workaroud to delete an existing domain:
To follow the CLI steps, you should be aware of every site and every dns VS where the subdomain is placed. Below is an example of removing "newdomain1.com" which is placed only on one DNS VS of one site
1. Login to CLI shell prompt
2. Below steps are taken for the above-mentioned example:
[admin:#-#-#-#]: > configure gslb Default#select the site as required based on from where you want to delete the subdomain. You can select all required sites one by one, as needed. In this example, we are only removing the subdomain: newdomain1 from one GSLB site[admin:#-#-#-#]: gslb> sites index <index_id>#select the DNS VS as required based on from where you want to delete the subdomain placement. You can select all required DNS VSs' one by one, as needed. In this example, we are only removing the subdomain: newdomain1 only from one DNS VS[admin:#-#-#-#]: gslb:sites> dns_vses index <index_id>[admin:#-#-#-#]: gslb:sites:dns_vses> no domain_names newdomain1.com[admin:#-#-#-#]: gslb:sites:dns_vses> save[admin:#-#-#-#]: gslb:sites> save[admin:#-#-#-#]: gslb> no dns_configs index <index_id>[admin:#-#-#-#]: gslb> save
Note: The index number should be used as per your configuration from where it needs to be added or deleted.
Please contact Broadcom Support, if you need assistance following the workaround provided.