Commit Graph

3773 Commits

Author SHA1 Message Date
prachi 780e0efe79 Removing references to DataCenter - providers, using the networkoffering -> providers map instead.
TODO:
- Still leaving the provider columns in data_center schema as-is for CloudKit and BareMetal
- ExternalNetworkDeviceMgrImpl still needs to fix the dataCenter.setProviders calls and externalNetworkApplicance usage checks to see if zone has external networking.
2011-10-24 18:06:33 -07:00
prachi 766c898504 Changes: DeletePhysicalNetwork changes and Configuring NetworkMgr to hold map of providers -> elements 2011-10-24 18:03:18 -07:00
alena 345b1421c8 Allow network offering upgrade for any combination of services 2011-10-24 17:56:34 -07:00
alena 6379c9c61e Return false when failed to apply the rules on the backend 2011-10-24 17:55:04 -07:00
alena f6717e0a23 1) Method name change
2) Rely on SourceNatService when decide if DirectNetworkGuru and GuestNetworkGuru should handle the network
2011-10-24 17:30:14 -07:00
alena 75c8e33226 Removed guestIpType from network/networkOffering 2011-10-24 17:05:00 -07:00
alena abca3dda9d Added ability to list network offerings availabe for network upgrade using listNetworkOfferings command with "networkId" parameter.
Limitations:

* can't upgrade to the network offering with lesser number of services
* can upgrade only when the service provider of the original offering is not external (domR, dhcp, elb) to the external type of the provider
2011-10-21 15:36:01 -07:00
Murali Reddy aa808f5685 -Added LB serive provider (seperating it out from Firewall service provider)
-Bringing add/delete/list of all external network devices under one unified API's (addNetworkDevice, deleteNetworkDevice, listNetworkDevice)
-Refactoring External network manager to work from both sets of API's add/delete/list NetworkDevice and add/delete/list External Firewall/LoadBalancer
2011-10-21 18:15:36 +05:30
alena 219978a9be Create network using physical network id 2011-10-20 18:25:13 -07:00
prachi 0d7ddb5d58 Changes:
- Make all API commands Async and add events
- Make BroadcatsDomainRange case insensitive
- Process all _networkElements to build the Service -> Provider map during NetworkMgr::configure()
2011-10-20 17:11:30 -07:00
Sheng Yang 21344e3c36 NaaS: Remove some API test code 2011-10-20 15:19:00 -07:00
Sheng Yang 2ebb719aba NaaS: Add configuration for virtual router elements 2011-10-20 13:59:23 -07:00
Sheng Yang fdc354adb5 NaaS: Add VirtualRouterElements table
It would cover the configuration of DHCPElement, VirtualRouterElement and
RedundantVirtualRouterElement.

Also add foreign key in domain_router table to reflect the domain_router is
created from which element and use what configuration.
2011-10-20 13:59:02 -07:00
Sheng Yang 04f106a595 NaaS: Configure commands for DhcpElement, VirtualRouterElement and RedundantVirtualRouterElement
Add configure command for these virtual router based elements. The commands
should be different for different elements.

The context of configuration would be added later.
2011-10-20 13:58:54 -07:00
alena 51828421f3 Allow upgrade to the offering with a different set of providers 2011-10-20 12:53:14 -07:00
prachi be47d6b4e9 fixing build after the Merge. 2011-10-19 22:49:03 -07:00
prachi 654eaec663 NAAS: Configuring Zone
- Create Zone changes and changes to data_center table to remove vlan, securityGroup fields
- Physical Network lifecycle APIs
- Physical Network Service Provider APIs
- DB schema changes
2011-10-19 22:44:03 -07:00
alena c5acad39d9 Make Guest Direct security group enabled network offering system by default - we'll make it non-system after getting rid of Basic/Advance zone concepts 2011-10-19 17:34:21 -07:00
alena ceda05298e Deprecate guestIpType in networkOffering api. Use type (Shared/Isolated) instead 2011-10-19 16:38:39 -07:00
alena 4cb9e30990 Network offering upgrade implementation 2011-10-14 15:03:12 -07:00
alena c00058adc2 Added type (Shared/Isolated) to the networkOffering/networks 2011-10-13 17:33:41 -07:00
alena 2d228dfcbb Default service provider to VirtualRouter (should make this parameter configurable in the future) 2011-10-12 18:02:35 -07:00
alena 7433d5314a 1) Refactored networkOfferings:
* moved all services to the separate table, map them to the network_offering+provider.
* added state/securityGroupEnabled properties for the networkOffering
* added ability to list by state/securityGroupEnabled in listNetworkOfferings api command

2) New service: SourceNat
2011-10-12 16:38:59 -07:00
prachi 8570b25506 NAAS: APIServer changes to introduce framework to read commands from pluggable components having separate commands.properties file
Changes:
- Added a new interface 'PluggableService'
- Any component that can be packaged separately from cloudstack, can implement this interface and provide its own property file listing the API commands the component supports
- As an example have made VirtualNetworkApplianceService pluggable and a new configureRouter command is added
- ComponentLocator reads all the pluggable service from componentLibrary or from components.xml and instantiates the services.
- As an example, DefaultComponentLibrary adds the pluggable service 'VirtualNetworkApplianceService'
- Also components.xml.in has an entry to show how a pluggable service can be added, but it is commented out.
- APIServer now reads the commands for each pluggable service and when a command for such a service is called, APIServer sets the required instance of the pluggable service in the coomand.
- To do this a new annotation '@PlugService' is added that is processed by APIServer. This eliminates the dependency on the BaseCmd to instantiate the service instances.
2011-10-11 17:34:57 -07:00
Sheng Yang b2a007dc3c NaaS: Remove IsServiceProvider() functions
If the element is the service provider for this network, then can be tell from
network offering. We don't need these functions in the interface.
2011-10-11 14:04:13 -07:00
Sheng Yang 30d48c40b3 Network as a service(NaaS): Separate redundant virtual router as a standalone element
Since we would introduce a way to specify each service provider in the network
offering, it's better for redundant virtual router as a separate service
provider.

Also isRedundant() flag in the network offering would be removed. Redundant
virtual router temporality won't work from now. Until we're able to add
different network elements/service providers in network_offering.
2011-10-10 15:41:07 -07:00
Sheng Yang 0121c0516d Network: Add Service providers
In the past, the NetworkElement would cover almost all the functionality that
e.g.  virtual router can cover: firewall, source NAT, static NAT, password,
VPN... So anyone want to implement the NetworkElement would have to implement
these service's specific methods, even it wouldn't support it. Also, if we want
to find a e.g. FirewallServiceProvider, we have to proceed all the current
network service providers, to call a method to know if it support such service.
That's neither elegant nor scaling way to do it.

As the first step, this patch separates each ServiceProvider from NetworkElement
(there are some interface already out of NetworkElement, so this patch slightly
modifies them too), and only the class would implement the correlated interface, would
have the ability to do these services.
2011-10-10 11:45:39 -07:00
alena 43bebcd050 Fixed regression bug in listNetworks call (introduced during Project feature implementation) 2011-10-10 10:52:07 -07:00
alena eba6864965 bug 11667: drop primary keys in cloud_usage.usage_load_balancer_policy and cloud_usage.usage_port_forwarding
status 11667: resolved fixed

Conflicts:

	server/src/com/cloud/user/AccountManagerImpl.java
2011-10-07 11:02:14 -07:00
alena d399c901c8 bug 11666: fixed foreign key upgrade in networks table
status 11666: resolved fixed
2011-10-06 18:15:57 -07:00
alena 143036b4a7 bug 11664: fixed regression bug in listVms introduced by performance changes
status 11664: resolved fixed
2011-10-06 16:53:18 -07:00
alena a17570ef51 1)Implemented Suspend/Activate project
2)Email/token based invitation system
2011-10-06 16:10:36 -07:00
prachi a51fb221d6 Bug 11169 - Couldn't deploy a router because the host it existed on is in Maintenance.
Changes:
- VirtualMachineMgr puts the constraint that if Root volume is already READY, we provide the clusterId in the plan to the deploymentPlanner. Planner then searches for resources only under that cluster.
- If no deployment could be found, deploying VM fails.
- Fixed this, such that incase the root volume is recreatable, we call the planner again by removing the cluster constraint. Planner will then search for resources in other clusters.
- Works for system VMs(SSVM, consoleproxy, virual routers).
2011-10-05 18:35:59 -07:00
alena 25c2734e03 More stuff to Projects feature - added support for adding resources (vms, templates, isos) to the project 2011-10-05 13:24:25 -07:00
alena 998568283c Don't allow to add accounts to the domain of type Project
Don't allow to manipulate (delete/update) accounts/domains of type Project
2011-10-05 13:24:25 -07:00
Sheng Yang e72d38b15d Revert "bug 11604: Assign guest ip for each router"
This reverts commit 42ab3c94c210d5a29289a5dfd0e44ae99c427f8b.

The commit may not fit for our new network as service framework, because we
would make single router and redundant router as two different service provider,
so the change of network offering should clean up the old network and then setup
new one. Make single router work as redundant router later make no sense in such
condition.
2011-10-04 17:58:15 -07:00
Sheng Yang 36511ab6fd bug 11604: Assign guest ip for each router
Then every router would have one guest ip. The gateway ip would be used if the
router is not redundant, otherwise the guest ip would be used for guest network.
2011-10-04 16:24:15 -07:00
Sheng Yang 143ec3a4c5 Clean up priority calcuation/create new mac when create domain router
They're unnecessary.
2011-10-04 16:24:06 -07:00
Edison Su ae83246acb bug 11600: aquirelock before deleting a volume, which can be aquired by snapshot manager
status 11600: resolved fixed
2011-10-03 16:43:47 -07:00
prachi 083b458f03 Bug 11617 - Ensure the Deployment planner is choosing clusters based on aggregate capacity
Merge removed this import statement. Adding it back.
2011-10-03 15:46:41 -07:00
prachi e0a179752d Bug 11617: Ensure the Deployment planner is choosing clusters based on aggregate capacity
Changes:
- We were ordering clusters based on capacity of the first-fit host found in each cluster. Due to this, there were cases where we deployed VMs to one cluster instead of balancing off within clusters.
- Now we order the list of clusters by aggregate capacity and choose the ones that have enough capacity for the required VM in this order.
- This should balance the load between clusters instead of bombarding one.

Conflicts:

	server/src/com/cloud/capacity/dao/CapacityDao.java
	server/src/com/cloud/capacity/dao/CapacityDaoImpl.java
2011-10-03 15:37:38 -07:00
prachi 9bd5e5871b Bug 11481 - get manual live migration working with all VMs
Changes:
- Added a new API  'migrateSystemVm'  backed by MigrateSystemVMCmd.java to migrate system VMs (SSVM, consoleproxy, domain routers(router, LB, DHCP))
- This is Admin only action
- The existing API 'migratevirtualmachine' is only for user VMs
2011-09-29 17:47:46 -07:00
Sheng Yang b8f8989821 bug 11130: Update template and script version in the database when domR started 2011-09-29 14:51:20 -07:00
anthony 33b1055c01 timeout is not set for some commands 2011-09-29 13:09:05 -07:00
alena 53b1b9f63b bug 11603: for OSS build - update guru_name from GuestNetworkGuru to ExternalGuestNetworkGuru.
status 11603: resolved fixed
2011-09-29 10:43:01 -07:00
alena d7267fb0c5 bug 11589: don't fail deleteVpn command when domR is in Stopped state.
status 11589: resolved fixed

Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2011-09-29 10:22:14 -07:00
alena 12e25fb988 Implemented vm* api commands to be executed against the project 2011-09-29 10:20:51 -07:00
alena eda1b53c76 Events for adding/removing project users 2011-09-29 10:20:51 -07:00
Murali Reddy a623b2824b bug 6876: netscaler integration
added external lb network usage and inline support
2011-09-29 18:59:46 +05:30
anthony aef74ff521 bug 10579: disable pool vm sync and disable hostTrack for XenServer,
status 10579: resolved fixed

reviewed-by: alex

Conflicts:

	core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
2011-09-28 12:41:24 -07:00