Commit Graph

932 Commits

Author SHA1 Message Date
Rohit Yadav a033cf1bfc api_refactor: refactor snapshot apis
- Fix refactored apis, fix mappings in commands*.in
- Fix comments etc.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 23:19:12 -08:00
Rohit Yadav 3e0b2164be api_refactor: refactor template apis
- Fix refactored apis, fix mapping in commands*.in
- Fix comments etc.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 23:05:44 -08:00
Rohit Yadav e0b4430070 api_refactor: refactor iso apis
- Fix refactored apis, fix mapping in commands*.in
- Fix comments etc.
- Note: copyIso uses copyTemplate, refactor copyTemplate

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 23:01:29 -08:00
Rohit Yadav 6fc3bc3760 api_refactor: refactor vpn and vm apis
- Refactor VPN and VM APIs to admin and user pkgs
- Names space, org.apache.cloudstack
- Fix refactored apis in commands*.in
- Fix comments etc.
- Expand tabs, remove trailing whitespace

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 21:27:02 -08:00
Rohit Yadav 5edfc2760a refactor: remove redundant imports, fix trailing chars 2012-12-03 13:54:37 -08:00
Marcus Sorensen 88180fc139 Summary: Direct template imaging for CLVM, bypass copy template to primary
Detail: Because of the way most other primary storage types work with cloudstack
   (i.e. backing stores) CLVM actually copies the template to a local logical
   volume on primary storage, then uses that. This causes all of your primary
   storage to be littered with a copy of every template used. Since we're not
   using these, dump the template direct to the newly created logical volume.
   This is faster as well since the template is sparse; we're not creating a fat
   template on primary storage and then copying that to a logical volume when we
   deploy from template.

BUG-ID: CLOUDSTACK-508
Bugfix-for: 4.1
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1353221260 -0700
2012-11-17 23:47:39 -07:00
Laszlo Hornyak 499a28cb43 Removed redundant imports from VolumeHostDao
Signed-off-by: Laszlo Hornyak <lhornyak@redhat.com>
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1352883689 +0530
2012-11-14 14:31:29 +05:30
Alena Prokharchyk 214bbf3ebd CLOUDSTACK-279: fixed deleteProject when executed by the regular user. Always pass System account as a caller when do account cleanup
Conflicts:

	api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java
	server/src/com/cloud/network/element/CiscoNexusVSMElement.java
	server/src/com/cloud/network/element/ElasticLoadBalancerElement.java
	server/src/com/cloud/network/element/F5ExternalLoadBalancerElement.java
	server/src/com/cloud/network/element/JuniperSRXExternalFirewallElement.java
	server/src/com/cloud/network/element/NetscalerElement.java
	server/src/com/cloud/network/element/OvsElement.java
	server/src/com/cloud/network/element/VpcJuniperSRXExternalFirewallElement.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
	server/src/com/cloud/storage/StorageManager.java
2012-10-17 17:26:19 -07:00
Alena Prokharchyk 8f2d9a09e5 CLOUDSTACK-332: intermediate checkin fixing count parameter in listCommands
Fixes the count in commands:

listVolumes
listVirtualMachines
listSnapshots
listRouters
listFirewallRules
listPortForwardingRules
listLoadBalancerRules
listIpForwardingRules
listAccounts
listUsers
listDomains
listDomainChildren
listPublicIpAddresses
listAlerts
listAsyncJobs
listRemoteAccessVpns
listVpnUsers
listTags
listPrivateGateways
listNetworkACLs
listStaticRoutes

Conflicts:

	api/src/com/cloud/api/commands/ListVMsCmd.java
	api/src/com/cloud/api/commands/ListVolumesCmd.java
	api/src/com/cloud/network/lb/LoadBalancingRulesService.java
	server/src/com/cloud/network/firewall/FirewallManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/network/vpc/NetworkACLManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
	server/src/com/cloud/tags/TaggedResourceManagerImpl.java
2012-10-12 13:58:59 -07:00
Alena Prokharchyk 339aa41442 CLOUDSTACK-304: Synchronization support for createSnapshot command - don't sent more than "concurrent.snapshots.threshold.perhost" createSnapshots commands to the backend host.
Conflicts:

	core/src/com/cloud/async/AsyncJobVO.java
	core/src/com/cloud/async/SyncQueueVO.java
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/async/AsyncJobManagerImpl.java
	server/src/com/cloud/async/SyncQueueManager.java
	server/src/com/cloud/async/SyncQueueManagerImpl.java
	server/src/com/cloud/async/dao/SyncQueueDao.java
	server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
	server/test/com/cloud/async/TestSyncQueueManager.java
	setup/db/create-schema.sql
2012-10-10 13:40:00 -07:00
Alena Prokharchyk 290e8954f7 Removed more unused imports in Snapshots code
Conflicts:

	server/src/com/cloud/storage/dao/SnapshotScheduleDao.java
2012-10-09 17:07:03 -07:00
Anthony Xu 15f6fbbee4 CLOUDSTACK-251 :
when host is reconnected, CS try to make sure the host can access primary storage,
CS only do this when primary storage is UP, and even host cannot access primary storage,
that is okay, do not throw exception, just print a warning message
2012-10-04 11:31:53 -07:00
Alena Prokharchyk dc64fcab93 Removed unused code that was commented out in SnapshotManagerImpl- you can alway retrieve it back from the history if needed
Conflicts:

	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
2012-09-27 11:13:37 -07:00
Alena Prokharchyk efab2f413b Removed more unused imports in Snapshots code
Conflicts:

	server/src/com/cloud/storage/dao/SnapshotScheduleDao.java
	server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
2012-09-27 11:12:53 -07:00
Alena Prokharchyk c27b44e7f7 Removed unused imports from snapshot manager 2012-09-27 10:50:48 -07:00
Mice Xia 955cbd97bc CLOUDSTACK-10 Deleting a disconnected primary storage results in partial removed state 2012-09-18 11:18:44 +08:00
Koushik Das 65eeeaf071 CS-14277
Support for local data disk. Currently enable/disable config is at zone level, in subsequent checkins it can be made more granular.
    Following changes are made:
    - Create disk offering API now takes an extra parameter to denote storage type (local or shared). This is similar to storage type in service offering.
    - Create/delete of data volume on local storage
    - Attach/detach for local data volumes. Re-attach is allowed as long as vm host and data volume storage pool host is same.
    - Migration of VM instance is not supported if it uses local root or data volumes.
    - Migrate is not supported for local volumes.
    - Zone level config to enable/disable local storage usage for service and disk offerings.
    - Local storage gets discovered when a host is added/reconnected if zone level config is enabled. When disabled existing local storages are not removed but any new local storage is not added.
    - Deploy VM command validates service and disk offerings based on local storage config.
    - Upgrade uses the global config 'use.local.storage' to set the zone level config for local storage.
(cherry picked from commit 62710aed37606168012a0ed255a876c8e7954010)
2012-09-11 17:22:43 +05:30
Anthony Xu 0442917381 only check ISO which is downloaded status 2012-09-10 13:30:25 -07:00
Prachi Damle 3d0069bb56 CS-16158 : Load Test - Adding host takes much longer in 3.0.x compared to 2.2.14.
Changes:

There is an unnecessary search over capacity table that scans entire table.
2012-08-31 13:40:17 -07:00
Nitin Mehta 79ebffe4f3 CS-13594: Download template is unable to handle multiple SSVMs per zone
Reviewed-by: Kishan
2012-08-29 15:25:00 +05:30
Hugo Trippaers e3f2cf908a Only use the PremiumSecondaryStorageResource if VmWare is the hypervisor 2012-08-24 15:57:18 +02:00
Nitin Mehta 7aa7d6e39f CS-16089: Create Template after upgrade from snapshot taken in 2.2.14 was failing since the swift_id was not null but 0 instead. Put a check in the code to check for not null and not 0 swift_id to go and download the snapshot from the swift.
Reviewed-by: Kishan
2012-08-21 13:46:18 +05:30
Edison Su 481aae1ebc add recreate.systemvm.enabled parameter to control recreating systemvm 2012-08-20 11:19:26 -07:00
Mice Xia 7e093a949d CS-15823 Failed snapshot should be marked as Error and cleanup asynchronously 2012-08-15 11:06:25 +08:00
kishan 65c90227ae bug CS-15648: For volumes created from snapshot, create usage event after successful volume
status CS-15648: resolved fixed
reviewed-by: Nitin
2012-08-14 11:58:07 +05:30
Mice Xia 42fbf24f86 Remove @author tag from non third-party source files in server folder 2012-08-13 15:17:31 +08:00
Alena Prokharchyk 32f55f3e3c Merge branch 'master' into vpc 2012-08-12 10:22:54 -07:00
Koushik Das ff773a8122 CS-15621: Using migrateVolumes method which does not perform input validation. Some input validation in the migrateVolume method prevented migration of volume in READY state. Also using volume disk offering to check if it is a local or shared one.
Verified on XS 6.0.2

Test scenario
- Created 2 shared primary storage pools
- Created data volume using shared disk offering
- Attached it to a running VM (created in one storage pool)
- Detached it (now it is in READY state)
- Created a new VM in stopped state (using deployVirtualMachine API with startVm=false)
- Attached the data volume to this new VM
- Started new VM (migrated volume scenario got hit when the planner assigned the other shared pool)
2012-08-12 17:05:28 +05:30
Alena Prokharchyk b61468d65c Merge branch 'master' into vpc
Conflicts:
	plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
2012-08-11 18:27:18 -07:00
Edison Su 263216caa5 Adds CLVM as an option for primary storage. It copies most of the RBD bits, in most cases simply adding an 'else if' or similar. In the managesnapshot.sh we add the ability to manipulate snapshots for the CLVM volumes, as well as a few minor fixes like adjusting the usage for the -b option to reflect that it accepts four arguments (note that it already accepted four args, it just wasn't reflected in the usage).
RB: https://reviews.apache.org/r/6470/
Send-by: shadowsor@gmail.com
2012-08-10 13:33:06 -07:00
Alena Prokharchyk 5a72044dc7 Merge branch 'master' into vpc 2012-08-03 14:30:54 -07:00
Alena Prokharchyk e7a1862867 VPC: CS-15827 - register only VpcVirtualNetworkApplianceMgr
Conflicts:

	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/network/VpcVirtualNetworkApplianceService.java
	plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/ha/UserVmDomRInvestigator.java
2012-08-03 14:23:45 -07:00
Nitin Mehta 3c68f1f8e8 bug CS-15200: Introducing state transition when volume is getting copied from secondary storage and it is put into Creating state
Reviewed-by: Kishan
2012-08-03 17:18:13 +05:30
Alena Prokharchyk 0e0b75a041 Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
2012-08-02 18:45:37 -07:00
Edison Su 3996094e55 Fix bug: can not deploy VM on ESXi due to incorrect
secondaryStorageResource used for SSVM

Issue:
For deploying VMware VMs, cloud service on SSVM needs to be started with
PremiumSecondaryStorageResource, a bunch of VMware related commands rely
on it.

Changes:
1)include cloud-vmware.jar in systemvm.zip
2)start cloud service in SSVM with PremiumSecondaryStorageResource

RB: https://reviews.apache.org/r/6320/
Send-by: mice_xia@tcloudcomputing.com
2012-08-02 11:20:35 -07:00
Alena Prokharchyk 5cbe3d9722 ResourceTags: resourcetags support for Project/Vpc/NetworkACL/StaticRoute
Conflicts:

	api/src/com/cloud/api/commands/ListVPCsCmd.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/projects/dao/ProjectDaoImpl.java
	server/src/com/cloud/uuididentity/dao/IdentityDao.java
2012-08-01 18:54:08 -07:00
kishan 9611a017e9 bug CS-15389: Added prepareStop to Virtualmachine manager and moved network usage collection into prepareStop of VR manager 2012-07-27 23:37:46 -04:00
Alena Prokharchyk a39fd61249 Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineGuru.java
2012-07-27 13:47:46 -07:00
kishan 468f2720eb bug CS-15389: Added prepareStop to Virtualmachine manager and moved network usage collection into prepareStop of VR manager 2012-07-27 23:13:18 +05:30
Wido den Hollander 406fd95d87 Add RBD support for primary storage
This patch adds RBD (RADOS Block Device) support for primary storage in combination with KVM.

To get this patch working you need:
- libvirt-java 0.4.8
- libvirt with RBD storage pool support (>0.9.13)
- Qemu with RBD support (>0.14)

The primary storage does not support all the functions of CloudStack yet, for example snapshotting is disabled
due to the fact that backupping up a RBD snapshot is not possible in the way CloudStack wants to do it.

Creating templates from RBD volumes goes well, creating a VM from a template however is still a hit-and-miss.

NFS primary storage is also still required, you are not able to run your System VM's from RBD, they will need
to run on NFS.

Other then these points you can run instances with RBD backed disks.
2012-07-26 22:22:26 +02:00
Edison Su 50ffa95f63 ifix CS-15609 Volumes can be created as a part of VM creation when
un-allocated space is insufficient on primary storage

check the availability of un-allocated primary storage space during
planning stage, for multiple-volume VM creation scenario
modification in StorageManagerImpl.java and StorageManager.java:
add a new method storagePoolHasEnoughSpace(List<Volumes>, StoragePool),
check if storagePool has enough space for all requested volumes
modification in FirstfitPlanner.findPotentialDeploymentResources:
handle multiple volume case, keep track of allocated volumes for pools
and call storagePoolHasEnoughSpace to check space availability
modification in AbstractStoragePoolAllocator.java:
extract capacity computation logic and make a new method in
StorageManagerImpl

RB: https://reviews.apache.org/r/6028/
Send-by: mice_xia@tcloudcomputing.com
2012-07-26 10:10:18 -07:00
Pranav Saxena 3fedd56adb CS-12707: UI/API - templates> select view: ISOs filter by: featured or mine> provides unending pages of 2 ISO entries, DB contains only 19 ISO entrie- reviewed by Alena 2012-07-25 22:05:24 +05:30
Alena Prokharchyk 766b7a2706 Merge branch 'master' into vpc
Conflicts:
	server/src/com/cloud/api/ApiResponseHelper.java
2012-07-23 16:38:58 -07:00
Koushik Das 88f7872b81 CS-15279
Issue happens when ROOT volume gets created and there is subsequent failure in starting the VM. During retry if allocator assigns a different storage pool the scenario was not handled. Now in case of local storage the volume get recreated on the newly assigned pool and old one gets cleaned up. In case of shared storage the existing volume is migrated to new storage pool.
2012-07-23 14:49:04 -07:00
bfederle c8f72c9198 Merge branch 'master' into vpc
Conflicts:
	ui/scripts/network.js
2012-07-23 10:36:25 -07:00
Chiradeep Vittal 308cb36066 Unnecessary INFO log cluttering up the logs. Also make logs more informative 2012-07-19 16:35:45 -07:00
Alena Prokharchyk 7c2b123d94 Merge branch 'master' into vpc 2012-07-16 15:43:16 -07:00
Alena Prokharchyk 097c260690 Resource tags: CS-15591 - delete tags for template/iso when corresponding vo object is removed 2012-07-16 15:43:06 -07:00
Alena Prokharchyk a1acfd3bfa Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/network/Network.java
	client/tomcatconf/components.xml.in
	plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
	server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/guru/GuestNetworkGuru.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
	setup/db/create-schema.sql
2012-07-13 13:52:58 -07:00
Edison Su 8b7b838c8a CS-15544: recreate router if router filesystem is crashed 2012-07-11 16:14:28 -07:00