Commit Graph

214 Commits

Author SHA1 Message Date
Koushik Das 9ec2a6c29c CLOUDSTACK-8623: CPVM fails to start after MS is restarted during its initial start-up process
If SSVM cannot be started then the existing entry is removed and a new SSVM gets created. Made similar changes for CPVM as well.
Also cleaned up some log messages in SSVM and CPVM manager code.
2015-07-14 10:55:19 +05:30
Daan Hoogland bb2c02d144 coverity 1116693: properties template file creation unlikely but if repetitive, serious.
Signed-off-by: Daan Hoogland <daan@onecht.net>
2015-07-09 21:30:24 +02:00
Koushik Das d423df66cc CLOUDSTACK-8301: Enable configuring local storage use for system VMs at zone level
Code cleanup, added helper method to get default system offering based on "system.vm.use.local.storage".
2015-05-19 21:32:14 +05:30
Koushik Das 3f7e31ed05 CLOUDSTACK-8301: Enable configuring local storage use for system VMs at zone level
Made system.vm.use.local.storage a zone level configuration.
2015-05-19 21:32:14 +05:30
Rohit Yadav df3dea58a2 CLOUDSTACK-6139: Fix regression, allow zone level systemvm localstorage config
From b3f18e7d74, the zone level systemvm local
storage setting never worked as it needed to be moved to config depot.

(cherry picked from commit 279efb0432)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

Conflicts:
	plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2015-05-01 15:27:40 +02:00
Rajani Karuturi d39b993512 Fixed a few findbugs issues after the merge 0b83559
HttpUploadServerHandler.java:142, DM_BOXED_PRIMITIVE_FOR_PARSING
NfsSecondaryStorageResource.java:2630, DM_BOXED_PRIMITIVE_FOR_PARSING
NfsSecondaryStorageResource.java:2775, DM_DEFAULT_ENCODING
EncryptionUtil.java:59, DM_DEFAULT_ENCODING
2015-04-30 13:56:44 +05:30
Rajani Karuturi 0b8355920e Merge branch 'volume-upload' into master
This closes #206
2015-04-29 11:12:53 +05:30
Rajani Karuturi 75ae90b073 volume-upload: added account level secondary storage resource limit checks 2015-04-24 15:48:44 +05:30
Rajani Karuturi 0525e4763b volume-upload: refactored some error messages 2015-04-24 15:45:29 +05:30
Rajani Karuturi a7e511c1a3 Added file exists check for onetime post url
also, fixed an issue where in the upload was going to error state in
case of parallel call to the same post url
2015-04-17 18:08:23 +05:30
Rajani Karuturi ce823a3a26 Returning template/volume download percent in UploadStatusAnswer
Also updating the store ref entries on receiving the answer.
2015-04-09 15:38:58 +05:30
Rajani Karuturi 878b43bc64 volume-upload: removed hardcoded vhd for Image format check. 2015-03-30 17:56:59 +05:30
Rajani Karuturi 018023c1ef volume upload: added validation for file formats
merged TemplateUtils and ImageStoreUtil to a singe ImageStoreUtil
also added a unittest for ImageStoreUtil
2015-03-20 16:25:13 +05:30
Rajani Karuturi d5dffb5dc9 volume upload: added md5 checksum validation
also fixed the issue wherein the successful uploads where also moving to
error state as the channelinactive is called after the end of successful
upload as well.
added a fileuploaded boolean to check when the channel is inactive.
2015-03-18 12:20:51 +05:30
Rajani Karuturi 6b8b4b92e6 handling tcp close event in netty server
while the file is in uploading state and connection is reset by peer,
volume upload request posted again shows the upload is IN_Progress
state. marking them as errored
2015-03-17 15:21:25 +05:30
Rajani Karuturi 3de5d9db5f volume upload: Restart of MS leads to loss of browser uploaded templates
on restart of management server, template sync runs. It checks for
templates in ssvm using the uniquename. If it doesnt find any, cleans
the directory. In case of uploaded templates, these are getting saved
using name instead on uniquename and hence template sync cant find them
and does cleanup. Using uniquename in template.properties now.
2015-03-16 12:45:24 +05:30
Rajani Karuturi b16520bcec volume upload: added max size check for temaplte/volume post upload
used the existing configuration variables max.template.iso.size and
storage.max.volume.upload.size for templates and volumes respectively.
2015-03-03 17:27:40 +05:30
Rajani Karuturi 58f2fb1bb1 volume upload: post response http error code is 200 even for error case
Returned appropriate error code(bad request, internal server error, ok)
2015-02-17 12:31:38 +05:30
Rajani Karuturi 643165a07e volume upload: used netty server to do the file upload 2015-02-17 12:31:27 +05:30
Rajani Karuturi 01c41d09db volume upload: returning the install path and size in UploadStatusCommand 2015-02-17 11:28:32 +05:30
Rohit Yadav 1a6df6f978 CLOUDSTACK-7908: Add user_id column to vm_instance table
Design Document:
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Allow+VM+listing+by+User+ID

- Adds column to VMInstance DAO
- Adds column in vm_instance table
- Adds column in the UserVMJoinVO
- Adds default admin user which has UID = 2
- Adds migration path that sets user_id to first user of the accountId that
  owns the vm in vm_instance table
- Add arg on list VMs API to query by userId, add support in query layer
- Refactor VMInstanceVO and child classes to accept userId
- Add code to let service layer pass userId if loggedIn user belongs to same
  account as the owner executing an API call or use first user from owner account
- In case of CPVM and SSVM use system user ID
- Fix unit tests and spring injections

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-16 15:02:38 +05:30
Rohit Yadav d5538fbe3b Publish secstorage failure, removed by a12ab8a2b3
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-05 15:55:13 +05:30
Rajani Karuturi 7231daa71d volume upload: fixed the post body parsing logic
as long as the boundary is completely in the byte buffer it works.
2015-01-29 16:55:29 +05:30
Rajani Karuturi 92669e314e volume upload: modified parsing logic
vhd file download works fine. some open issues with parsing params
2015-01-29 16:55:28 +05:30
Bharat Kumar 2a2d4364e1 made changes to move a file to the specified localtion
Signed-off-by: Rajani Karuturi <rajanikaruturi@gmail.com>
2015-01-20 16:02:33 +05:30
Rajani Karuturi a31e1bff33 volume upload: fixed build error from the commit b0a96c4c85 2015-01-20 12:44:05 +05:30
Rajani Karuturi b0a96c4c85 volume upload: fixed nio server blocking thread issue 2015-01-20 12:27:26 +05:30
Rajani Karuturi 15ae33a5b6 volume upload: refactored post upload command and used it during template registration 2015-01-20 09:24:14 +05:30
Rajani Karuturi ad6b7b30cb Volume upload: sending the nfsstore url in the metadata
decoding the metadata and deserialising it on receiving it
2015-01-19 18:04:14 +05:30
Rajani Karuturi ca0f9de6c7 volume upload: parsing post body to get all the params 2015-01-19 12:04:30 +05:30
Koushik Das 7900ae5d9f volume-upload: initializing state for volume and also setting the post url in volume_store_ref 2015-01-19 11:03:42 +05:30
Rajani Karuturi c5be9d0b9b volume upload: removed debug messages in post request handler. 2015-01-17 04:23:44 +05:30
Rajani Karuturi ef0c5d35cf volume upload: added post request parser to get the file content 2015-01-17 04:06:29 +05:30
Bharat Kumar 5e1bd634a4 Added changes to maintain and send the upload progress.
Signed-off-by: Rajani Karuturi <rajanikaruturi@gmail.com>
2015-01-17 04:06:29 +05:30
Rajani Karuturi 1bf4058732 volume upload: removed the handlerFactory and the handler which were required by NioServer 2015-01-16 17:19:19 +05:30
Rajani Karuturi ebaa4dd38e volume upload: added httpcomponents server and removed nio server
removing nio server as it is currently handling only https connections
and the parsing logic is also specific to agent communication.

current limitation of httpcomponents server is that the entire file is
read in memory. need figure out how to read it in chunks and send it
through a inputstreamreader to save on secondary storage.
2015-01-16 17:15:14 +05:30
Koushik Das 627f5a62dc volume upload: management server polling and upload status from agent
MS polling logic to query status for volumes that are uploaded
2015-01-14 10:19:12 +05:30
Daan Hoogland 9239f93a7d CID-1257434 try with resource 2015-01-12 20:37:21 +01:00
Likitha Shetty bc235ed5eb CLOUDSTACK-5485. Cannot process more than 5 concurrent snapshots.
Number of threads on SSVM agent for connection with MS (Agent->NioClient) should be configurable using global config 'workers'.
2015-01-07 09:41:24 +05:30
Wei Zhou 84c44b6314 CLOUDSTACK-8140: CS fails to start after secstorage/consoleproxy.service.offering is set to uuid 2015-01-06 10:23:44 +01:00
Rajani Karuturi 42fdc343f5 volume upload: starting NIO server on SSVM 2015-01-06 11:07:10 +05:30
Rajani Karuturi d2ef7295f9 volume upload: sending the preshared key to ssvm
sending the key to ssvm in the secondary storage setup command
saving it in a file on ssvm
2014-11-28 16:40:20 +05:30
Laszlo Hornyak 3577423da9 removed executable flags from java classes
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-11-23 19:49:01 +01:00
Nitin Mehta e87bb20d0c CLOUDSTACK-7916: Generate Alerts if System VMs cannot be started. 2014-11-14 13:35:40 -08:00
Nitin Mehta 3907bc6f9d CLOUDSTACK-7916: Generate Alerts if System VMs cannot be started. 2014-11-14 13:18:27 -08:00
Santhosh Edukulla 1aef5cba66 Fixed Coverity Issues 2014-11-03 16:45:30 +05:30
Hugo Trippaers 4ebaf0a583 Bump master version to 4.6.0-SNAPSHOT after branching 4.5.0-SNAPSHOT 2014-10-29 14:54:23 +01:00
Anthony Xu 70112bd145 CLOUDSTACK-7761:
Revert "when system VM ping times out, stop system VM"

This reverts commit ee23be1942.
2014-10-21 17:19:57 -07:00
Santhosh Edukulla efe1e0a544 Fixed coverity and other resource leak issues
Signed-off-by: Santhosh Edukulla <santhosh.edukulla@gmail.com>
2014-10-16 12:19:51 +05:30
Santhosh Edukulla 350ac4c4b0 Fixed Resource Leaks
Signed-off-by: Santhosh Edukulla <santhosh.edukulla@gmail.com>
2014-10-13 17:51:02 +05:30
Nitin Mehta ce90837357 CLOUDSTACK-6826: Improving the download url expiration where the expiration work would be handled by the ssvm that has the corresponding symlink created on it. In case it doesnt exist, then would be any one of the ssvm in the zone.
Also when the ssvm is destroyed all the download urls are expired to be cleaned up in the next run by the new ssvm.
2014-10-10 16:28:48 -07:00
Anthony Xu 847e1e47ae when system VM ping times out, stop system VM 2014-09-30 12:35:44 -07:00
Hugo Trippaers dc3f0cbc63 Improve the handling of the findbug exclude files 2014-09-03 10:41:22 +02:00
Min Chen 902a9c5b70 CLOUDSTACK-7266: Deleting account is not cleaning the snapshot entries
in secondary storage.
2014-08-25 16:09:48 -07:00
Kishan Kavala c09888fcb5 CLOUDSTACK-7237 : Added TAR image processor for templates with tar extension 2014-08-06 18:03:02 +05:30
Santhosh Edukulla b371356abc Fixed coverity issues reported 2014-07-31 21:19:57 +05:30
Hugo Trippaers 49f60ca744 Fix a coverity issue about unchecked returns and make the code flow a
litle bit more easy to follow.
2014-07-28 14:42:42 +02:00
Hugo Trippaers 885e08d476 Fix CID 1114611 Check the right variable 2014-07-24 12:21:38 +02:00
Hugo Trippaers fc23c70a1f Fix CID 1116481 Widening should happen before calculation 2014-07-04 16:48:30 +02:00
Logan B 736bf540e8 Changed logic for copying snapshot from S3 to NFS staging store to prevent needless failure.
Signed-off-by: Daan Hoogland <daan@onecht.net>
2014-06-20 22:37:21 +02:00
Nitin Mehta 8b6dc7ce2f CLOUDSTACK-6824: In case there is a failure to delete the soft link of a download url, dont bail out since there can be cases such as destroy ssvm where the soft links do not exist any more.
(cherry picked from commit 7333016722)
2014-06-02 17:55:09 -07:00
Nitin Mehta 5393387bbd CLOUDSTACK-6599:
1. Adding the missing Template/Volume URLs expiration functionality
2. Improvement - While deleting the volume during expiration use rm -rf as vmware now contains directoy
3. Improvement - Use standard Answer so that the error gets logged in case deletion of expiration link didnt work fine.
4. Improvement - In case of domain change, expire the old urls
2014-05-30 10:48:42 -07:00
Nitin Mehta 1d45b75298 CLOUDSTACK-6499:
Made changes so that uploading custom certificate works for ssvm.
    1. Reboot ssvm only when private key is passed meaning the server cert is passed. This is because while uploading the server cert is the last to be uploaded. And we want to propagate the entire chain once uploading is done.
    2. Change the SecStorageSetupCommand sent to ssvm so that it also carries the root cert apart from having the chain and the server cert and key.
    3. Change ssvm agent code to be able to configure root cert to the java key store.
    4. Change ssvm configure ssl script to insert the chain certs correctly.
    5. Fix order of chain certificates for apache webserver in SSVM
    6. Remove double encoding and decoding for uploadCustomCertificate API from UI and server code respectively, so that API call without UI works fine
    7. Java 1.7 - disable using SNI since copyTemplate doesnt work for SSL.
2014-04-24 17:27:02 -07:00
Marcus Sorensen 11f5bdd78d CLOUDSTACK-6191 Add support for specifying volume provisioning
type (thin, sparse, fat) in disk/compute offerings.

Submitted-by: Yoshikazu Nojima <mail@ynojima.net>
Reviewed-by: Marcus Sorensen, Mike Tutowski
2014-04-10 09:23:04 -06:00
edison 8583b70f2a CLOUDSTACK-5828: if snapshot deletion failed, such as can't find it on secondary storage, should return succeed. 2014-03-28 16:22:49 -07:00
Daan Hoogland 8b62b2cb92 findbugs: exclude known spiffy hacks a.k.a. false positives 2014-03-28 14:28:10 +01:00
Hugo Trippaers 4402685e11 Update master to 4.5.0-SNAPSHOT 2014-03-14 14:55:26 +01:00
John Kinsella 09c375379d CLOUDSTACK-6204: removing realhostip dependency
Moving default transport for console proxy, SSVM to http.

See
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Realhost+IP+changes
for more info.

jlk ported Amogh's patch for 4.3 to master - code base is different
enough that patch has multiple issues.

Author: Amogh Vasekar <Amogh Vasekar <amogh.vasekar@citrix.com>
Signed-off-by: John Kinsella <jlk@stratosec.co> 1394398017 -0700
2014-03-09 13:46:57 -07:00
Alena Prokharchyk 5a8d165afa CLOUDSTACK-6198: use List DS for storing NicProfiles as public network can have more than one nic
Conflicts:
	engine/api/src/com/cloud/vm/VirtualMachineManager.java
	engine/api/src/org/apache/cloudstack/engine/orchestration/service/NetworkOrchestrationService.java
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
	engine/orchestration/src/org/apache/cloudstack/engine/orchestration/CloudOrchestrator.java
	engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java
	plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
	plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java
	plugins/network-elements/juniper-contrail/src/org/apache/cloudstack/network/contrail/management/ServiceManagerImpl.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	services/secondary-storage/controller/src/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java
2014-03-04 15:37:52 -08:00
Hugo Trippaers cc6938e3a8 Findbugs : Fix several "of concern" findings. 2014-02-14 18:37:46 +01:00
Alex Huang 54f32a8e46 Moved the controlling logic for secondary storage vm into place 2014-02-05 01:39:17 +00:00
Alex Huang 4be3b99337 Moved the secondary storage service into its own server directory 2014-02-05 01:38:24 +00:00
Hugo Trippaers 8f10dedce9 Fix findbugs findings and remove dead code 2014-01-31 09:37:16 +01:00
Sanjay Tripathi dfe744c4a9 CLOUDSTACK-5900: Failed to delete template/ISO that failed to download. 2014-01-30 13:26:00 +05:30
Sanjay Tripathi 1c4bbecc4a CLOUDSTACK-5900: Failed to delete template/ISO that failed to download. 2014-01-29 14:07:59 +05:30
Sanjay Tripathi d7ee7a7431 CLOUDSTACK-5900: Failed to delete template/ISO that failed to download. 2014-01-28 19:21:10 +05:30
Alex Huang 5fb6edd684 Changed the package to name to org.apache.cloudstack 2014-01-09 16:12:26 -08:00
Alex Huang ae8560b195 Moved security out into its own jar. Will be adding more to it. Fixed a few white space issues brought up by checkstyle in eclipse. 2014-01-09 16:12:25 -08:00
Edison Su 9947e688c4 CS-18564: create template from snapshot failed, due to the volume(the
snapshot created from) is deleted.
2013-12-20 12:45:02 -08:00
Marcus Sorensen 95364a4022 CLOUDSTACK-5531
Initial support for vhd, raw, vmdk image formats on KVM. Tested all formats with local and CLVM.
2013-12-16 14:32:51 -07:00
Alex Huang be5e5cc641 All Checkstyle problems corrected 2013-12-12 12:26:07 -08:00
Min Chen 5dccaa1832 CLOUDSTACK-5454: Delete previous template and snapshot after migrating
NFS to S3 throws Error.
2013-12-11 16:54:40 -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
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 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
Alex Huang 8d62744681 Reformat all source code. Added checkstyle to check the source code 2013-11-20 07:26:53 -08:00
Darren Shepherd 891b85d516 Add missing licenses 2013-10-23 15:20:08 -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
Min Chen 25acfbad78 CLOUDSTACK-4816:provide configurable option to choose single vs
multipart upload to S3 object storage based on object size.
2013-10-17 10:28:59 -07:00
Hugo Trippaers 71dc43ebb0 Remove duplicate scripts and move the remaining items to the systemvm project 2013-10-14 08:02:35 +02:00
Min Chen f1895ea39a CLOUDSTACK-4816: Make S3 upload multipart or singlepart configurable. 2013-10-04 18:21:25 -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
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
Hugo Trippaers 15a97ec412 Cleanup pom.xml in various projects to properly use managed versions and other defaults 2013-09-21 17:21:06 +08:00
Hugo Trippaers 17977b426b Forgot to add a few items to the commit to move the systemvm 2013-09-20 18:52:47 +08:00
Donal Lafferty e958f22ff3 CIFS support for secondary storage is documented here: https://cwiki.apache.org/confluence/display/CLOUDSTACK/CIFS+Support
It was implemented by extending the NFS provider. Its validation was updated so that you can pass it a URL containing the
details of a CIFS share.  The code that mounts NFS shares was extended to allow it do the same for CIFS shares.  Otherwise,
the secondary storage code is left unchanged.
2013-09-11 14:23:29 +05:30
Min Chen b11a8e12e8 CLOUDSTACK-4625:Snapshots and templates should be deleted from staging
storage after create template from snapshot on S3.
2013-09-06 17:48:40 -07:00
Min Chen bf83efcf4b CLOUDSTACK-4190:[Object_store_refactor] volume should be deleted from
staging storage after successfule volume migration, specially handle
DeleteVolume command for Vmware volume structure in secondary storage.
2013-09-06 14:39:03 -07:00