Commit Graph

947 Commits

Author SHA1 Message Date
Prachi Damle 13d2caa6b5 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 13:18:40 -08:00
Prachi Damle 3a6adb3c58 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 13:18:37 -08:00
Nitin Mehta 1cdc064c43 CLOUDSTACK-4880:
check for host cpu capability while dynamic scaling a vm on the same host
2013-12-05 14:14:31 -08:00
Anthony Xu 0847ccfe97 XS VMmetadata platform contains virtual platform related info, CS should save platform info in DB to migrate the VM to other Cluster
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	server/src/com/cloud/template/TemplateManagerImpl.java
2013-12-05 01:17:56 -08:00
Nitin Mehta ee82870aa2 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 10:53:42 -08:00
Alena Prokharchyk b315ca1895 CLOUDSTACK-5261: support for alert publishing via Root admin web api
listAlerts: introduced new parameter "name" to the alertResponse

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

listAlerts: implemented search by alert name
2013-12-03 17:08:23 -08:00
edison su 77227960cf Fix snapshot details dao 2013-12-03 13:05:03 -08:00
Bharat Kumar 089c7bc9f8 CLOUDSTACK-5161 use a map to specify the custom parameters instead of having one parameter each 2013-12-03 16:53:58 +05:30
Bharat Kumar 72e0354661 CLOUDSTACK-5161 enable scaling and upgrading of a vm using custom offering
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-29 18:32:16 +05:30
Wei Zhou 5598ba0fc7 allow delete snapshot with ERROR state
(cherry picked from commit 81c07f1791)

Conflicts:

	engine/storage/snapshot/src/org/apache/cloudstack/storage/snapshot/XenserverSnapshotStrategy.java
2013-11-29 10:55:33 +01:00
Alena Prokharchyk 4edc3989bb Resource metadata support for NetworkACLItem 2013-11-27 14:37:28 -08:00
Alena Prokharchyk c9b0a8b1f4 Resource metadata support for NetworkACLList 2013-11-26 17:22:32 -08:00
Alena Prokharchyk 1fe8efc85f Resource metadata support for VPC Private Gateway 2013-11-26 12:48:41 -08:00
Harikrishna Patnala 8970c95154 CLOUDSTACK-4737: handling usage events for dynamic compute offering
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-26 18:00:27 +05:30
Bharat Kumar 6af8021ef7 CLOUDSTACK-5162 Usage details are not getting populated when using dynamic offerings.
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-26 17:45:13 +05:30
Alena Prokharchyk abb95c1016 Resource metadata - fixed the bug in removeResourceDetail API - when "key" parameter was passed in, used to remove the details matching the key, for all the resources, not just the one defined by resource_id 2013-11-25 15:30:55 -08:00
Hugo Trippaers 4de858c7a9 Expose getPrimaryDataStore(String uuid) through the DatastoreManager interface so it can be used clients. 2013-11-22 16:22:38 -08:00
Edison Su 70fed9f387 Add a new method on datastoredriver: getCapabilities, which will be called by liststoragepoolcmd. UI can make decision based on the capabilities of the storage.
And also add a new table: snapshotdetails

Conflicts:
	plugins/storage/volume/default/src/org/apache/cloudstack/storage/datastore/driver/CloudStackPrimaryDataStoreDriverImpl.java
2013-11-22 16:20:41 -08:00
Alena Prokharchyk 43119bcbdd 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
2013-11-22 09:40:12 -08:00
Alena Prokharchyk 592863f1ef Removed unused agent lb timer
Conflicts:
	engine/orchestration/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java
2013-11-21 14:34:42 -08:00
Alena Prokharchyk cb14dad75b Resource metadata - support for VPC
Conflicts:
	api/src/com/cloud/server/ResourceTag.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-11-21 12:59:49 -08:00
Kelven Yang 5a44de282b CLOUDSTACK-669: side-by-side VM sync management at manager level 2013-11-20 18:22:38 -08:00
Edison Su 43c3b8dcbd CS-18582: if EIP is used, extract volume and template returns wrong public ip address. If remote agent is ssvm agent, then looking up public ip address from ssvm table 2013-11-20 16:31:33 -08:00
Syed Ahmed 041089afe2 Adding protocol parameter to loadbalancer response 2013-11-20 11:22:37 +05:30
Kishan Kavala 8457538161 Fix listRouter by clusterId and upgradeRouterTemplate by clusterId 2013-11-18 13:15:42 +05:30
Alena Prokharchyk 0837697f9b Resource Metadata: added implementation for Remote Access VPN 2013-11-13 14:27:06 -08:00
Mike Tutkowski bb8794203e CLOUDSTACK-4810: Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VMware) 2013-11-12 16:52:12 -07:00
Min Chen a888a6950a Delay in displaying VM migrate dialog due to get vm snapshot size for a
storage pool.
2013-11-11 14:29:24 -08:00
Harikrishna Patnala 6a8ec786ad Template/ISO download fails cause the object to disappear from UI in 4.2
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-11 11:06:57 +05:30
Dave Brosius 3fd95fe231 set the state field, not unused local
Signed-off-by: Dave Brosius <dbrosius@mebigfatguy.com>
2013-11-09 14:00:19 +01:00
Laszlo Hornyak b33a8371bc license headers added
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-11-09 09:06:01 +01:00
Edison Su 4815b024bf Add quiesce vm for vmware during vm snapshot 2013-11-08 15:47:11 -08:00
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
Alena Prokharchyk 8bd1eaa210 ResourceMetaData: added support for userIpAddress (publicIp) metadata 2013-11-08 10:48:43 -08:00
Rajesh Battala 19e9849d86 Enabled the traffic lable support the hyperv hypervisor type. Modified the physical_network_traffic_types table to introduce hyperv_network lable column.
Modified associated VO's and impls classes. Modified the List/Update/Add TrafficType command api's and response classes.
Fixed the Unit tests
2013-11-08 20:21:18 +05:30
Syed 0076307863 Squashed merge of Ssl Termination feature
Bug: https://issues.apache.org/jira/browse/CLOUDSTACK-4821
FS: https://cwiki.apache.org/confluence/display/CLOUDSTACK/SSL+Termination+Support

This patch implements the SSL offload feature for loadbalancers
and includes the implementaion for this to work with Netscaler.

The following are the new API's that this patch adds

uploadSslCert
deleteSslCert
listSslCert
assignCertToLoadBalancer
removeCertFromLoadBalancer

Unit tests are also included in the patch.
2013-11-08 16:49:16 +05:30
Edison Su c233492bfc Add quiencevm option on createsnapshotcmd 2013-11-07 14:57:05 -08:00
Chris Suich aef633f203 Updated VMSnapshotDetails* to match *Details* pattern (e.g. UserVMDetails*)
Signed-off-by: Edison Su <sudison@gmail.com>
2013-11-07 14:28:19 -08:00
Alena Prokharchyk 99acb97854 CLOUDSTACK-5089: fixed VPCDao to set the accountId field correctly 2013-11-07 13:38:13 -08:00
Laszlo Hornyak 465dee0159 Removing coded documentation
This is the output of the program, the developer documentation may be a better place

-----

When developing against the CloudStack Orchestration Platform, you must following the following rules:
API Rule: Always be prepared to handle RuntimeExceptions.

When writing APIs, you must follow these rules:
API Rule: You may think you're the greatest developer in the world but every change to the API must be reviewed and approved.
API Rule: Every API must have unit tests written against it.  And not it's unit tests
API Rule:

-----

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-11-07 21:18:52 +01:00
Laszlo Hornyak 336eb48f9b fixed Rules
it was no longer working, it must be fixed for those who want to read it.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-11-07 21:18:52 +01:00
Hugo Trippaers f6f4a93145 Fix CID 1116743 Resource leak 2013-11-07 16:23:20 +01:00
Kishan Kavala 3f5b8f7063 CLOUDSTACK-4793 : Added UpgradeRouterTemplate API. Added filters to listRouters API. listRouters response includes verion and required upgrade flag. Min VR version is checked before sending commands to router 2013-11-07 19:49:05 +05:30
Hugo Trippaers b736cbd27a Fix CID 1127024 Various resource leaks 2013-11-07 14:57:40 +01:00
Jayapal 416206595e CLOUDSTACK-4736 Fixed issue in default service selection 2013-11-07 17:11:03 +05:30
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
Nitin Mehta 7a042e2330 CLOUDSTACK-5038:
used cpu is getting bumped up when the over provisioning factor > 1. This was because we didnt record the overprovisioning factors of the vms which got deployed pre 4.2
Upgrade path will fix that by populating the cpu/mem overprovisioning factors for each of the vms in user_vm_details table using the global overprovisioning factor.
Reviewed by : bharat kumar <bharat.kumar@citrix.com>
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-11-05 16:35:52 -08:00
Jayapal b464a20a52 CLOUDSTACK-4736: Monitoring services in VR 2013-11-05 23:39:33 +05:30
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
Likitha Shetty 2f45940493 CLOUDSTACK-5028. Vmware instance fails to start when the chain_info of any volume that belongs to the VM is longer than 255 characters.
If the VM has snapshots then the chain_info of a volume can be longer than 255 characters.
Increasing the column length of chain_info in VolumeVO to match the maximum length of type text(db schema type)
2013-11-05 13:24:37 +05:30
Prachi Damle 4be7947281 CLOUDSTACK-4948: DeploymentPlanner: Logic to check if cluster can be avoided, needs to consider if VM is using local storage and/or shared storage
Changes:
- Consider if VM requires the local storage or shared storage or both for its disks.
- Accordingly all pools in the cluster should consider local or shared or both pools

Conflicts:

	server/src/com/cloud/agent/manager/allocator/HostAllocator.java
2013-11-04 16:45:02 -08:00
Min Chen eb9cfffd24 Fix NPE due to race condition during system vm launch. 2013-11-04 14:27:04 -08:00
Min Chen 9a62239a92 CLOUDSTACK-5017: Throw CloudRuntimeException in case of template/volume
download when ssvm is not ready so that caller can remove some leftover
entries in template_store_ref and volume_store_ref.
2013-11-04 12:32:05 -08:00
Hugo Trippaers 54a3d8048b Get rid of a few errors and warnings in the engine storage integration-test sources 2013-11-04 20:01:13 +01:00
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 2ff791b0b8 CLOUDSTACK-5025: volumes.display_volume field should be set to 1 by default. DB used to handle this, but VO was missing the default field assignment. Fixed th
e VO and db upgrade to update all existing volumes with 1 value
2013-11-01 22:48:11 -07:00
Darren Shepherd c1bae7984a Revert "Commit 1460196496 changed db.properties"
This reverts commit a3cec3802c.
2013-11-01 22:25:53 -07:00
Min Chen 24af28290e CLOUDSTACK-5017: use LocalHostEndPoint in copying from S3 to cache store
during ssvm launch.
2013-11-01 18:07:00 -07:00
Min Chen 6eecb0b3b5 CLOUDSTACK-5017: If SSVM is unavailable DownloadCommands will be routed
to mgmt server.
2013-11-01 18:07:00 -07:00
Edison Su 918bc74050 fix compile 2013-11-01 16:16:03 -07:00
Edison Su 143fbc37a6 fix build 2013-11-01 16:02:24 -07:00
Edison Su 7c99b88926 Don't use cast to PrimarydataStoreTO on the resource code 2013-11-01 15:13:16 -07:00
Edison Su c5bec6b336 add quiescevm in createvmsnapshotcmd 2013-10-31 16:45:05 -07:00
Edison Su b704d5b8d3 add quiesceVm vm helper function 2013-10-31 16:24:48 -07:00
Alena Prokharchyk 78b1ac4126 CLOUDSTACK-3868: fixed "count" param in listUsageRecords API to return the actual number of records matching the search criteria. Used to return the wrong value - the number of records per page
Conflicts:
	server/src/com/cloud/usage/UsageServiceImpl.java
	utils/src/com/cloud/utils/db/GenericDaoBase.java
2013-10-31 15:25:57 -07:00
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
Darren Shepherd afaf6370dd Fix change that broke db.properties.override 2013-10-31 09:21:34 -07:00
Hugo Trippaers a3cec3802c Commit 1460196496 changed db.properties
loading, this also affects the database creator. This make the database
creator use the new loading completely instead of partially.
2013-10-31 15:08:25 +01:00
Sheng Yang 3205cd42b5 CLOUDSTACK-730: Site-to-site VPN between VPC VR to VR
Now VPN connection can be created as "passive", which would enable the ability
of remote peer initiate the connection. So it's possible for VPC VR to
establish the connection to another VPC VR of CloudStack.

Test case also included.

The test case would create 2 vpcs and using VPN to connect them.
2013-10-30 19:30:22 -07:00
Darren Shepherd 1460196496 Centralize loading of db.properties to one place
There is now a method DbProperites.getDbProperties() that will load the
db.properties in one place and do the proper decryption of values if needed
2013-10-30 17:03:13 -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
Min Chen 6be228a438 CLOUDSTACK-4024:Provide a way to upgrade from existing NFS secondary
storage to S3.
2013-10-28 21:01:31 -07:00
Alena Prokharchyk 2cac1aaa0f Moved ResourceDao and ResourceDaoBase to cloud-engine-schema/org/apache/cloudstack (used to be mistakenly placed under com/cloud/cloud) 2013-10-28 15:03:57 -07:00
Alena Prokharchyk 5caeab782d ResourceDetails -
1) added createDetail to ResourceDetailDao interface to provide generic way of creating resourceDetail DB objects
2) added resource details support for firewall rules
2013-10-28 14:45:52 -07:00
Alena Prokharchyk e86b612750 ResourceDetails - added createDetail to ResourceDetailDao interface to provide generic way of creating resourceDetail DB objects 2013-10-28 12:53:53 -07:00
Alena Prokharchyk d0090a0c24 Resource details (metadata) - added support for Storage pool details 2013-10-28 12:53:53 -07:00
Edison Su 92f97248a8 fix inject hypervisorHelperImpl 2013-10-28 12:09:14 -07:00
Mike Tutkowski 858ce76665 Extend support of CloudStack-managed storage to KVM 2013-10-27 22:30:03 -06:00
Laszlo Hornyak 7902315287 build fix
Failing VMSnapshotStrategyTest was missing db.properties

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-26 17:34:00 +02:00
Edison Su 70b2c0150d rebase to spring changes 2013-10-25 18:15:36 -07:00
Edison Su 51a8086cf6 Merge branch 'pluggable_vm_snapshot'
Conflicts:
	client/tomcatconf/applicationContext.xml.in
	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/SnapshotTest.java
	engine/storage/integration-test/test/resources/storageContext.xml
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
	server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java
2013-10-25 16:47:17 -07:00
Edison Su a6ce66e55a move a lot of code into vmsnapshot strategy
fix compile

fix compile

add vm_snapshot_details table in db

add vmsnapshot test cases
2013-10-25 15:09:04 -07:00
Alena Prokharchyk 300f626d42 Renamed ResourceDetailDaoImpl to ResourceDetailDaoBase 2013-10-25 14:21:20 -07: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
Bharat Kumar e4a1ff818f CLOUDSTACK-4947 VM creation fails if the global config apply.allocation.algorithm.to.pods is set to true." 2013-10-25 15:07:00 +05:30
Sheng Yang 1528725949 CLOUDSTACK-754: Enable Remote Access VPN for VPC
With integration smoke test case.
2013-10-24 17:34:41 -07:00
Alena Prokharchyk 24725f8e21 ResourceDetails:
1) Added support for Zone resource details
2) Renamed DcDetailsDao to DataCenterDetailsDao to follow the CS name convention for DataCenter related classes
2013-10-24 15:54:49 -07:00
Alena Prokharchyk 765832a5cf CLOUDSTACK-4649: added support to removeResourceDetail to remove details for UserVm/Templates
Conflicts:
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDaoImpl.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-10-24 10:34:21 -07:00
Alena Prokharchyk 2bb716efd8 ResourceMetaData (Resource details) fixes:
* changed name for TaggedResourceType enum to ResourceObjectType as this enum is used both by ResourceMetaData and ResourceTags code
* enhanced the enum with extra fields resourceTagsSupport (boolean) and metadataSupport identifying if the resource supports tags and/or metadata.
* cleanup unused @Inject objects from the ResourceMetaDataManager
2013-10-23 17:39:16 -07:00
Darren Shepherd f3e968b983 Update StorageStrategyFactory to not sort, but just iterate and find the first 2013-10-23 16:36:31 -07:00
Darren Shepherd 891b85d516 Add missing licenses 2013-10-23 15:20:08 -07:00
Darren Shepherd b134692697 Fix compilation errors in engine/storage/integration-test 2013-10-23 14:44:16 -07:00
Darren Shepherd c9101966e0 Added StorageStrategyFactory to centralize and deduplicate some logic 2013-10-23 12:40:41 -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 a94acc5a43)

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
Laszlo Hornyak b4e972da03 Integer instantation removed
Two Integer object was created for each comparison, just in order to compare the two values.
This is replaced with Integer.compare()

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-23 20:50:00 +02:00
Darren Shepherd df728fcf41 Include new DAO added since spring-modularization branch 2013-10-23 11:23:52 -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 a94acc5a43)
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
Alena Prokharchyk d79135f4e6 CLOUDSTACK-4649: allow to update template details with addResourceDetails API
Conflicts:
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-10-22 14:01:54 -07:00
Alena Prokharchyk 3ec14c4baf CLOUDSTACK-4649: addResourceDetail - added support for userVm resource. Now "hypervisortoolsversion" get stored in user_vm_details table, and being returned as a part of listVirtualMachines call ("details" parameter)
Conflicts:
	api/src/org/apache/cloudstack/api/response/UserVmResponse.java
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDao.java
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDaoImpl.java
	server/src/com/cloud/api/query/vo/UserVmJoinVO.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
2013-10-22 13:50:43 -07:00
dhoogland c0c46268ac CLOUDSTACK-4328 httpclose/mode as keepAliveEnabled 2013-10-22 12:44:23 +02:00
Nitin Mehta 17dd9a832b CLOUDSTACK-3737:
Delete the uploaded volume once its copied successfully to the primary storage.
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-21 14:54:42 -07:00
Wei Zhou db890bc71e fix a bug in findAllChildren of domains 2013-10-21 14:02:53 +02:00
Koushik Das 0c1800f70f CLOUDSTACK-4681: data disk with local disk offering are geting created on shared storage
The cluster and zone wide storage pool allocators returned shared pools even for volumes meant to be on local storage pool.
If the VM uses local disk then cluster and zone storage allocators should not handle it and return null or empty list.

Also fixed the deployment planner to avoid a cluster if
a. avoid set returned by storage pool allocators is empty OR
b. all local or shared pools in a cluster are in avoid state

Conflicts:
	engine/storage/src/org/apache/cloudstack/storage/allocator/ClusterScopeStoragePoolAllocator.java
	engine/storage/src/org/apache/cloudstack/storage/allocator/ZoneWideStoragePoolAllocator.java
2013-10-18 17:10:17 +05:30
Min Chen ec3302afd6 CLOUDSTACK-3472: [Object_Store_Refactor] System VMs are not coming up in
initial attempt, but they are coming up after multiple attempts.
2013-10-17 15:59:10 -07:00
Darren Shepherd 711ad386d1 Random cleanup 2013-10-16 16:18:49 -07:00
Nitin Mehta fc6c1ec812 CLOUDSTACK-4882:
list Clusters/pods/zones API not accounting for reserved in the used capacity percentage.
Fix listCapacity cmd for reserved as well
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-16 15:02:18 -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
Kishan Kavala 81f1a0b831 CLOUDSTACK-4095 : Remove region_id from Transaction. Read from db.properties whenever required
Conflicts:
	framework/db/src/com/cloud/utils/db/GenericDaoBase.java
2013-10-16 19:28:42 +05:30
Prasanna Santhanam 76dbb64cf9 License header was missed in StrategyPriority and Test
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-10-15 10:59:28 +05:30
Min Chen f451a8113e CLOUDSTACK-4859:Add global config to disable storage migration during HA 2013-10-14 22:12:56 -07:00
Min Chen ac02987db2 Add upgrade path from 4.2.1 to 4.3.0. 2013-10-14 21:56:34 -07:00
Chris Suich aad1cda7e0 Added categorized sorting to SnapshotStrategy and DataMotionStrategy 2013-10-14 15:20:42 -07:00
Chris Suich 350c94474b Updates to revertSnapshot API Added revertSnapshot API action to UI 2013-10-14 15:19:51 -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
Nitin Mehta fa0c685bcb CLOUDSTACK-4854:
Add support for adding network details
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-10 19:18:39 -07:00
Alena Prokharchyk c4084a7c34 Fixes for resource details code: 1) Fixed the NPE happening when the resource detail couldn't be located by the key passed through API 2) Added ResourceDetails interface, made all resource details VO objects to implement it. 2013-10-10 11:13:47 -07:00
Harikrishna Patnala bb7493775c CLOUDSTACK-4707: "sourcetemplateid" field is not getting set for derived templates Template created from a volume or snapshot did not have the sourcetemplateid field set in vm_template table. 2013-10-10 12:20:40 +05:30
Nitin Mehta 6e80bb001c CLOUDSTACK-4824:
Add support for adding zone details
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-07 15:48:43 -07:00
Darren Shepherd d769a73cfc Fix DatabaseUpgradeChecker in standalone context
When running DatabaseUpgradeChecker as a standalone program _dao will not
be injected.  Still create an instance of VersionDaoImpl in constructor
and when DatabaseUpgradeChecker is ran in the mgmt server it will be
overwritten by the injected value.
2013-10-07 11:57:55 -07: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
Darren Shepherd 7c72aa96da ConcurrentHashMap will through NPE on null key 2013-10-04 16:56:48 -07:00
Edison Su a129fe4e66 add missing files 2013-10-04 14:17:49 -07:00
Chris Suich 180cfa19e8 Refactor Storage Related Resource Code
These changes are a joint effort between Edison and I to refactor some
of the code around snapshotting VM volumes and creating
templates/volumes from VM volume snapshots. In general, we were working
towards allowing PrimaryDataStoreDrivers to create snapshots on primary
storage and not requiring the snapshots to be transferred to secondary
storage.

High level changes:
-Added uuid to NfsTO, SwiftTO & S3TO to cut down on the requirement of
PrimaryDataStoreTO and ImageStoreTO which don't really serve much of a
purpose
-Initial work towards enable reverting VM volume from snapshots
-Added hypervisor commands for introducing and forgetting new hypervisor
objects (snapshots, templates & volumes)

Signed-off-by: Edison Su <sudison@gmail.com>
2013-10-04 13:06:42 -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 c9a9a3b7b3 Make SnapshotStrategy and DataMotionStrategy discovered and registered 2013-10-03 17:03:28 -07:00
Hugo Trippaers 3f583684c6 Temporary fix for the chicken and egg problem when making changes to the configuration database. 2013-10-03 12:36:34 +02: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
Nitin Mehta 8466fad6ca CLOUDSTACK-4785:
Adding list details for UserVm.
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-02 14:53:07 -07:00
Nitin Mehta 85b5c6e353 CLOUDSTACK-4785:
Add support for adding user vm details and removing them.
Signed off by : nitin mehta<nitin.mehta@citrix.com>
2013-10-02 14:16:45 -07:00
Darren Shepherd aed5e9dc2a Add Manage Context framework
The managed context framework provides a simple way to add logic
to ACS at the various entry points of the system.  As threads are
launched and ran listeners can be registered for onEntry or onLeave
of the managed context.  This framework will be used specifically
to handle DB transaction checking and setting up the CallContext.
This framework is need to transition away from ACS custom AOP to
Spring AOP.
2013-10-02 13:09:52 -07:00
Alena Prokharchyk a2bf7f035e CLOUDSTACK-4784: 22x to 4.x upgrade - don't ignore redundant router network offering, when update ntwk_offering_serivce_map with PF/StaticNat/SourceNat services 2013-10-02 11:09:44 -07:00
Darren Shepherd efbfae723e Switch to setter injection for extensibility
Various classes are using member injection to inject extensible objects.
Really those object should come from an AdapterList that is injected in.
This patch switches the code to use setter injection that will later allow
spring to inject an AdapterList or something similar to allow
extensibility.
2013-09-30 09:45:07 -07:00
Alena Prokharchyk 43770e0cb2 CLOUDSTACK-4744: enhanced root admin API updateVolume with state/storageId parameters as a part of "Better control over first party objects" feature.
Also fixed existing bugs for the API:

* corrected action event to be VOLUME.UPDATE (was VOLUME.ATTACH)
* all parameters to update, should be optional - fixed that. If nothing is specified, the db object will remain with its original fields
2013-09-28 21:44:47 -07:00
Alex Huang b60eef3e82 Added comments and finished off the work 2013-09-28 07:53:28 -07:00
Alex Huang e8cac2c5d8 Changed SearchCriteria2 to GenericQueryBuilder to reflect the same placement 2013-09-28 07:53:26 -07:00
Alex Huang e2988902c9 Changed SearchCriteria2 to GenericQueryBuilder to reflect the same placement 2013-09-28 07:53:25 -07:00
Alex Huang a964cf549e Continue to merge SearchCriteria2 and GenericSearchBuilder 2013-09-28 07:53:24 -07:00
Alex Huang af8832f6bd Unified both the SearchBuilder and SearchCriteriaService 2013-09-28 07:53:24 -07:00
Edison Su 350e8938cf CLOUDSTACK-4754: it's a race condition: delete template, and deploy vm from the template happened at the same time, 2013-09-27 16:10:57 -07:00
ynojima a45ee749ac CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor
Initial patch for VXLAN support.
Fully functional, hopefully, for GuestNetwork - AdvancedZone.

Patch Note:
 in cloudstack-server
- Add isolation method VXLAN
- Add VxlanGuestNetworkGuru as plugin for VXLAN isolation
- Modify NetworkServiceImpl to handle extended vNet range for VXLAN isolation
- Add VXLAN isolation option in zoneWizard UI

 in cloudstack-agent (kvm)
- Add modifyvxlan.sh script that handle bridge/vxlan interface manipulation script
-- Usage is exactly same to modifyvlan.sh
- BridgeVifDriver will call modifyvxlan.sh instead of modifyvlan.sh when VXLAN is used for isolation

Database changes:
- No change in database structure.
- VXLAN isolation uses same tables that VLAN uses to store vNet allocation status.

Known Issue and/or TODO:
- Some resource still says 'VLAN' in log even if VXLAN is used
- in UI, "Network - GuestNetworks" dosen't display VNI
-- VLAN ID field displays "N/A"
- Documentation!

Signed-off-by : Toshiaki Hatano <haeena@haeena.net>
2013-09-26 23:37:18 +09:00
Edison Su 81ff4795df fix compile errors 2013-09-25 17:59:54 -07:00