Commit Graph

171 Commits

Author SHA1 Message Date
Chiradeep Vittal cadca5fc0c Merge branch 'master' into network-refactor-merge2
Conflicts:
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/element/RemoteAccessVPNServiceProvider.java
	plugins/network-elements/nicira-nvp/src/com/cloud/network/element/NiciraNvpElement.java
	server/src/com/cloud/acl/DomainChecker.java
	server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
2013-01-16 19:17:14 -08:00
Chiradeep Vittal 6b6d8c5710 Network-refactor: Move code from NetworkManager to NetworkModel.
NetworkModel is intended as a read-only view on the network model.
This includes Networks, Nics, Ip address, PhysicalNetwork, NetworkOfferings, etc
The code in configure() and start() is used to support queries on the network model which is now the responsibility of the NetworkModel service

Network-refactor: Fix tests so that they get injected with the required NetworkModel mock

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Min Chen 74c15a22a0 Create DB view for ListStoragePools API performance optimization.
Signed-off-by: Min Chen <min.chen@citrix.com>
2013-01-08 12:33:18 -08:00
Min Chen 0894822651 DB view dao cleanup, and introduce global configuration parameter for
entity detail batch query size to remove hard-coded
VM_DETAILS_BATCH_SIZE.

Signed-off-by: Min Chen <min.chen@citrix.com>
2013-01-07 16:40:31 -08:00
Chiradeep Vittal af1abe4056 Forgot some element adapters + dont add JuniperSRX by default 2013-01-07 15:21:57 -08:00
Min Chen daeb4abcca Create DB views for AsyncJobResponse to speed up listAsyncJobsCmd.
Signed-off-by: Min Chen <min.chen@citrix.com>
2013-01-03 15:35:26 -08:00
Min Chen ebfb90e217 Create DB view for Account to speed up ListAccountsCmd, and add missing async job information for some response objects.
Signed-off-by: Min Chen <min.chen@citrix.com>
2013-01-02 17:38:58 -08:00
Min Chen 21c1623a03 Create DB view for Volume to speed up ListVolumesCmd.
Signed-off-by: Min Chen <min.chen@citrix.com>
2012-12-25 17:08:50 -08:00
Rohit Yadav 296b49c2f8 Merge branch 'master' into test-merge-api
Conflicts:
	api/src/com/cloud/agent/api/BackupSnapshotCommand.java
	api/src/com/cloud/agent/api/storage/PrimaryStorageDownloadCommand.java
	api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/resource/ResourceService.java
	api/src/org/apache/cloudstack/api/ApiConstants.java
	api/src/org/apache/cloudstack/api/ResponseGenerator.java
	api/src/org/apache/cloudstack/api/response/SSHKeyPairResponse.java
	client/tomcatconf/commands.properties.in
	core/src/com/cloud/storage/SnapshotVO.java
	pom.xml
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade40to41.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	setup/db/create-schema.sql
	setup/db/db/schema-40to410.sql

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 13:54:46 -08:00
Min Chen e7fa1a86fb Create DB views to improve ListHostsCmd performance.
Signed-off-by: Min Chen <min.chen@citrix.com>
2012-12-22 21:47:05 -08:00
Min Chen c167ad45e3 Move view based VO and Dao classes to cloud-server module to hide the
details from API client, also extract query related methods into
QueryService interface.
2012-12-14 10:47:58 -08:00
Edison Su b70c1a5a84 Backs NFS-based secondary storage with an S3-compatible object store. Periodically, a reaper thread synchronizes templates and ISOs stored on a NFS secondary storage mount with a configured S3 object store. It also pushes snapshots to the object store when they are created and downloads them in other zones on-demand. In addition to permitting the use of commodity or IaaS storage solutions for static assets, it provides a means of automatically synchronizing template and ISO assets across multiple zones. 2012-12-13 23:18:37 -08:00
Rohit Yadav 88b7af18e6 api: Revert "Move all the DB view DAOs from cloud-server to cloud-api for future api-server package."
Reverting commit as we don't want the daos to move to cloud-api.
We'll eventually breakout cloud-server and create cloud-api-server for the standalone
api server.

This reverts commit 7597a38f7a.
2012-12-13 09:42:28 -08:00
Min Chen 7597a38f7a Move all the DB view DAOs from cloud-server to cloud-api for future api-server package.
BUG-ID: CLOUDSTACK-527

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-13 09:28:42 -08:00
Min Chen 472f4f91b9 Refactor ListProjectInvitationsCmd and ProjectInvitationResponse. 2012-12-12 09:04:43 -08:00
Min Chen 9c93fee0dc Refactor ListProjectAccountCmd and ProjectAccountResponse. 2012-12-11 15:49:15 -08:00
Min Chen 8735716ba0 Refactor ListProjectsCmd and ProjectResponse. 2012-12-11 12:51:08 -08:00
Min Chen c83323fea7 api: Refactoring ListUsersCmd and UserResponse.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-10 17:45:40 -08:00
Min Chen 1cf8b86ce5 api: Load InstanceGroupJoinDao to component Library
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-10 15:17:07 -08:00
Min Chen 30941c2d31 api: Refactoring ListEventsCmd and EventResponse, and create Event db view.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 16:54:45 -08:00
Min Chen acf7afd7f5 api: Refactor ResourceTagResponse and ListTagsCmd, add db view for ResourceTag.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 09:57:52 -08:00
Min Chen 8a313d7f84 api: SecurityGroupResponse and SecurityGroupRuleResponse refactoring
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-06 16:04:48 -08:00
Min Chen b0ce8fd4ff api: Optimize and improve api, db call perfomance
This is part 1 of list API refactoring. Commands covered:
listVmsCmd, listRoutersCmd Response covered:
UserVmResponse, DomainRouterResponse. DB views created:
user_vm_view, domain_router_view.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-05 20:06:20 -08:00
Vijay dda4d39b55 AutoScale changes in Apache master 2012-11-16 10:56:44 +05:30
Alena Prokharchyk 057d6ccbb8 Name change for vpc/Dao package (dao is lowercased now) 2012-08-08 14:51:51 -07:00
Alena Prokharchyk e7a1862867 VPC: CS-15827 - register only VpcVirtualNetworkApplianceMgr
Conflicts:

	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/network/VpcVirtualNetworkApplianceService.java
	plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/ha/UserVmDomRInvestigator.java
2012-08-03 14:23:45 -07:00
Alena Prokharchyk 31f9d718fb Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
2012-07-03 17:32:50 -07:00
Sheng Yang 24c480f9e6 CS-6840: Add commands for site-to-site vpn
Conflicts:

	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	utils/test/com/cloud/utils/net/NetUtilsTest.java
2012-07-02 16:26:34 -07:00
Murali reddy 9876d34ea4 moving out ELB network element to plugins/network-elements/elastic-loadbalancer 2012-07-02 15:05:58 -07:00
David Nalley e87558256c Patch from Chip Childers
https://reviews.apache.org/r/5704/
License header updates for the server folder
2012-07-02 09:51:21 -04:00
Alena Prokharchyk 1f01d923ca Merge branch 'master' into vpc 2012-06-28 17:44:08 -07:00
Alena Prokharchyk 634cd78baa Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	api/src/com/cloud/api/commands/ListNetworksCmd.java
	api/src/com/cloud/api/response/NetworkResponse.java
	api/src/com/cloud/event/EventTypes.java
	api/src/com/cloud/network/NetworkService.java
	client/tomcatconf/commands.properties.in
	scripts/network/domr/getDomRVersion.sh
	scripts/network/domr/ipassoc.sh
	scripts/network/domr/l2tp_vpn.sh
	scripts/network/domr/networkUsage.sh
	scripts/network/domr/router_proxy.sh
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/network/dao/IPAddressDaoImpl.java
	setup/apidoc/gen_toc.py
	setup/db/create-schema.sql
	wscript
2012-06-28 17:41:40 -07:00
Murali reddy c41094154d moving out OVS code to plugins/network-elements/ovs 2012-06-28 17:23:41 -07:00
Murali reddy 8197f1f07c moving out VMWAre and Nexus VSM support code into plugins/hypervisors/vmware 2012-06-26 19:48:55 -07:00
Alena Prokharchyk ce876e24de VPC: intermidiate checkin to Static Routes
Conflicts:

	api/src/com/cloud/api/ApiConstants.java
2012-06-25 21:00:57 -07:00
Alena Prokharchyk b770c8b979 VPC: moved NetworkACL manager to the vpc folder 2012-06-25 20:57:50 -07:00
Alena Prokharchyk 030458a37b VPC: implemented add/delete Private gateway
Conflicts:

	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/dc/DataCenterVO.java
	server/src/com/cloud/network/NetworkManagerImpl.java
2012-06-25 20:54:14 -07:00
Murali reddy 392ae5cb13 moving out Srx code into Plugins/network-elements 2012-06-25 16:55:53 -07:00
Murali reddy 422c4ce513 moving out F5 code from server into plugins/network-elements/f5/ 2012-06-23 14:16:59 -07:00
Murali reddy 49b88472a5 moving out NetScaler network element code from CloudStack core into plugins/network-elements/netscaler 2012-06-21 18:57:18 -07:00
Alena Prokharchyk 374a600746 VPC: initial checkin for network ACLs
Conflicts:

	client/tomcatconf/commands.properties.in
2012-06-20 17:19:49 -07:00
Alena Prokharchyk 62d45b9670 Initial checkin for resource tags feature
Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/uuididentity/dao/IdentityDao.java
	server/src/com/cloud/uuididentity/dao/IdentityDaoImpl.java
	setup/db/create-schema.sql
2012-06-20 15:45:08 -07:00
Alena Prokharchyk 0a7faa9838 Support for adding private network
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade2214to30.java
2012-06-15 14:20:34 -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 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
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 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 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
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