155 Commits

Author SHA1 Message Date
Jayapal
5c12250dea CLOUDSTACK-5278 Fixed cleaning up egress default rules on VR and SRX
1. Egress default policy rules is send to the firewall provider. It is up to the
    provider to configure the rules.
   2. The default policy rules are send for both allow and deny default policy.
   3. On network shutdown rules for delete are send.
   4. For VR and SRX, by default deny the traffic. So no default rule to deny traffic is required.
2013-12-10 14:19:03 +05:30
Kelven Yang
aa72b76aec CLOUDSTACK-669: put system vm work under new vmsync model 2013-12-06 16:53:11 -08:00
Prachi Damle
eb7cd06e19 CLOUDSTACK-5401: VM migration during host maintenance fails if pool.storage.capacity.disablethreshold is lowered
Changes:
- During Vm migration while finding a new host within the cluster, we need to set the storagepool Id to the deployment plan too.
- This will indicate the planner that the volumes are ready and no need to find new pool
- This in turn will prevent the threshold check done during the pool allocation. This step is not needed since there is no need to allocate pools newly.
- Thus the migration wont fail because th threshold check fails.
2013-12-06 11:18:28 -08:00
Prachi Damle
5475312612 CLOUDSTACK-5399: Add option to createVolume API to specify a VM, to place the volume appropriately and attach immediately
Changes:

    - Added 'virtualmachineid' parameter to the createVolume API to specify a VM for the volume. The Vm should be in 'Running' or 'Stopped' state.
    - This parameter is used only when createVolume API is called using snapshotid parameter
    - When this parameter is set, the volume is created from the snapshot in the pod/cluster of the VM. Also the volume is then attached to the VM in the same request
    - If attach Volume fails but create has succeeded, the API errors out but the Volume created remains available. User may attach the same volume later
    - When Vm is provided, but if no storage pool is available in the VM's pod/cluster then the volume is not created and API fails.
2013-12-06 11:18:26 -08:00
Alex Ough
88f64b2b93 Changed 'MigrateCommand' to use the global setting value of 'execute.in.sequence.hypervisor.commands'
Signed-off-by: Koushik Das <koushik@apache.org>
2013-12-06 09:41:50 +05:30
Anthony Xu
04b48ae04e XS VMmetadata platform contains virtual platform related info, CS should save platform info in DB to migrate the VM to other Cluster 2013-12-05 01:41:14 -08:00
Nitin Mehta
b0a1528c5a CLOUDSTACK-5349:
Volume create usage event and resource count werent getting registered. Check its type rather than it is UserVm since the code is coming from VirtualMachineManager.
2013-12-04 11:01:33 -08:00
Alena Prokharchyk
bd6f706b72 CLOUDSTACK-5261: added support for Alert publishing via ROOT Admin API
Conflicts:
	engine/orchestration/src/com/cloud/agent/manager/AgentManagerImpl.java
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
	engine/storage/image/src/org/apache/cloudstack/storage/image/TemplateServiceImpl.java
	engine/storage/volume/src/org/apache/cloudstack/storage/datastore/provider/DefaultHostListener.java
	engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java
	plugins/hypervisors/hyperv/src/com/cloud/hypervisor/hyperv/discoverer/HypervServerDiscoverer.java
	plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/VmwareServerDiscoverer.java
	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/discoverer/XcpServerDiscoverer.java
	server/src/com/cloud/alert/AlertManagerImpl.java
	server/src/com/cloud/alert/ConsoleProxyAlertAdapter.java
	server/src/com/cloud/alert/SecondaryStorageVmAlertAdapter.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/ha/HighAvailabilityManagerExtImpl.java
	server/src/com/cloud/ha/HighAvailabilityManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	usage/src/com/cloud/usage/UsageAlertManagerImpl.java
	usage/src/com/cloud/usage/UsageManagerImpl.java

listAlerts: introduced new parameter "name" to the alertResponse

Conflicts:
	api/src/org/apache/cloudstack/api/command/admin/resource/ListAlertsCmd.java
	server/src/com/cloud/alert/AlertManagerImpl.java
	usage/src/com/cloud/usage/UsageAlertManagerImpl.java

Added new Admin API - generateAlert. Available to ROOT admin only

Conflicts:
	api/src/org/apache/cloudstack/alert/AlertService.java
	api/src/org/apache/cloudstack/api/BaseCmd.java
	usage/src/com/cloud/usage/UsageAlertManagerImpl.java

listAlerts: implemented search by alert name

Conflicts:
	api/src/org/apache/cloudstack/alert/AlertService.java
	api/src/org/apache/cloudstack/api/command/admin/resource/ListAlertsCmd.java
	engine/schema/src/com/cloud/alert/AlertVO.java
2013-12-04 10:05:46 -08:00
Bharat Kumar
68406ba29d CLOUDSTACK-5161 enable scaling of a vm using custom offering
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-29 17:53:33 +05:30
Alena Prokharchyk
fad0cfcc18 Added new paramerer "start" to createVPC command. When false is passed in, VPC won't be started (its VPC VR won't get implemented) till the point when the first netwotrk gets implemented in the VPC.
The parameter is optional and true by default to preserve the original behavior

Conflicts:
	api/src/org/apache/cloudstack/api/command/user/vpc/CreateVPCCmd.java
	engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java
2013-11-22 09:39:54 -08:00
Alena Prokharchyk
e8ec75a2b5 Removed unused agent lb timer 2013-11-21 14:29:40 -08:00
Alex Huang
de6bf7470c One more merge conflict 2013-11-21 08:16:48 -08:00
Alex Huang
433a631916 Reformat of source code to set a stable base for the future. I couldn't get checkstyle enabled. There's still about a thousand errors from checkstyle. Most of it from length errors from comments and strings. Will attempt to remove those tonight. This change is so large I just want to get it in before any merge nightmares. The changes are fairly minor though and I did a full compile and start a server with the reformat code. 2013-11-21 07:56:47 -08:00
Alex Huang
170f32f171 Broke up some long strings 2013-11-21 07:25:01 -08:00
Hugo Trippaers
cf715ff491 Bump 4.3.0 to 4.4.0 in master 2013-11-21 16:01:15 +01:00
Alex Huang
d620df2bdd Reformatted all of the code. 2013-11-21 06:15:26 -08:00
Alex Huang
eaa250fd3c Formatted again after all the tab expansions and eol removals 2013-11-21 04:47:01 -08:00
Alex Huang
224f479974 Removed trailing spaces 2013-11-21 04:08:01 -08:00
Alex Huang
e4b22d0fca Replace all tabs, particularly the ones in the comments 2013-11-21 03:39:58 -08:00
Kelven Yang
278ef81a83 side-by-side VM sync management at manager level 2013-11-20 17:59:38 -08:00
Alex Huang
8d62744681 Reformat all source code. Added checkstyle to check the source code 2013-11-20 07:26:53 -08:00
Alex Huang
465626f6d1 Fixed issues with execute in sequence 2013-11-19 17:20:58 -08:00
Likitha Shetty
a35425eec6 CLOUDSTACK-5122. System VMs are getting recreated with old template after upgrading to 4.2.
In VMware during VM start the existing disk information is used to configure the VMs. So even if a new disk is created using the new template VM continues to use the old disk.
Once the old root disk is marked for destroy force expunge it and sync the new disk into the VM folder before VM start
2013-11-10 23:31:56 +05:30
Laszlo Hornyak
6f3688d13d Fill the creationMonitors based on priority
If not priotity, append to the end of the list.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-11-08 21:51:04 +01:00
Bharat Kumar
7095ea2b5e CLOUDSTACK-4738 Dynamic compute offering.
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-07 12:41:20 +05:30
Mike Tutkowski
10c513a259 CLOUDSTACK-4810: Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VMware) 2013-11-06 21:02:39 -07:00
Kelven Yang
191dc80fa4 VM power state for job oritented sync processing 2013-11-05 19:00:37 -08:00
Harikrishna Patnala
a286dec098 CLOUDSTACK-4908: CPU socket count of host Adding cpu socket count of the host in hostresponse
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-05 16:12:36 +05:30
Rajesh Battala
989c6e6914 Modified cloud-early-config to configure, when the VR boots up in HyperV Environment
Implemented commands that are required for VR to bootup and Vm deployment to work
Modified hyperv agent code, to deploy VR with Boot Args, boot args passed to VR using KVP Exchange Component.
Fix for VR to boot up and get configured with boot args, Fixed issue in VolumeOrchestrator
Implemented SetFirewallRulesCommand in HyperV Resource
Implemented VR network commands to provide the necessary services from VR
Fixed hyperv localstorage path encode url issue. encode is converting space to '+'
2013-11-04 18:48:53 +05:30
Koushik Das
269a4ef11e CLOUDSTACK-4855: Throttle based on the # of outstanding requests to the directly managed HV host (direct agents)
Cloudstack sends requests to directly managed HV hosts (direct agents) using the direct agent thread pool. The size of the pool is determined by global config direct.agent.pool.size defaulted to 500.

Currently there is no restriction on the number of threads a direct agent can use from this shared thread pool to send requests to the host. This is fine as long as the host is responding to requests
in a reasonable amount of time. But if there is a considerable delay in getting response, the thread remain blocked for that much time. As more commands are send to the slow host threads keep getting
blocked. This can eventually lead to a situation where requests to healthy hosts cannot be processed as there are not enough free threads.

The problem being addressed here is to localize the impact of few bad hosts, so that entire management server is not affected.

One such way is to throttle based on the # of outstanding requests on per host basis. The outstanding requests to a host will be a % of direct agent pool size. This is configurable based on
direct.agent.thread.cap. The default value is 0.1 or 10%, a value of 1 would mean the old behavior where there is no upper cap. This will ensure that the impacted host will be bound by a upper cap on the number of threads it can use to process requests and not the entire pool.
2013-11-04 14:52:26 +05:30
Alena Prokharchyk
9c773fbd68 DestroyNetwork: fixed regression bug - the call always returns false after finishing the transaction. Return true instead. 2013-10-31 15:25:57 -07:00
Alena Prokharchyk
591dcd1d1c ResourceDetails: added "display" field to a bunch of VOs - determines whether the detail should be returned to the regular user 2013-10-29 09:18:11 -07:00
Mike Tutkowski
858ce76665 Extend support of CloudStack-managed storage to KVM 2013-10-27 22:30:03 -06:00
Alena Prokharchyk
0fb4d9d5a2 Made all resource details DAOs (nic_details, user_vm_details, template_details, volume_details, service_offering_details) extend from the same base class as although details are being stored in diff tables, those tables have the same structure and same accessors. 2013-10-25 10:56:19 -07:00
Darren Shepherd
81d01369d7 Merge commit 'df728fcf41ba0dfddabfaadea8cbcb77d18bfa96'
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-10-23 12:31:53 -07:00
Chris Suich
0ed7ebd7e7 Squashed & merged commit of the following:
commit c9ee0d12e191e803fb341f3f96e95ca434a36f6c
Author: Wei Zhou <w.zhou@leaseweb.com>
Date:   Wed Oct 23 16:55:10 2013 +0200

    CLOUDSTACK-4931, CLOUDSTACK-4937: setDetails to user VMs only
    (cherry picked from commit a94acc5a43aeaf5f18f1912e2653a92f6041a6e5)

commit fe1586c71377bc6d219db2dcf088c40b65dd1fc4
Author: Anthony Xu <anthony.xu@citrix.com>
Date:   Tue Oct 22 11:20:27 2013 -0700

    CLOUDSTACK-4649:
            vm sync tracks the pv driver version for xenserver

     Anthony

commit 56a218f66eda540b4b4b04030ee71fc6863f8532
Author: Anthony Xu <anthony.xu@citrix.com>
Date:   Mon Oct 21 16:10:07 2013 -0700

    CLOUDSTACK-4649:
        xs 6.1/6.2 introduce the new virtual platform, so there are two virtual platforms, windows PV driver version must match virtual platforms,
    this patch tracks PV driver versions in vm details and template details.

    Anthony

commit 4e85d28c678a6f96b5b70d8d33fc60f9d1ea3df6
Author: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Date:   Mon Oct 21 21:17:33 2013 +0200

    removed unused static field

    - s_httpClientManager was not used

    Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>

commit d4121fa26023db236f7396cea455ef090672ae9a
Author: Chris Suich <chris.suich@netapp.com>
Date:   Tue Oct 22 10:45:22 2013 -0400

    Updated DataMotionServiceImpl and ApiResponseHelper based on review feedback.

commit aaf026e1e4204d405bcda2ae4f1a01b1d0f7e7cb
Author: Chris Suich <chris.suich@netapp.com>
Date:   Thu Oct 17 14:27:12 2013 -0400

    Added context to strategy sorting error responses
    Added TODOs for DRYing out pickStrategy() overloading

commit a221f4aa3fb2ddc255bc35cf753f98f88f5bf44e
Author: Chris Suich <chris.suich@netapp.com>
Date:   Wed Oct 16 09:57:28 2013 -0400

    Updated inefficient strategy sorting/selection
    Removed unnecessary canRevertSnapshot from PrimaryDataStoreDriver
    Other general cleaup and fixes from reviews

commit 7d58949c6a1b7e853e891b59387a9620e8cd7a91
Author: Chris Suich <chris.suich@netapp.com>
Date:   Mon Oct 14 14:01:22 2013 -0400

    Added volume snapshot revert capability to SnapshotResponse
    Updated UI to hide/show snapshot revert action per snapshot

Signed-off-by: Edison Su <sudison@gmail.com>
2013-10-23 12:21:43 -07:00
Darren Shepherd
e3280bdba2 Merge remote-tracking branch 'origin/spring-modularization'
Conflicts:
	client/tomcatconf/applicationContext.xml.in
	client/tomcatconf/nonossComponentContext.xml.in
	client/tomcatconf/simulatorComponentContext.xml.in
	framework/db/src/com/cloud/utils/db/Transaction.java
	plugins/hypervisors/simulator/src/com/cloud/agent/manager/MockAgentManagerImpl.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
2013-10-23 11:14:42 -07:00
Darren Shepherd
205a77a5bb Merge remote-tracking branch 'origin/txn-refactor'
Conflicts:
	engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
2013-10-23 10:40:44 -07:00
Darren Shepherd
edeaf98117 Cleaner and more type safe Transaction API for checked exceptions 2013-10-23 10:02:43 -07:00
Wei Zhou
69b131fa15 CLOUDSTACK-4931, CLOUDSTACK-4937: setDetails to user VMs only
(cherry picked from commit a94acc5a43aeaf5f18f1912e2653a92f6041a6e5)
2013-10-23 17:04:02 +02:00
Anthony Xu
6640f4d928 CLOUDSTACK-4649:
vm sync tracks the pv driver version for xenserver

 Anthony
2013-10-22 17:55:35 -07:00
Anthony Xu
e33ae74067 CLOUDSTACK-4649:
xs 6.1/6.2 introduce the new virtual platform, so there are two virtual platforms, windows PV driver version must match virtual platforms,
this patch tracks PV driver versions in vm details and template details.

Anthony
2013-10-22 17:54:51 -07:00
dhoogland
c0c46268ac CLOUDSTACK-4328 httpclose/mode as keepAliveEnabled 2013-10-22 12:44:23 +02:00
Darren Shepherd
711ad386d1 Random cleanup 2013-10-16 16:18:49 -07:00
Darren Shepherd
f62e28c1ec New Transaction API
Introduction of a new Transaction API that is more consistent with the style
of Spring's transaction managment.  The existing Transaction class was renamed
to TransactionLegacy.  All of the non-DAO code in the management server has been
updated to use the new Transaction API.
2013-10-16 09:21:00 -07:00
Min Chen
f451a8113e CLOUDSTACK-4859:Add global config to disable storage migration during HA 2013-10-14 22:12:56 -07:00
Marcus Sorensen
4e0e7410e9 Store agent hostname in attache, print it in logs wherever possible. This
was discussed on the mailing list as a useful debugging tool, currently
the log prints the DB id of the agent, which makes admins have to look
it up to know where the Command was run.
2013-10-14 11:46:01 -06:00
Alena Prokharchyk
66185076df Addded back Agent Load Balancing functionality (was temporarely disabled in master by vmSync merge) 2013-10-07 09:46:52 -07:00
Laszlo Hornyak
bd8536739c remove txn attribute from DB
txn attribute was never actually used

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-04 10:15:39 -07:00
Darren Shepherd
67186429e1 Spring Modularization
ACS is now comprised of a hierarchy of spring application contexts.
Each plugin can contribute configuration files to add to an existing
module or create it's own module.

Additionally, for the mgmt server, ACS custom AOP is no longer used
and instead we use Spring AOP to manage interceptors.
2013-10-02 15:41:04 -07:00