Commit Graph

5075 Commits

Author SHA1 Message Date
anthony 396fa72ee3 1. move control network to eth0 on domr
2. if it is basic mode, use guest NIC as Control NIC
2012-06-15 14:18:38 -07:00
Alena Prokharchyk 929997f54e AssociateIpAddress to VPC - the ip gets associated to the network only when the first rule for the ip gets created.
When the last rule is removed for vpc ip, networkId is set to null

Conflicts:

	api/src/com/cloud/api/commands/AssociateIPAddrCmd.java
	api/src/com/cloud/api/commands/EnableStaticNatCmd.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/rules/RulesService.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-06-15 14:18:24 -07:00
Alena Prokharchyk c56998e876 Support for IPAssoc inside VPC 2012-06-15 14:10:33 -07:00
Alena Prokharchyk 1189e92708 Destroy VPC if it fails to start during the deployment 2012-06-15 14:10:22 -07:00
Alena Prokharchyk 9ec8526281 1) Added VPC restart support - new api command RestartVPC. The purpose of the call is to shutdown and start VPC including VPCVirtualRouter restart, rules re-implement, etc
2) Only networks created from offerings with conserveMode=false, can participate in VPC
2012-06-15 14:10:09 -07:00
Alena Prokharchyk b9a4e79277 1) Added search by vpcId to listRouters/listNetworks Apis
2) Don't allow to add new networks/implement existing ones for VPC in Disabled state. Disabled state indicates that there was unsuccessful attempt to remove the VPC, and the further cleanup will be taken care of by cleanup thread.

Conflicts:

	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/server/ManagementServerImpl.java
2012-06-15 14:09:37 -07:00
Alena Prokharchyk d5507e1379 Support for delete VPC 2012-06-15 14:08:26 -07:00
Alena Prokharchyk f28cefc4c3 Added support for network shutdown in VPC guest networks 2012-06-15 14:07:59 -07:00
Alena Prokharchyk d9fd7e02a5 Plug nic support
Conflicts:

	server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
2012-06-15 14:07:46 -07:00
Alena Prokharchyk f4060c3c1d 1) Added new element - VpcVirtualRouterElement. Extends VirtualRouter + has plug/unplug nics support
2) Added services api support for plugging/unplugging the nics to VpcElement

Conflicts:

	api/src/com/cloud/network/NetworkService.java
	core/src/com/cloud/vm/VMInstanceVO.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-06-15 14:04:09 -07:00
Alena Prokharchyk c12ba9c86d Add type and rpcfilter to the virtual router bootload arguments even when there is no guest network is being configured. 2012-06-15 13:57:27 -07:00
Alena Prokharchyk bdfd484444 Deploy VR as a part of VPC: set elementId to the VR element id of the first physical network in the zone by now. TODO - add logic for handling the case when VR has 1 to many element ids relationship 2012-06-15 13:57:11 -07:00
Alena Prokharchyk ab680bc30c Start Virtual Router as a part of VPC start
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
2012-06-15 13:57:00 -07:00
Alena Prokharchyk 9debd3a5df 1) Added start logic to the VPC
2) VirtualRouterManagerImpl - refactored deployVirtualRouter method
3) Added vpcId to domain_router/user_ip_address tables and corresponding vo objects

Conflicts:

	server/src/com/cloud/network/IPAddressVO.java
2012-06-15 13:56:05 -07:00
Alena Prokharchyk afd2d0331f Set networkId as a join parameter in DomainRouterDaoImpl as networkId was moved to the helper table 2012-06-15 13:55:01 -07:00
Alena Prokharchyk 998cf66e6c Removed network_id reference from domain_router table as now VirtualRouter can be associated with multiple networks (VPC case). Code modifications were done accordingly to the places where this field was used.
Router->Networks (one to many) are held in router_network_ref table now
2012-06-15 13:54:48 -07:00
Alena Prokharchyk 60b52f90dd Initial checkin for VPC feature:
1) Added API frameworks for the feature. New commands:
* CreateVPCCmd
* ListVPCsCmd
* DeleteVPCCmd
* UpdateVPCCmd
* CreateVPCOfferingCmd
* UpdateVPCOfferingCmd
* DeleteVPCOfferingCmd
* ListVPCOfferingsCmd

2) New db tables:

* `cloud`.`vpc`
* `cloud`.`vpc_offerings`
* `cloud`.`vpc_offering_service_map`

and corresponding VO/Dao objects.

Added vpc_id field to `cloud.`networks` table - not null when network belongs to VPC

3) New Manager and Service interfaces- VpcManager/VpcService

4) Automatically create new VpcOffering (if doesn't exist) on system start

5) New Action events:

* VPC.CREATE
* VPC.UPDATE
* VPC.DELETE

* VPC.OFFERING.CREATE
* VPC.OFFERING.UPDATE
* VPC.OFFERING.DELETE

Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	setup/db/create-schema.sql
2012-06-15 13:53:59 -07:00
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