CS-15414 [upgrde from 2.2.14 to 3.0.4] Need to decrypt xen.guest.network.device value before setting the traffic label after upgrade.
Reviewed-by: Alena
- This uncovered a generic case where only 1 network tag is used and other few untagged networks.
- Upgrdae 303 to 304, should create a physical network for the untagged networks.
- Earlier we were doing this only if the 303 db has multiple physical networks. But in this case the 303 db will have just 1 physcial network (created due to the single tag used on 2.2.14).
- So we need to create the extra physical network for the untagged networks irrespective of the number of physical networks present in 303 db.
- This commit also take care of the decryption of the xen.guest.network.device value
Reviewed-By: Sheng Yang
Changes:
- Add uuid to data_center while upgrading from 2.2.14 to 3.0x.
- For previous setups that have already been updated, correctly add the uuid in 304 upgrade
CS-15382: Hosts going to Alert state if there were destroyed networks with non-existent tags prior to upgrade
Reviewed-By: Alena P.
Changes:
- If 2.2.14, create the SG provider by looking at is_security_group_enabled flag
- if 3.0.3, create the SG provider by looking at the ntwk_service_map.
Reviewed-By: Alena P.
Changes:
- Added upgrade path to 304. This would check the missing portions of the previous upgrades and try to correct.
- This will check if the setup has multiple physical networks with Guest traffic type. If yes then:
- Check if the previous upgrade has left behind any guest networks that were untagged in 2.2.14. For such networks, add a new physical network
- Check if the multiple physical network has tags. If no add tag and clone the network offerings for the networks on this physical network and add this tag to them
- Also clone the network offering service map.
- Thus this creates copies of offerings for each physical network.
Reviewed-By: Kelven
Changes:
- Use of class variable of type GenericSearchBuilder causes issues when multiple threads invoke this method to findCapacity
- Changing the scope of the variable to be local to these methods.
Multinode Management server - Not able to put the host in maintanace mode when the request is issed from the management server that is not the owner of the host
resolved fixed
reviewed-by: edison
Reviewed-By: Alena
Changes:
- corrected the account being set in vmProfile as owner of the VM.
- It was set to the caller of the start Vm method. However in case of routers, the caller account is System account while the router owner is the network owner account.
reviewed-by: Vijay
Description:
Deleting the row in cluster_vsm_map after
a cluster is deleted, if the cluster type
is vmware and the global vswitch nexus
config flag is set to true.
reviewed-by: Devdeep
Description:
Incorporating more changes from Alena's review.
Modified the Nexus Enable and Disable commands
to return CiscoNexusVSMResponse instead of
SuccessResponse.
Put event annotations for enable/disable functions
that the enable/disable nexus commands cal into.
reviewed-by: Devdeep
Description:
Removed the vcenter_dc_name and vcenter_ipaddr
fields from the virtual_supervisor_module
table, the CiscoNexusVSMDeviceVO, addClusterCmd,
and all other references to these two fields.
Fixing null pointer exceptions when checking
for nexus related global parameter values in
addClusterCmd.
reviewed-by: sateesh
Description:
Adding an optional flag to the addCluster command,
"addvsmflag". If this is set to true, the API will
throw an exception if any VSM parameter is missed
out. The above bug was running into a DB exception
because the vCenter ipaddress wasn't passed in and
the API didn't catch it.
Description:
Incorporating more changes post review by Alena.
1. Renamed the ListCiscoVSMDetailsCmd command
to ListCiscoNexusVSMsCmd. The command will
return a list of VSMs always, depending on
what parameter is passed to it. If a clusterId
is passed to it, it will return the VSM
associated to that cluster, if present. If
a zoneId is passed in, it will return a list
of all VSMs configured for any clusters of
type VMware within that zone. If neither is
passed, it will return a list of all VSMs
configured in the management server. If no
VSMs are found, it will return an exception
response.
2. Cleaned up miscellaneous code.
Description:
More changes incorporating Alena's review comments:
1. Changed id to clusterId for better naming.
2. Changed the name of GetCiscoVSMByClusterIdCmd
to ListCiscoVSMDetailsCmd.
3. Removed the GetCiscoVSMDetailsCmd command.
4. Removed catch{} blocks in each of the Nexus
related APIs since the exceptions raised in
the API implementations will be caught in the
command dispatcher.
5. Added ActionEvent annotation to
deleteCiscoNexusVSM() function.
6. Modified each Nexus API command's
getEntityOwnerId() to return
Account.ACCOUNT_ID_SYSTEM.
Description:
Putting in code changes as per Alena's reviews:
Replaced references to CiscoNexusVSMDeviceVO
in GetCiscoVSMByClusterIdCmd to work with an
interface that CiscoNexusVSMDeviceVO instead,
since VO objects should not be directly accessed
in APIs.
Made associated changes in other files.
More commits incorporating Alena's review comments
will follow.
With this fix both SSVM and CPVM will get public IP's in case of basic zone with EIP service.
A static NAT rule is implicitly configured on the EIP service provider to map public IP to a
guest IP address associated with SSVM/CPVM
UploadVolume API is async now with the guidance for all the new apis added in 3.0.x need to be async. Though the success/failure wont be available through the queryAsync job which will report only the initial validation success or failure. The success or failure and the progress will all be available through listVolumes api.