11970 Commits

Author SHA1 Message Date
Devdeep Singh
ec19facd30 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Adding apis to create service policies and
	associate them with a port profile.
2012-05-25 17:36:42 -07:00
Sateesh Chodapuneedi
aa1f26cb00 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Moved dvSwitch specific functionality over datacenter.

Conflicts:

	vmware-base/src/com/cloud/hypervisor/vmware/mo/DatacenterMO.java
	vmware-base/src/com/cloud/hypervisor/vmware/mo/HostMO.java
2012-05-25 17:35:50 -07:00
Sateesh Chodapuneedi
04898a0bf9 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Cleanup upgrade script.
2012-05-25 17:29:44 -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
8ba1d62b50 CS-9919 Support for Nexus Swiches (Cisco Vswitches)
Description:

	Modified upgrade script to include new global
	configuration parameters.
2012-05-25 17:29:28 -07:00
Sateesh Chodapuneedi
fb887ac7b7 CS 9919 - Support for Nexus Swiches (Cisco Vswitches)
Support for various types of vswitches in VMware.
2012-05-25 17:27:15 -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
Devdeep Singh
0e293b7b5b CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Made changes to persist the vsm configuration
	after updating it.
2012-05-25 17:18:11 -07:00
Devdeep Singh
76e1d338f3 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Adding a helper routine for modifying port
	profile configuration.
2012-05-25 17:18:04 -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
Devdeep Singh
4ff2893ffc CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Updated the add port profile routine to support
	more options (bindingtype, switchport mode, port
	profile types).
2012-05-25 17:17:43 -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
Devdeep Singh
441a811927 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Added handling for error responses from vsm.
	Fixing an issue with port profile creation.
2012-05-25 17:17:02 -07:00
Devdeep Singh
3fd32c1784 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Removing unused classes and references to them.
2012-05-25 17:16:55 -07:00
Devdeep Singh
631cc863e1 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Updated the rpc request generation logic for
	creating and deleting port profiles.
2012-05-25 17:16:48 -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
5109902c9f CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Update create-schema.sql to create tables for
	VSM and VSM-Cluster mapping.

	Fixed an incorrect exception path in
	CSExceptionErrorCode.

Conflicts:

	utils/src/com/cloud/utils/exception/CSExceptionErrorCode.java
2012-05-25 17:11:49 -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
Devdeep Singh
1198a62453 CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Adding a netconf helper class for adding and
	deleting port profiles. These functions need
	to be further parameterized and error handling
	needs to be taken care of.
2012-05-25 17:09:54 -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
7028357111 Bug CS-9919: Support for Nexus Swiches (Cisco Vswitches)
Description:

	Fixing a wrong package path in CiscoNexusVSMResponse.

	More commits to follow.
2012-05-25 17:05:41 -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
frank
2fe8ee4d5e fix build after awsapi merge 2012-05-25 16:43:58 -07:00
prachi
eb864814a9 thirdparty library needed for awsapi 2012-05-25 15:49:20 -07:00
Brian Federle
3d4edfed03 CS-15099: Merge reviewed changes
commit 17d4337f2d0b35acb414cbe0a19627fc75c0ca00
Author: Pranav Saxena <pranav.saxena@citrix.com>
Date:   Sat May 26 02:54:18 2012 +0530

    CS-15099:Account deletion - buttons overlap the text on the Account deletion confirmation page.
2012-05-25 14:55:17 -07:00
prachi
74beef1012 merge awsapi deps to master 2012-05-25 14:41:08 -07:00
prachi
49cdc2317b merge awsapi build script changes to master 2012-05-25 14:40:56 -07:00
prachi
3fd17ae029 Merge awsapi related changes to CloudStack 2012-05-25 14:40:53 -07:00
prachi
bc7dbd7d96 Merging awsapi component to master 2012-05-25 14:40:49 -07:00
prachi
9aaaab0ebe Merging awsapi-setup to master 2012-05-25 14:40:35 -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
Brian Federle
c71790b5c7 CS-15096: Disable network actions for non-admins
reviewed-by: jessica
2012-05-25 12:55:47 -07:00
Brian Federle
70687e4b44 CS-14844: Fix edit action
Fix edit action by referring to the new td.value <span>, instead of
td.value
2012-05-25 12:24:19 -07:00
Brian Federle
96982933df CS-14844
-If value label in detail view gets too long, then add horizontal
 scrollbar to value, to avoid truncation

-Lower font size to 11px (-1px) to better fit longer data into UI

reviewed-by: sonny
2012-05-25 12:08:29 -07:00
Edison Su
d646f30e7a bug CS-15095: vm cpu freq <= host cpu freq 2012-05-25 11:17:55 -07:00
Sanjay Tripathi
dd3b40218b CS-12111: No e-mail validation for edit user form
reviewed-by: brian
2012-05-25 11:09:48 -07:00
Brian Federle
0753b1035f CS-13091: Remove enable/disable physical network actions
Due to limitations in the API, for now the enable/disable
functionality for physical networks will be removed.
2012-05-25 11:01:57 -07:00
Jessica Wang
66c6d1ceba CS-13739: check in Japanese translation file from Japan team 2012-05-25 10:56:42 -07:00
Edison Su
a74e8d8b6b bug CS-15094: cpu limit is cpuspeed*cpucount 2012-05-25 10:52:34 -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
Alena Prokharchyk
4b67937556 CS-15089: cloud-sysvmadm - fixed broken parsing in queryAsyncJobResult part of the code
reviewed-by: Frank Zhang
2012-05-25 10:15:51 -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
Sanjay Tripathi
fff3fdb216 CS-12407: F5 & Netscaler when dedicated is selected capacity field should be disabled. 2012-05-25 12:09:56 +05:30
Sanjay Tripathi
92442765d4 CS-12407: F5 & Netscaler when dedicated is selected capacity field should be disabled. 2012-05-25 12:09:29 +05:30