Commit Graph

5158 Commits

Author SHA1 Message Date
Kelven Yang d0bdab98ae bug CS-15191: remove a sanity check that prevent us from getting traffic lable under VMware
Reviewed-by: anthony
2012-06-06 16:57:49 -07:00
Kelven Yang 8b6936bde6 CS-15080: VMware control network is CloudStack management network, correct the way to send down a correct traffic label to VMware resource
Reviewed-by: Anthony
2012-06-06 16:57:27 -07:00
Kelven Yang 9298e5d25d bug 15080: check traffic type in host discovery stage - cluster level checks 2012-06-06 16:54:16 -07:00
Kelven Yang d8d4232a7b bug : CS-15080 - check traffic label at host discovery stage also 2012-06-06 16:53:53 -07:00
Alena Prokharchyk 7092532ae8 CS-15220: fixed db upgrade for networks using external devices
Reviewed-by: Sheng Yang

Conflicts:

	server/test/com/cloud/network/MockNetworkManagerImpl.java

Conflicts:

	server/src/com/cloud/upgrade/dao/Upgrade2214to30.java
2012-06-05 15:10:49 -07:00
Sheng Yang 79c276ba6b CS-15116: When GetDomRVersion failed, let VR creation fail
Because there are more commands after GetDomRVersion command. Though
GetDomRVersion command itself is not that critical, the commands after it may
including DHCP and firewall related commands. The failure of GetDomRVersion
command would result in the following commands fail to be executed. So it should
fail, and fail loudly.
2012-05-31 18:57:11 -07:00
Vijayendra Bhamidipati 90b87585e7 CS-14956 Support for rate limiting policies in Nexus dvSwith feature for CloudStack
Removed global parameters that are not required. Cleanup.
Reviewed-by: Devdeep

Not sure why but changes in VmwareServerDiscoverer.java were not picked up
when cherry-picking from 3.0.x. Putting them in this separate commit.
2012-05-25 19:50:50 -07:00
Sateesh Chodapuneedi 4ad8845b28 CS-14956 Support for rate limiting policies in Nexus dvSwith feature for CloudStack
Removed global parameters that are not required. Cleanup.
Reviewed-by: Devdeep
2012-05-25 19:41:36 -07:00
Vijayendra Bhamidipati 7cf04c1fe4 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Incorporating Salvatore's review comments.
2012-05-25 19:02:00 -07:00
Vijayendra Bhamidipati daa190b4cb CS-9919: Support for Nexus Swiches (Cisco Vswitches)
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.
2012-05-25 18:38:30 -07:00
Vijayendra Bhamidipati 7f26a43d48 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
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.
2012-05-25 18:37:50 -07:00
Vijayendra Bhamidipati 15d0cf782a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
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.

Conflicts:

	api/src/com/cloud/api/commands/AddClusterCmd.java
2012-05-25 18:37:20 -07:00
Sateesh Chodapuneedi 70fbee2cf2 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Updating the checks for VSM parameter validation while adding cluster.

Conflicts:

	server/src/com/cloud/resource/ResourceManagerImpl.java
2012-05-25 18:31:49 -07:00
Vijayendra Bhamidipati 63de97e63c CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modifying column names in db tables to
	adhere to naming conventions.
2012-05-25 18:28:34 -07:00
Vijayendra Bhamidipati 6920d76995 CS-15055: DB exception when creating n1kv VSM when adding a cluster via the latest management server GUI.
Description:

	Missed a check for Null pointer.
2012-05-25 18:28:25 -07:00
Vijayendra Bhamidipati 82ffddc7b8 CS-15055: DB exception when creating n1kv VSM when adding a cluster via the latest management server GUI.
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.
2012-05-25 18:28:10 -07:00
Vijayendra Bhamidipati ed0ba1a0e6 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
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.

Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
	server/src/com/cloud/server/ManagementServerImpl.java
2012-05-25 18:27:29 -07:00
Vijayendra Bhamidipati ffaa8cc20a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
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.
2012-05-25 18:23:51 -07:00
Vijayendra Bhamidipati e7246847ac CS-9919: Support for Nexus Swiches (Cisco Vswitches)
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.
2012-05-25 18:23:40 -07:00
Vijayendra Bhamidipati 78d40da1bf CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removing two unexposed APIs that we never use:
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd

	More changes to follow.
2012-05-25 18:23:21 -07:00
Vijayendra Bhamidipati b28568a221 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modified the following commands to be Async:
		a. EnableCiscoNexusVSM
		b. DisableCiscoNexusVSM
		c. DeleteCiscoNexusVSM

	Cleaned up miscellaneous code.
2012-05-25 18:11:04 -07:00
Vijayendra Bhamidipati 187d32057e CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Didn't stage all modified files in previous
	commit by mistake. Checking in the rest of
	the changes in this commit. Please refer to
	immediate previous commit for CS-9919 for
	details on what changes went in with this
	commit.

Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
2012-05-25 18:07:48 -07:00
Vijayendra Bhamidipati c5aba77927 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removed the AddCiscoNexusVSMCmd command, and all
	references to it. From now on, we shall support
	adding a Nexus VSM only when the cluster is being
	created. The VSM ipaddress, username, password,
	the vCenter DC Name and vCenter Ipaddress that it
	serves and connects to respectively can be passed
	to the addClusterCmd command optionally. To support
	these new parameters, parameters have been added
	to the addClusterCmd command.

	Added a debug statement in the code that runs checks
	when attempting to delete a VSM.
2012-05-25 18:06:59 -07:00
Vijayendra Bhamidipati c08716db00 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Added a new API GetCiscoVSMDetailsCmd. This
	API gets all details of a VSM when provided
	with the VSM ID.

Resolved Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in

Conflicts:

	client/tomcatconf/cisconexusvsm_commands.properties.in
2012-05-25 18:06:27 -07:00
Vijayendra Bhamidipati b793c4c0fe CS-14929: Exception while creating a port forwarding rule on an acquired ip
CS-14943: Unable to deploy VM due to Unable to identify the provider by name CiscoNexus1000vVSM

Description:

	Ignore the CiscoNexus1000vVSM provider when checking for
	providers when applying port forwarding rules.
2012-05-25 18:04:46 -07:00
Sateesh Chodapuneedi 49673d772b CS-14940 VSM access credentials are logged in clear text with Management-server.log
Removed debug log after fetching the credentials.
2012-05-25 18:04:33 -07:00
Sateesh Chodapuneedi 67bfe23d28 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Avoid detection of public traffic label for basic zones. Check switch types along with global parameter for enabling a particular vmware vswitch types. Move credentials information into resource and load during resource configuration. Cleanup.

Conflicts:

	server/src/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
2012-05-25 18:00:13 -07:00
Sateesh Chodapuneedi c65199cd8c CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Added VSM credentials to AddClusterCmd(optonal params only).
Cleanup.

Conflicts:

	api/src/com/cloud/api/commands/AddClusterCmd.java
2012-05-25 17:56:46 -07:00
Sateesh Chodapuneedi 9709774b4b CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Instance configuration to join distributed vNetwork.

Conflicts:

	core/src/com/cloud/hypervisor/vmware/manager/VmwareManager.java
	core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
	vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareHelper.java
2012-05-25 17:53:00 -07:00
Vijayendra Bhamidipati f774ef7415 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Missed out a file in previous commit when adding
	the new API getCiscoVSMByClusterId. Stub file was
	added by Sateesh to prevent breakage. Putting the
	file in in this commit plus better exception
	handling.
2012-05-25 17:45:03 -07:00
Sateesh Chodapuneedi 75d0f91186 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Added command class GetCiscoVSMByClusterIdCmd.
2012-05-25 17:44:52 -07:00
Sateesh Chodapuneedi c59d5415ad CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Portprofile shaping policies will be fetched
	from nexus vswitch instead of vcenter.
	ACLs and Policies won't be synced to vCenter.
	Get physical network label while adding cluster.
	Cleanup.

Conflicts:

	core/src/com/cloud/hypervisor/vmware/manager/VmwareManager.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-05-25 17:44:02 -07:00
Vijayendra Bhamidipati d933358f10 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Adding command getCiscoVSMByClusterId to
	retrieve a VSM associated with a cluster.
2012-05-25 17:41:24 -07:00
Sateesh Chodapuneedi b6687faf89 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Retreving physical network configuration from
	database. Passing configuration down to resource.
	Cleanup.

Conflicts:

	core/src/com/cloud/hypervisor/vmware/manager/VmwareManager.java
	server/src/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
2012-05-25 17:40:38 -07:00
Vijayendra Bhamidipati 7e845cfa62 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Removed CiscoNexusVSM.java.

	2. Put in invocation of Netconfhelper's
	   connect method to a VSM, in
	   CiscoNexusVSMDeviceManagerImpl.java.
2012-05-25 17:29:35 -07:00
Sateesh Chodapuneedi 205f4a2192 CS-9919 - Support for Nexus Swiches (Cisco Vswitches)
Description:

	Code changes to manage Cisco Nexus 1000v in CloudStack.
	VmwareResource has been modified to leverage Nexus vSwitch.

	Providing following global configuration parameters,

vmware.use.nexus.vswitch -
	This would decide whether Nexus vSwitch in the VMware
	cluster environment would be used/managed by CloudStack
	for it's network infrastructure needs.

vmware.guest.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for guest traffic.

vmware.private.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for private traffic.

vmware.public.network.vswitch.type -
	This setting would enable CloudStack to use Nexus vSwitch
	in the VMware cluster environment for private traffic.

Functional Specification -
	http://wiki.cloudstack.org/display/RelOps/Cisco+Nexus+1000v+Support+in+CloudStack+-+Functional+Specification

Documentation / README for usage instructions -
	http://wiki.cloudstack.org/display/RelOps/Configuration+instructions+for+CloudStack+Deployment+with+Nexus+vSwitch

Conflicts:

	core/src/com/cloud/hypervisor/vmware/manager/VmwareManager.java
	core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
	server/src/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
	vmware-base/src/com/cloud/hypervisor/vmware/mo/HostMO.java
	vmware-base/src/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
	vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareContext.java
2012-05-25 17:27:00 -07:00
Vijayendra Bhamidipati 781f0b4966 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Added the PortProfile infrastructure:

	    a. PortProfileVO : The VO class to represent a db
	    record of the table port_profile. Each db record
	    represents one port profile.

	    b. PortProfileDao: The interface that declares search
	    functions on the port_profile table.

	    c. PortProfileDaoImpl: The class that defines the
	    interfaces declared in PortProfileDao.

	    d. PortProfileManagerImpl: The class that contains
	    routines that will add or delete db records from
	    the port_profile table. If you want to create/delete
	    a portprofile, call functions from this class.

	    e. Changes to create-schema.sql to create the port_profile
	    table.

	2. Cleaned up code:

	    a. Removed a number of unused Dao and Manager objects in
	    CiscoNexusVSMDeviceManagerImpl.

	    b. Removed the ListCiscoNexusVSMNetworksCmd command.

	    c. Removed a bunch of import statements in a few files.
2012-05-25 17:17:56 -07:00
Vijayendra Bhamidipati 0f28222cce Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Modify addCiscoNexusVSMCmd to enable a VSM
           by default, when it is added to a cluster.

	2. Put in two new APIs exposed to the user -
                a. EnableCiscoNexusVSMCmd
                b. DisableCiscoNexusVSMCmd

        Disabling a VSM does not delete it. It only
        prevents the Management Server from using that
        VSM. This is useful if the VSM is in
        maintenance mode.
2012-05-25 17:17:37 -07:00
Vijayendra Bhamidipati 38c140b181 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

        1. Put in invocation to the deleteCiscoNexusVSM()
	   function in the deleteCiscoNexusVSM command
	   chain.

        2. Put in additional check for physical servers
	   present in a cluster that still is tied to a
	   VSM. The previous check would query for all
	   hosts in a cluster, causing the check to see
	   if a cluster has any physical servers in it
	   to always fail and thus block the VSM from
	   getting deleted. By putting in a check to see
	   if a host if of type "Routing", we refine this
	   search to only hypervisors.

        3. Other miscallaneous code + cleanup.
2012-05-25 17:17:29 -07:00
Vijayendra Bhamidipati 037ac6592e Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

        1. Changed AddCiscoNexusVSMCmd to:
             a. Extend BaseCmd instead of BaseAsyncCmd.
             b. Take in more required parameters (viz
                vCenterDCName and vCenterIpAddress)

        1a. Changed DeleteCiscoNexusVSMCmd to also
            extend BaseCmd.

        2. Put in changes that will ensure that
           When a VSM is added, it is disabled by default.

        3. Fixed code that was leading to exceptions
           related to DB reads/writes to VSM related tables.

        4. Added new API Constants in ApiConstants.java.
           NOTE - Always initialize new attributes in
           ApiConstants.java to values in small case.
           Never put in upper case there. Also regardless
           of what names you give attributes in the
           *Cmd.java's class, you pass in parameters via
           API calls by specifying <key>=<value> where the
           <key> is taken from the value you specified in
           ApiConstants.java.

        5. Modified the addCiscoNexusVSM() function in
           CiscoNexusVSMDeviceManagerImpl.java to write VSM
           records to the db.
2012-05-25 17:17:18 -07:00
Vijayendra Bhamidipati ab957b8928 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Fixed type of argument taken by AddCiscoNexusVSMCmd
	from ZONE_ID to CLUSTER_ID.
2012-05-25 17:16:38 -07:00
Vijayendra Bhamidipati 414435c7f3 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Fixing failure to load ClusterVSMMapDao by
	putting in a constructor that takes no
	arguments, inClusterVSMMapVO.
2012-05-25 17:10:04 -07:00
Vijayendra Bhamidipati 7380f52f12 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Missed replacing older table name for VSMs in a few
	   files (changed the name from
	   external_virtual_switch_management_devices to
	   virtual_supervisor_module). Fixed that in this commit.

	2. Missed adding the new Dao ClusterVSMMapDao in the Dao
	   loading in DefaultComponentLibrary. Fixed.

	3. Fixed wrong searchbuilder options passed to ipaddrSearch
	   in CiscoNexusVSMDeviceDaoImpl.
2012-05-25 17:09:41 -07:00
Vijayendra Bhamidipati a940d962ca Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	1. Added a new VO class to represent a new table
	   "cluster_vsm_map". The class is ClusterVSMMapVO
	   in ClusterVSMMapVO.java. This table has only
	   two fields - clusterId, VSMId. The clusterId can
	   occur only once. But the same VSMId can be tied
	   to different clusterIds.

	2. Added the Dao interface + implementation of the
	   interface. This provides the functions required
	   to populate objects of type ClusterVSMMapVO with
	   records from the cluster_vsm_map table. The
	   interface is defined in ClusterVSMMapDao.java,
	   and the implementation is in ClusterVSMMapDaoImpl.java.

	3. Changed the table name that represents the VSM to
	   "virtual_supervisor_module" from the earlier overly
	   generic "external_virtual_switch_management_devices".

	4. Added search/remove functions to the Dao of the VSM.
	   This is the Dao for the Cisco Nexus VSM -

		CiscoNexusVSMDeviceDao:CiscoNexusVSMDeviceDaoImpl
		 --> This is the Dao Implementation that would let
		     us query/update records on the
		     "virtual_supervisor_module" table that contains
		     the records of all the VSMs that are added to
		     the Management Server.

NOTE::
======
These were some of the changes made as part of the previous commit (#7):

	1. Renamed CiscoNexusVSMResource.java to CiscoNexusVSM.java.

	2. Changed it to not implement a true resource, but to be
	   just a class providing functionality to talk to a VSM.

	3. Modified the AddCiscoNexusVSMCmd class to take in clusterId
	   instead of zoneId + your fix of the String to Long.
2012-05-25 17:09:26 -07:00
Vijayendra Bhamidipati 28568e694b Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	This is work in progress. This set of changes will not
	compile. Checking in for team wide code sync up.

	Changes are underway to test if VMWareResource can be
	leveraged to talk to the VSM, instead of creating a
	new resource for the VSM, like we've been doing up
	until now.
2012-05-25 17:09:08 -07:00
Vijayendra Bhamidipati b0facd16e4 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
At this point, the mgmt server comes up, loading the
	   Nexus related modules without dying.

Description:

	1) Added a new properties file for Cisco N1kv VSM commands:
		cisconexusvsm_commands.properties.in

	2) Added the CiscoNexusVSMElement to the components.xml file.

	3) Modified CiscoNexusVSMElement to implement NetworkElement.

		The NetworkElement interface functions are not
	  	relevant to the N1KV VSM, so we override them
	  	with noops.

	4) Added an addDao() of CiscoNexusVSMDeviceDaoImpl in populateDaos(),
	   else we'd run into a failure to look up the VSM's dao when the
	   mgmt server is starting up:

		com.cloud.utils.exception.CloudRuntimeException: Unable to find DAO com.cloud.network.dao.CiscoNexusVSMDeviceDao

	5) Also added the CiscoNexusVSMElementService in populateServices(),
	   and modified CiscoNexusVSMElement to implement Manager as well.

	6) populateServices() was running into an exception that indicated
	   that it was unable to find a commands.properties file for the
	   cisco n1kv vsm service. Fixed it by changing getProperties() in
	   CiscoNexusVSMElement to return the correct string
	   "cisconexusvsm_commands.properties", and putting in an @Override
	   for getProperties() in CiscoNexusVSMElement. Also fixed up all
	   the other functions in CiscoNexusVSMElement that needed to have
	   @Override. Also updated build/developers.xml with this file
	   location. And did other small cleanup.

	7) More clean up in CiscoNexusVSMDeviceManagerImpl.

Conflicts:

	server/src/com/cloud/configuration/DefaultComponentLibrary.java
2012-05-25 17:07:03 -07:00
Vijayendra Bhamidipati 32ba2ef17a CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Reviewed by: Sateesh Chodapuneedi, Devdeep Singh

Description:

This is the first in a series of commits for integrating the
Cloudstack Management Server with the Nexus 1000v Virtual
Supervisor Module.

These changes introduce the necessary API command interfaces
to work with a Cisco N1KV VSM. The backend logic is still to
be put in and will be incorporated in subsequent commits.
Please do not attempt to use these APIs until then. Also,
these are not yet filled in into commands.xml, so they are
not currently exposed.

Additional APIs would be added if required.

These changes will not break any current management server
functionality.

Given below is a description of the changes put in here:

	Added Cisco N1KV commands to core/api:
	    These are the added commands -

		AddCiscoNexusVSMCmd
		DeleteCiscoNexusVSMCmd
		ConfigureCiscoNexusVSMCmd
		ListCiscoNexusVSMCmd
		ListCiscoNexusVSMNetworksCmd

	Added a Network Element service file for Cisco N1KV.

	Declared the interface functions that we'll need for
	the N1KV VSM.

	Defined a DeviceVO file for the Cisco Nexus Element.

	Created a response file for Cisco Nexus VSM.

	Created new event types for external Switching Management devices.

	Put in logic to call interface methods in ListCiscoNexusVSMNetworksCmd
	and ListCiscoNexusVSMCmd

NOT VSM RELATED:
	Fixed minor typo in some of the event types for external load balancers.

       Added properties of a VSM in the VSM VO class.

       Replaced the "url" input parameter by "ipaddress"
       in the AddCiscoNexusVSMCmd API.

       Added a new file - CiscoNexusVSMElement.java to
       contain the implementation of the functions
       declared in the VSMElementService interface, and
       put in implementations of the functions for the
       Nexus VSM API commands. These functions are
       defined in the CiscoNexusVSMElement class.

       Added a class for Port Profiles (PortProfile.java).
       The fields in this class are still not correctly
       declared as of now. We'll make the required changes
       going forward.

	Added CiscoNexusVSMDeviceManagerImpl class.

	Added CiscoNexusVSMResource class.

	Created a new class to provide a package to
	connect to Cisco Nexus VSMs. This will be a
	set of Java wrapper functions that allow us
	to connect/disconnect and send commands and
	receive the results of those commands via
	XML-RPC. These functions are yet to be
	implemented, and will be checked in in future
	commits.

	Added two new classes, VSMCommand and
	VSMResponse, to encapsulate XML-RPCcommands
	and responses to and from a Ciscon Nexus VSM.

	Put in the following function stubs inside the
	CiscoNexusVSMService class:

		connectToVSM()
		disconnectFromVSM()
		executeVSMCommand()

	Added new field in the Type enum of the "Host"
	interface, for Cisco Nexus VSMs.

	Added two parameters to AddCiscoNexusVSMCommand
		vsmName
		zoneId

	Modified the CiscoNexusVSMDeviceVO constructor to
	take in an zoneId as a parameter when creating
	the VO object.

	Added new interface and class for the DeviceDao
	implementation for Cisco Nexus VSM devices:
		CiscoNexusVSMDeviceDao
		CiscoNexusVSMDeviceDaoImpl

	Removed the vsmvCenterDomainId property, since it's
	going to the same as vsmDomainId, which is the VSM's
	switch Domain Id.

	Have started putting in the following query functions
	in the CiscoNexusVSMDeviceDao interface:

	Put in DAO implementations of some of the above functions in the CiscoNexusVSMDeviceDaoImpl class.

	Added a vsmName parameter to the CiscoNexusVSMDeviceVO class.
2012-05-25 17:05:15 -07:00
prachi 3fd17ae029 Merge awsapi related changes to CloudStack 2012-05-25 14:40:53 -07:00
prachi f1fae9d57f CS-14753: When Vm is deployed with a Security Group , it also gets associated with the default security group.
Changes:
- StartVM needed to be changed to add default security group only when none is present.
- DeployVm: createAdvancedSecurityGroupVirtualMachine changed to follow the same rule - add default SG only if none is specified.
2012-05-25 14:40:31 -07:00
prachi 0c1c9141f4 DeployVMCmd: Do not place the instance in default security group if groupId is provided 2012-05-25 14:40:28 -07:00
Edison Su d646f30e7a bug CS-15095: vm cpu freq <= host cpu freq 2012-05-25 11:17:55 -07:00
Alena Prokharchyk c7bffc7b89 CS-15082: changed search criteria for Running vms in Network. Ip4 Address for guest network can be null for nic in Basic zone when vm originally fails to start.
Reviewed-by: Frank
2012-05-25 10:18:43 -07:00
Nitin Mehta 4bb4e98eae bug CS-14945: Throw an error message if the user is trying to attach the volume in local only storage zone.
Reviewed-by: Kishan
2012-05-25 18:46:44 +05:30
Alena Prokharchyk f6efcd39a3 CS-15083: fixed source nat ip assoc for the case when account owns more than 1 guest network, and 1+ public account specific ranges 2012-05-24 13:47:14 -07:00
Alena Prokharchyk 434f166c02 Removed unused comments 2012-05-24 12:04:02 -07:00
Alena Prokharchyk e65465929d CS-15082: don't allow to remove guest network in Basic zone when there are non-expunged CPVM/SSVMs using it. 2012-05-24 11:38:32 -07:00
Alena Prokharchyk 737543ce3e CS-15025
listTemplates: made executable filters to work for regular user
2012-05-21 15:35:10 -07:00
anthony 224bf84f31 CS 14006: log fix 2012-05-21 11:46:04 -07:00
Murali reddy a4b0759c52 bug CS-14862: EIP/ELB - SSVM and CPVM should be given an ip address from the public ip address range.
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
2012-05-21 20:18:37 +05:30
Nitin Mehta a4adc25295 bug CS-14945:
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.
2012-05-21 14:46:17 +05:30
Alena Prokharchyk 51eeb62f9f CS-14894: listTemplates - return hypervisor type to everybody 2012-05-18 12:47:06 -07:00
Nitin Mehta 07cbec95fa bug CS-14957: Return hypervisor type for uploaded volume 2012-05-17 19:22:19 +05:30
anthony a32f675875 CS-14237 GC commands only sent to UP host
resolved fixed
2012-05-16 17:21:36 -07:00
Kelven Yang e8a5d51da7 Support console access through rebooting with XAPI session re-negotiation 2012-05-16 17:02:22 -07:00
Edison Su 26e78bd0b7 send ssh key to kvm host, even if it's developer env 2012-05-16 14:51:04 -07:00
frank d2b3ec84e9 CS-13853 secstorage.allowed.internal.sites is not allowed to be 0.0.0.0
resolved fixed
2012-05-16 11:57:36 -07:00
Nitin Mehta 2153ce96f7 bug CS-14321: Correcting listVolumes API call to return valid value for isExtractable for ISO derived disk and DATA disk. 2012-05-16 21:47:45 +05:30
Edison Su bafc3f2a5a CS-14521
Remove CLVM, due to license issue
2012-05-15 15:13:15 -07:00
Edison Su 9fa63cfe61 CS-14609
turn on debug log, if zone is not ready to start ssvm/cpvm.
"Zone host is ready, but console proxy template" means system vm template is not in "Downloaded" state on secondary storage
"Primary storage is not ready" means the template is not been downloaded to primary storage, possible reasons: haven't add primary storage, or primary storage download is not finished/failed.
2012-05-15 14:44:48 -07:00
Edison Su 403addc59d bug CS-14833: if iso is xen/vmware tools, attach it to vm; status CS-14833: resolved fixed 2012-05-15 14:04:16 -07:00
Alena Prokharchyk d11dceaccc CS-14904
Fixed the bug where vm_instance.ha_enabled wasn't updated during service offering upgrade

Conflicts:

	server/src/com/cloud/server/ManagementServerImpl.java
2012-05-15 12:36:40 -07:00
Nitin Mehta c01d03e53f bug CS-14249: cluster.localStorage.capacity.notificationthreshold text is incorrect 2012-05-15 19:58:30 +05:30
Nitin Mehta 7e0863555b bug CS-14814: Do not allow attaching volume to a stopped vm for an uploaded volume. Make changes to accomodate volume attaching for a vm created in Stopped state. 2012-05-15 18:28:12 +05:30
Murali reddy 3b1aca19b3 bug CS-14291: support EIP with multiple NetScalers in basic zone
This fix will enable support for multiple NetScaler devices providing EIP service in same zone.

    - Introduced global setting "eip.use.multiple.netscalers" to turn multiple netscaler support
    - Enhanced configureNetscalerLoadBalancer API to take the PBR setup between the POD's subnet
      and NetScaler device
    - logic to pick a NetScaler (based on the guest IP and corresponding pod) while configuring INAT rule
2012-05-15 14:00:32 +05:30
frank 910ae7446b don't call _secMgr.generateSetupCommand each time copying template
it will reboot httpd making in processing copy fail
2012-05-14 14:15:30 -07:00
Pranav Saxena 28aaab4031 CS-14873 : Authentication errors 2012-05-14 11:13:39 -07:00
Alena Prokharchyk 2daf7998c8 CS-14692: don't allow to remove account specific ip range when it has sourceNat ip address, and associated with non-removed Guest network 2012-05-14 10:13:44 -07:00
Nitin Mehta acd55bac90 bug CS-14785: Allow attaching the volume for Uploaded volume. Also have transition fo delete volume. 2012-05-14 16:46:49 +05:30
Alena Prokharchyk 4f12a5191a CS-14783
Fixed limit check when acquire public ip range for the account.
2012-05-11 15:40:17 -07:00
Alena Prokharchyk e6c764f149 CS-14685: Added customdiskofferingmaxsize to the listCapabilities response 2012-05-11 13:45:31 -07:00
Nitin Mehta 838d01754b bug CS-14785: Improvements to volumes sync so that it can recover from any error. Introduced new state UploadOp which signifies that the volume os on secondary and the status would be picked up from volume host ref table. 2012-05-11 11:42:42 +05:30
Nitin Mehta 189ac88a11 bug CS-14785: String equality should be through equals function....what was i thinking !!!. 2012-05-08 16:07:52 +05:30
Naredula Janardhana Reddy d0a09732d2 Bug 14120: Enabling SNAT for all the public NICs.
Summary of changes:
    - snat flag is set to true if it is first ip of the NIC.

reviewed-by: Abhi
2012-05-07 10:08:51 +05:30
Nitin Mehta 0d2422720b bug CS-14739: Check for the volume and vm hypervisor compatibility before attaching the volume to vm in case the volume is on secondary storage. 2012-05-04 17:29:22 +05:30
kishan 9fbc81e405 bug CS-14763: Added missing 301 to 302 path for 2.2.10 upgrade
status CS-14763: resolved fixed
reviewed-by: Abhi

Conflicts:

	server/src/com/cloud/upgrade/PremiumDatabaseUpgradeChecker.java
2012-05-04 16:08:01 +05:30
Nitin Mehta c65d3bdace bug CS-10789: Some more code to make the Uploav volume more robust. 2012-05-03 10:50:12 +05:30
Nitin Mehta 9097b53eab bug CS-10789: Put zone id in the volumehost ref table. make list volume to show the percent uploaded. 2012-05-03 10:46:02 +05:30
Salvatore Orlando a794e49545 CS-14724 : Making the default network label configurable, improving exception management
Please also see notes added to wiki.cloudstack.org/display/QA/Open+vSwitch+Tunnel+Manager
2012-05-02 15:16:10 +01:00
kishan 1ac0ac956b bug CS-14695: Encrypt VNC password during 3.0.0 upgrade
status CS-14695: resolved fixed
reviewed-by: Abhi
2012-05-01 11:10:59 +05:30
Alena Prokharchyk 2feafb18a0 bug 14694: when select valid clusters, exclude the removed ones
status 14694: resolved fixed
2012-04-30 13:10:57 -07:00
Abhi 03b23d3645 adding a plaintext authenticator 2012-04-30 16:43:40 +05:30
Abhi 13b927fb25 bug CS-14663: accepting encoded password for MD5 2012-04-28 12:36:48 +05:30
Salvatore Orlando 469ed78a58 CS-14606: Restoring config parameter which was accidentally removed 2012-04-27 17:17:49 +01:00
Salvatore Orlando 8080bc2d26 CS-14606: Change name for config parameter 2012-04-27 17:17:34 +01:00
Alena Prokharchyk 5da0fdaecb CS-14637: db upgrade - fixed inconsistencies in category/component fields for a bunch of global config variables 2012-04-26 10:10:05 -07:00
Alena Prokharchyk c7cbae4c48 Set ha host to false when no ha tag is enabled 2012-04-25 11:04:35 -07:00
Salvatore Orlando 2bf0c7f7ff CS-14605: OVS cleanup
Fix syntax errors in ConfigurationManager and Resource Manager test
2012-04-25 10:53:41 +01:00
Salvatore Orlando 6e0a86862a CS-14605: OVS Tunnel Manager Clean-up
1) Remove old VLAN-in-overlay manager
2) Remove unused DAO objects
3) Fix code using removed object (all stale lines)
2012-04-25 10:50:17 +01:00
Alena Prokharchyk afb97f128b Account specific vlan ranges - fixed deleteVlanRange
Conflicts:

	api/src/com/cloud/api/commands/DeleteVlanIpRangeCmd.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
2012-04-24 17:18:27 -07:00
Alena Prokharchyk eaf9d3d820 Catch all exceptions when change engine and row_format - can fail when table is full. Just skip as its not a critical fix 2012-04-24 15:49:28 -07:00
Salvatore Orlando 8ccb4b6680 CS-14270: return VLAN id only if the broadcast URI starts with 'vlan' 2012-04-24 21:27:26 +01:00
Alena Prokharchyk a678988f33 CS-14622: fixed adding vlan range per account - associate it with the Guest network, not public
Conflicts:

	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-04-24 11:44:00 -07:00
Salvatore Orlando 026ed52f1d CS-14437: Final changes to ensure proper tunnel creation (rebase problems) 2012-04-24 15:53:10 +01:00
Alena Prokharchyk 5021274232 CS-14256: throw executionException when finalizeStart fails (no point to retry). 2012-04-23 15:56:23 -07:00
Salvatore Orlando eb36cd5aba Removing basic connectivity provider and OVS network offering as not
needed for Bonita
2012-04-23 22:35:15 +01:00
Salvatore Orlando ccbdee899c Now finding the IP address also for the remote endpoint 2012-04-23 22:33:19 +01:00
root 59e93d9f29 Minor changes to string format command 2012-04-23 22:33:19 +01:00
Salvatore Orlando ec472fcaaa Forgot to add new dao into component library! 2012-04-23 22:33:19 +01:00
Salvatore Orlando b980993864 Adding DB support for interfaces OVS tunnel manager will use as GRE endpoints 2012-04-23 22:33:19 +01:00
root 3513551ae3 Hacking for demo 2012-04-23 22:33:19 +01:00
Salvatore Orlando 02cd1484b7 Removing superfluous log statements 2012-04-23 22:33:18 +01:00
Salvatore Orlando 2340ebced3 Now using vnets instead of network id for creating networks
Fixed issues with vif scripts on 5.6FP1
Fixed ipv6 issue on 5.6FP1
Plus other various fixes and improvements

Starting to remove debug code
NOTE: Network is configured correctly but instances do not start. Possibly indefinite wait occuring on some commands
2012-04-23 22:33:18 +01:00
Salvatore Orlando e2cc2c1f6e Fixing remaining issues with per-VIF flow script and removing version-specific scripts.
Now generating XSnetwork names using gre keys

Plus other minor corrections
2012-04-23 22:32:52 +01:00
Salvatore Orlando 8987499cda Now using vnets instead of network id for creating networks
Fixed issues with vif scripts on 5.6FP1
Fixed ipv6 issue on 5.6FP1
Plus other various fixes and improvements

Starting to remove debug code
NOTE: Network is configured correctly but instances do not start. Possibly indefinite wait occuring on some commands
2012-04-23 22:32:52 +01:00
unknown ac052ed4f0 Now allocating vnets for GRE keys 2012-04-23 22:32:51 +01:00
Alena Prokharchyk 3b4690424d bug 14295: allow regular user to create network with the custom cidr
status 14295: resolved fixed

Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-04-23 22:32:16 +01:00
Salvatore Orlando 8268635846 Adding Missing file to source control 2012-04-23 22:32:16 +01:00
Salvatore Orlando 9f321ffeac Open vSwitch tunnel manager
Applying patch with new ovs-tunnel-manager on top of cloudstack oss-master
2012-04-23 22:32:16 +01:00
anthony 352f3d95ed add CentOS 6.0, CentOS 5.7, RHEL 5.7 support for XenServer 6.0.2 2012-04-23 13:57:59 -07:00
Abhi 6857750566 bug CS-14593, CS-14541: fixed encryption issue 2012-04-23 15:29:38 +05:30
Nitin Mehta d6e185a5f4 bug CS-10789: Decrement and increment the resource count on volume correctly. 2012-04-23 13:45:09 +05:30
Nitin Mehta 4434aa0d2d bug CS-10789: More changes for the imageformat, introdueced new column in db for the format, created scripts for doffernt hypervisors ...and the list goes on. 2012-04-23 13:44:34 +05:30
Nitin Mehta f0911817ed bug CS-10789: Make the custome disk offering as system so that its not availble to the regular user.
Reviewed By: Kishan
2012-04-23 13:43:46 +05:30
Nitin Mehta 14adf23700 bug CS-10789: Adding more code changes for usage, delete volume . 2012-04-23 13:42:53 +05:30
Nitin Mehta ac2175bdbc bug CS-10789: Adding volume sync and delete functionality. 2012-04-23 12:29:38 +05:30
Nitin Mehta 54956280e6 Preliminary upload and attach changes work .. 2012-04-23 12:28:36 +05:30
Nitin Mehta 564cef8ddf More changes for uploadVolume. Create framework for upload volume progress communication between MS and SSVM. 2012-04-23 12:14:35 +05:30
kishan 2e80fba2b6 bug CS-14587: Process 500 rows at a time to encrypt vnc_password in vm_instance table. Added addtional logging.
status CS-14587: resolved fixed
reviewed-by: Alena
2012-04-22 22:33:37 +05:30
Alena Prokharchyk 3b4fb0b55e Fixed db upgrade bug: do vnc password encryption only for non-removed vms 2012-04-21 22:30:21 -07:00
Alena Prokharchyk 7990e15f09 More logging to the db upgrade 2012-04-21 22:29:51 -07:00
anthony bbd0259ad2 bug 14582: fix one big in upgrade from 2.1.4 to 3.0.2
status 14582: resolved
2012-04-20 17:02:57 -07:00
Alena Prokharchyk e4e0fff2eb Fixed db upgrade for 2.1-3.0 2012-04-20 12:00:37 -07:00
Kelven Yang 102bc1f39f Don't use dynamic quiried key size as it varies on different JVM implementation and security providers 2012-04-20 11:43:06 -07:00
kishan 316267f684 bug CS-14576: Fail 2.2.14 to 3.0.0 upgrade if encryption is not enabled
status CS-14576: resolved fixed
reviewed-by: Nitin
2012-04-20 16:12:03 +05:30
Nitin Mehta 44f4a5219a bug CS-14530: Whwnever creating an agent of type Routing update the capacity state as there is a transition in the resource state of the host.
Reviewed By: Kishan
2012-04-20 10:34:15 +05:30
Sheng Yang 329b06087e CS-14542: Fix wrong traffic label for KVM agent
Conflicts:

	agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java
2012-04-19 18:29:36 -07:00
prachi f76ad76775 Bug 14158 - 2.2.x - 3.0 db upgrade for multiple physical networks
-Create multiple physical networks if there are distinct tags found in network_tags table.
-One physical network per tag.
-Currently all tags flow to xenserver traffic type label.
2012-04-19 15:29:09 -07:00
Kelven Yang c5083787c2 Hardening console proxy AJAX protocol to address security concerns 2012-04-19 12:10:33 -07:00
kishan e5571480d4 bug CS-14566: set up physical networks before encrypting config values
status CS-14566: resolved fixed
reviewed-by: Nitin
2012-04-19 21:59:51 +05:30
Rajesh Battala 327049b5c5 CS-14546: Fixed bug Unable to view console in System and Guest VMs and Added Upgrade script 2012-04-19 21:15:45 +05:30
Nitin Mehta 0b18117db9 bug CS-14530: Whwnever creating an agent for the host put in enabled and disabled according to the hierarchy.
Reviewed By: Kishan
2012-04-19 19:00:53 +05:30
Nitin Mehta e04822eb70 bug CS-14530: Whenver adding a new capacity check the state of the resource - if its disabled/enabled.
Reviewed By: Kishan
2012-04-19 14:24:12 +05:30
Alena Prokharchyk d7f4d5d4ec CS-14553: db upgrade - for default network offerings:
1) Change display text to match fresh 3.0.2
2) Delete lb service for the offerings using VR as a provider and not having source nat service
2012-04-18 17:10:52 -07:00
kishan 7be811905f bug CS-14532: during 2211-2212 upgrade, do not add resource count entries for resourceTypes that were added in later releases
status CS-14532: resolved fixed
reviewed-by: Nitin
2012-04-18 15:39:21 +05:30
Alena Prokharchyk 03ccb7f313 CS-14512: fixed deployVm with ipToNetworkList when uuid is used for networkIds
Conflicts:

	server/src/com/cloud/api/ApiResponseHelper.java
2012-04-16 15:43:56 -07:00
Vijayendra Bhamidipati 1543c01e8d Bug CS-14448: Wrong error message on using the createVlanIpRange cmd
Description:

	Fixing two other scenarios apart from the reported one
	where we were not passing in database IDs for translation
	into uuids, in the exception.
2012-04-16 15:27:52 -07:00
Alena Prokharchyk 662a234916 CS-14297: added "forced" option to deleteStoragePool command. If forced=true, all destroyed volumes are marked as Expunged even when we can't reach primary storage at the moment of deletion.
Conflicts:

	api/src/com/cloud/api/commands/StopVMCmd.java
2012-04-16 13:22:46 -07:00
Alena Prokharchyk 9b089f2eb7 AdvanceStart: do cleanup() call with force=true when the start command wasn't sent to the backend yet 2012-04-13 17:19:02 -07:00
Sheng Yang f6383f844d bug 14470: Return true for applyRules unless specified
Only DHCP entry need to know if no one apply the entries(when VM is starting
up), other rules should be safe when return true anyway.

status 14470: resolved fixed
2012-04-13 14:51:25 -07:00
Alena Prokharchyk 76c7c22b34 Bug CS-14447: set crossZones attribute for the template before persisting it to the db 2012-04-13 14:16:18 -07:00