Commit Graph

715 Commits

Author SHA1 Message Date
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
Darren Shepherd 7c72aa96da ConcurrentHashMap will through NPE on null key 2013-10-04 16:56:48 -07:00
Darren Shepherd c9a9a3b7b3 Make SnapshotStrategy and DataMotionStrategy discovered and registered 2013-10-03 17:03:28 -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
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
Edison Su 9baa45308c CLOUDSTACK-4650: change volume state during snapshot only 2013-09-25 16:33:10 -07:00
Edison Su 7d8a7f855d CLOUDSTACK-4627: fix NPE in vm migration 2013-09-25 16:32:40 -07:00
Edison Su 2227eb191a CLOUDSTACK-3535: fix regression introduced in 5d9fa5d42e 2013-09-25 16:16:34 -07:00
Edison Su aa59b6f34d CLOUDSTACK-4507: fix NPE when taking snapshot 2013-09-25 16:09:00 -07:00
Edison Su f4dbf8786f CLOUDSTACK-4477: in order to select hypervisor host which can access storage pool, need to check storage_pool_host_ref
Conflicts:

	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentManagerSimpleImpl.java
	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/EndpointSelectorTest.java
	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/FakeDriverTestConfiguration.java
2013-09-25 16:08:41 -07:00
Edison Su a82b179878 add table lock on snapshot, during taking snapshot
Conflicts:

	engine/storage/src/org/apache/cloudstack/storage/image/db/SnapshotDataStoreDaoImpl.java
2013-09-25 16:03:59 -07:00
Edison Su b5f7e307a1 CLOUDSTACK-4456:
CLOUDSTACK-4457:
CLOUDSTACK-4459:
harden kvm getvolume. It's possible that one volume created on other kvm host, won't show up on another host, try more times to refresh storage pool if volume won't shown up

Conflicts:

	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/FakeDriverTestConfiguration.java
	plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java
2013-09-25 16:01:45 -07:00
Edison Su 7b6aebc102 add test
Conflicts:

	engine/storage/integration-test/test/org/apache/cloudstack/storage/test/FakeDriverTestConfiguration.java
2013-09-25 15:58:46 -07:00
Edison Su b3ac12e171 delete snapshot_store_ref if the snapshot is in error state 2013-09-25 15:51:55 -07:00
Darren Shepherd 9fb0a1a619 Don't check implementation version of Object for DatabaseUpgradeChecker 2013-09-25 14:34:14 +02:00
Alena Prokharchyk 29b4cde04a CS-18283: 2.2.x to 4.2 upgrade - corrected the Service Provider name for the Network offeirng that can be used in VPC (from VirtualRouter to VpcVirtualRouter) 2013-09-24 11:44:46 -07:00
Wei Zhou 62d49b3524 CLOUDSTACK-4716: upgrade resource count (cpu,memory,primary_storage,secondary_storage) in the upgrade to 4.2
(cherry picked from commit 38bbfdc89a)

Signed-off-by: Wei Zhou <w.zhou@leaseweb.com>
2013-09-23 14:19:03 +02:00
Alena Prokharchyk 2fa5a5ae97 CLOUDSTACK-4704: 41-42 db upgrade - populate vpc_service_map table with the services/providers supported by VPC
(cherry picked from commit 798f34a49c)

Signed-off-by: Wei Zhou <w.zhou@leaseweb.com>
2013-09-23 14:18:41 +02: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 d37b87d97a Fix a few xml wellformedness issues 2013-09-21 14:58:56 +08:00
Prachi Damle f2ea699d12 CLOUDSTACK-4668: Upgrade to 4.2 fails with NullPointerException when hypervisor_type is null for a cluster entry
Changes:
- Care for null value during comparing the hypervisor_type
- Do not consider removed clusters
- Method rename according to coding conventions
2013-09-18 16:52:01 -07:00
Daan Hoogland 2614b00c51 sdn hosted vpc gateways (using lswitch) 2013-09-18 16:56:56 +02:00
Kelven Yang 832db1b398 Apply https://reviews.apache.org/r/14084/ 2013-09-17 16:29:48 -07:00
Sheng Yang 37f4a120fd CLOUDSTACK-4698: Check DHCP service in the network before get dhcp service provider 2013-09-17 16:01:29 -07:00
Min Chen 6fccd74ae8 CLOUDSTACK-4534:[object_store_refactor] Deleting uploaded volume is not
deleting the volume from backend.
2013-09-17 15:20:20 -07:00
Min Chen 1042136c23 CLOUDSTACK-4661:[DB Upgrade] SecondaryStorage entry in host table before
upgrade is not marked as removed after migrating them to image_store
table.
2013-09-12 18:55:41 -07:00
Min Chen a20097b967 CLOUDSTACK-4534:[object_store_refactor] Deleting uploaded volume is not
deleting the volume from backend.
2013-09-11 10:25:57 -07: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
Koushik Das ae181afb00 CLOUDSTACK-4636: In a scaled up setup all Vm's in a cluster were stopped and/or started after management server restart
Issue happens as there are more than one thread processing connect for a host simultaneously. The VM full sync. is not designed to work in this scenario and as a result user VMs may get stopped incorrectly.
Direct agent scan task runs at regular intervals (direct.agent.scan.interval defaulted to 90 secs) and identifies hosts that needs to be processed for connect. In a normal scenario hosts mostly get connected within that interval and there are no issues. But if due to some reason the connect process takes more time and is not completed by the time next agent scan runs. In this case, based on the db. state same hosts may get picked up again. And then there will be situations where more than one thread is processing connect for the same host.
The fix is to check if there is a thread already processing connect for a host and in this case all subsequent threads for that host will simply bail out. Also there may be a scenario where one thread already completed processing connect but another thread already got scheduled before that and will again repeat the same. This is also prevented by putting appropriate checks.
2013-09-10 17:21:36 +05:30
Min Chen 16a1f150eb CLOUDSTACK-4628:[Automation] Failed to create template from snapshot
with same name; after deleting the first one.
2013-09-09 16:10:33 -07:00
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
Alex Huang a05ec6df33 Fixed up the agent separation. Added comments for config packaging. 2013-09-06 15:40:39 -07:00
Alex Huang 1f5699b29f Fixed unit tests 2013-09-06 15:40:39 -07:00
Alex Huang 8f556e6d88 Made changes to configuration. Eliminated ConfigValue and only use ConfigKey 2013-09-06 15:40:38 -07:00
Alex Huang b8e79c30a8 Compile complete 2013-09-06 15:40:37 -07:00
Alex Huang 6e8ca99466 Got all of the config stuff out of the way 2013-09-06 15:40:36 -07:00
Alex Huang 47afae8112 Merged conflicts resolved 2013-09-06 15:40:36 -07:00