8405 Commits

Author SHA1 Message Date
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
Chiradeep Vittal
1c5adc7714 bug 11336: compression to allow number of cidrs to scale beyond 8k 2011-10-06 17:56:59 -07:00
Chiradeep Vittal
dbaf14d9e1 bug 11336: compression to allow number of cidrs to scale beyond 8k 2011-10-06 17:55:38 -07:00
Chiradeep Vittal
1b3372e1de bug 11625: separate out error paths to enable fine grained error handling and cleanup
status 11625: resolved fixed
2011-10-06 17:55:29 -07:00
Chiradeep Vittal
61fa7d8675 bug 11420: reduce duration of disruption 2011-10-06 17:55:21 -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
Edison Su
f6acda0b91 bug 11663: iterate the whole /var/cache/cloud/cmdline to find out the mgt server ip address, as the position is different for each hypervisor
status 11663: resolved fixed
2011-10-06 14:33:58 -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
95647470c7 add type 2011-10-03 16:50:43 -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
Edison Su
eacb9dde26 [Simulator] Add API to configure simualtor: you can configure which command can be simulated, or how long it will wait for each command, for which zone/pod/cluster/host etc.
e.g: command=configuresimulator&name=SecurityIngressRulesCmd&zoneid=1&value=enabled:true|timeout=30, means enable command SecurityIngressRulesCmd for zone 1, and wait for 30 seconds.
2011-09-30 18:21:28 -07:00
Edison Su
4ef20e91ed Revert "bug 11239: add check for hypervisor type when deploy vm, no way to deploy a vm with hypervisor type None"
This reverts commit f1e66738bb252c20a9ec1b8dffc2fd24521458dc.
2011-09-30 10:24:09 -07:00
Nitin
c94b45ef4a ListCapacity - Document what each capacity types mean. 2011-09-30 13:30:42 +05:30
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
fbc19041ab Fix haproxy directory issue in buildsystemvm.sh 2011-09-29 16:14:59 -07:00
Jessica Wang
8023d9486e cloudStack - sync 2.2.Y UI change to master branch. 2011-09-29 15:35:45 -07:00
Sheng Yang
ae52867be4 Add no-args constructor for ClusterSyncCommand/ClusterSyncAnswer
Otherwise they can't be deserialized.

Fix the following exception on KVM host:

ERROR [agent.transport.Request] (Agent-Handler-2:null)
Caught problem with
[{"ClusterSyncCommand":{"_interval":60,"_skipSteps":20,"_steps":0,"_clusterId":2,"contextMap":{},"wait":0}}]
com.google.gson.JsonParseException: The JsonDeserializer
com.cloud.agent.transport.ArrayTypeAdaptor@44ed904 failed to deserialized json
object
[{"ClusterSyncCommand":{"_interval":60,"_skipSteps":20,"_steps":0,"_clusterId":2,"contextMap":{},"wait":0}}]
given the type class [Lcom.cloud.agent.api.Command;
...
Caused by: java.lang.RuntimeException: No-args constructor for class
com.cloud.agent.api.ClusterSyncCommand does not exist. Register an
InstanceCreator with Gson for this type to fix this problem.
        at
com.google.gson.MappedObjectConstructor.constructWithNoArgConstructor(MappedObjectConstructor.java:64)
...
2011-09-29 14:56:27 -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
Sheng Yang
89e45bd671 bug 11130: Add GetDomRVersionCmd 2011-09-29 14:50:11 -07:00
anthony
33b1055c01 timeout is not set for some commands 2011-09-29 13:09:05 -07:00
Jessica Wang
425f084f39 bug 11607: cloudStack - Make client API path and client Console path configurable in the UI code. 2011-09-29 12:20:02 -07:00
anthony
25c78592f4 bug 11552:
This bug also happens in XenServer 5.6 FP1, but this issue is hidden by bug 11564.
 There are two issues here

 1.  in XenServer 5.6 FP1/SP2, when a slave host is down ( NIC is unplugged), and before master detect the slave is down( it takes about 10 minutes),
 template.createClone doesn't work sometime, it complains can not contact slave host, looks like XenServer try to start VM on this slave host, we use VM.create instead, we can specify host in VM.create API, so it will not try to connect the slave

 2.  in XenServer 5.6 FP1/SP2,  host tag is introduced into VDI, however in HA case, VM.reset_powerstate and VM.destory doesn't remove this host tag, when CloudStack try to start this VM on other host, XenServer complains this VDI is already used ( or mount as RW). CloudStack will manually remove the host tage in VDI in FenceCommand

status 11552: resolved fixed
2011-09-29 12:19:45 -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
Jessica Tomechak
10ade6bb7e Update documentation. 2011-09-28 19:59:11 -07:00
Jessica Tomechak
55b27ff4d8 Update documentation for release 2.2.12. 2011-09-28 19:56:57 -07:00
Jessica Tomechak
e1fd0d2ddd Update documentation source and PDF files. 2011-09-28 19:56:51 -07:00
anthony
98a5634647 bug 11564,11569: when host is down, host.enable or pool.sync_db hangs, remove them from critical path.
after this fix, 11552 HA can be seen in XenServer 11552 FP1
This patch should fix 11569 as well

status 11564,11569: resolved fixed
2011-09-28 12:41:53 -07:00
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
Nitin
b9df06619a bug 11051: ListPods/ListZones - Apply cpu overprovisioning explicitly as it is not applied when its stored in the db. Also avoid calculating the non shared storage for storage allocated capacity calculation. 2011-09-28 17:48:31 +05:30
kishan
a4af6d43f8 bug 11547: VMware - Reset iptables counter when a public interface on domR is
removed
status 11547: resolved fixed
reviewed-by: Ram
2011-09-28 16:50:57 +05:30
kishan
806bfe33c4 bug 11581: During router start, create iptables NETWORK_STATS chain before adding rules for additional public interfaces into that chain
status 11581: resolved fixed
reviewed-by: Chiradeep
2011-09-28 16:46:45 +05:30
Nitin
da2696b2f6 bug 11051: ListCluster - Apply cpu overprovisioning explicitly as it is not applied when its stored in the db. Also avoid calculating the non shared storage for storage allocated capacity calculation. 2011-09-28 16:16:28 +05:30
Sheng Yang
1fb5030cca Clean up global redundant_router config item
We would use network_offering option in 3.0 instead.
2011-09-27 16:50:24 -07:00
Sheng Yang
f40cfebd97 Fix wrong event type for DestroyRouterCmd 2011-09-27 15:24:37 -07:00