Commit Graph

7484 Commits

Author SHA1 Message Date
Alena Prokharchyk b253d95de9 UpdateVirtualMachine: code cleanup - got rid of warnings and unused code from the method; extracted part of the code to its separate method. 2013-09-30 15:34:56 -07:00
Darren Shepherd cba8e40e4b Add license headers to fix build 2013-09-30 09:51:45 -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
Darren Shepherd 692535f928 Cleanup DefaultUserAuthenticator and removed masking _name variable
DefaultUserAuthenticator maskes the _name varible in ComponentLifecycleBase
making the setName() method not work as expected.  This patch cleans up the
code such that getName() will be getClass().getSimpleName() unless
overridden in the Spring configuration.
2013-09-30 09:33:33 -07:00
Laszlo Hornyak c61997f022 basic test for ApiDispatcher
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-09-30 13:08:15 +02: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
Sheng Yang dad47682cb CLOUDSTACK-4745: Add StaticNatRule through firewall manager
This would fix CreateIpForwardingCmd API on 4.2+.
2013-09-26 14:00:32 -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
Daan Hoogland 6f970c6ff9 static nat capabilities parsing cleanup and testing 2013-09-26 15:18:52 +02:00
Edison Su 81ff4795df fix compile errors 2013-09-25 17:59:54 -07:00
Edison Su a9aad4f388 add sourcetemplateid for template created from volume/snapshot
Conflicts:

	server/src/com/cloud/template/TemplateManagerImpl.java
2013-09-25 16:35:31 -07:00
Edison Su d1a14fbf95 disk resize NPE, if the new disk offering doesn't have tags, then NPE 2013-09-25 16:29:01 -07:00
Edison Su 49d8e44491 CLOUDSTACK-4459: one more try, bypass libvirt to find volume if libvirt call failed
Conflicts:

	server/src/com/cloud/template/TemplateManagerImpl.java
2013-09-25 16:16:10 -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 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
Abhinandan Prateek 77bec4f2ad Cloudstack-2997: the maxconn setting is masked by wrong conditions 2013-09-25 21:09:24 +05:30
Wei Zhou 98c79cc313 CLOUDSTACK-4732: search network name for virtual router when listRouters by keyword 2013-09-24 15:01:14 +02:00
Wei Zhou e61f1bb158 fix issue: listHosts with hahost throws exception
(cherry picked from commit a206f423a3)
2013-09-24 11:59:35 +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
Abhinandan Prateek c7cc79181b Revert "Cleanup DefaultUserAuthenticator and removed masking _name variable"
This reverts commit 4d01ce8fc7.
2013-09-20 19:33:50 +05:30
Darren Shepherd 4d01ce8fc7 Cleanup DefaultUserAuthenticator and removed masking _name variable 2013-09-20 17:40:00 +05:30
Alena Prokharchyk 94e744fe0c CLOUDSTACK-4573: fixed decrement resource count for VPC networks 2013-09-19 17:20:22 -07:00
Laszlo Hornyak 88954053c3 do not instantiate Long just for toString
replaced Long object instantiation with static call to Long.toString in case it was only to generate a string

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-09-19 16:58:59 +02:00
Daan Hoogland 284742ad11 add networkofferid to search network for 2013-09-19 16:26:46 +02:00
Kelven Yang b6d448d1fd apply https://reviews.apache.org/r/14189/ - UserVmDomRInvestigator and ManagementIPSystemVMInvestigator mask adapter name 2013-09-18 17:58:31 -07:00
Prachi Damle 62d60c2b77 CLOUDSTACK-4664: [ZWPS] High delay to start a stopped VM which has ROOT/DATA volumes migrated to Second Zone wide primary Storage(More than 10 mins)
Changes:
- DeploymentPlanningManager needs to reuse the zone wide primary storage pool when VM's volume is READY
2013-09-18 16:52:07 -07:00
Prachi Damle 7416383fcd CLOUDSTACK-4651: Restarting management server when volume Snapshot is still in progress for root volume of a VM , then there is no way to restart VM since the startVM job is stuck forever since the volume is in "Snapshoting" state.
Change:
-If no volume of the VM is usable, VM cannot be deployed or started. Atleast ROOT volume should always be in usable state to start up the VM
2013-09-18 16:52:04 -07:00
Alena Prokharchyk d34b79c970 CLOUDSTACK-4573: fixed resource limit check when acquire public IP in VPC - update resource count for VPC public ip even when network_id is not set yet. 2013-09-18 14:43:42 -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
Kelven Yang 5820b071b8 CLOUDSTACK-4659: Add the missing feature back for GC VMware worker VMs 2013-09-17 14:06:52 -07:00
Min Chen 22c5ea0ebe CLOUDSTACK-4671:ListZone API failed with Assertion error if assertion is
turned on for MS.
2013-09-13 17:21:24 -07:00
Laszlo Hornyak cb3a3da75d simplify setCpuUsed
- variables inlined
- cpu utilization is not cast to float from double

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Signed-off-by: Min Chen <min.chen@citrix.com>
2013-09-11 21:33:02 -07:00
Laszlo Hornyak d3237e75b2 simplified casting
double values do not need a Double object to be casted to long

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Signed-off-by: Min Chen <min.chen@citrix.com>
2013-09-11 18:27:54 -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
Daan Hoogland 25c8cee01a CLOUDSTACK-4346 uses of parseInt and parseLong secured 2013-09-09 22:19:59 +02:00
Daan Hoogland 947f49d869 Revert "uses of parseInt and parseLong secured"
This reverts commit f8fb422612.
2013-09-09 22:17:10 +02:00
Daan Hoogland f8fb422612 uses of parseInt and parseLong secured 2013-09-09 22:15:07 +02: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
Alex Huang 5b439f0748 Revert "Revert "Added missing files""
This reverts commit 48053001fb2303d4acfb77d23fe3733941e83781.
2013-09-06 15:40:35 -07:00
Alex Huang 06493d5b5c Revert "Added missing files"
This reverts commit a1dfc227e895d724f68c0206643825b3ba43116c.
2013-09-06 15:40:35 -07:00
Alex Huang 375eadd3d3 Added missing files 2013-09-06 15:40:34 -07:00
Alex Huang 435e74e914 Commit to try something on removing getZone 2013-09-06 15:40:33 -07:00
Alex Huang 2e5bb63f77 Moved NetworkManagerImpl to NetworkOrchestrator 2013-09-06 15:40:32 -07:00
Alex Huang 8e5249df62 Moved NetworkManager to NetworkOrchestrationService 2013-09-06 15:40:31 -07:00
Sheng Yang ebb9a0c619 Revert "CLOUDSTACK-2792: Send "saved_password" to BACKUP router when reset password for user VM"
This reverts commit 5a8a2a259e.

We would fix it in another way, since mgmt server may get state updated in
time.

Conflicts:
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2013-09-05 14:26:52 -07:00
Kelven Yang 71b8f6061f CLOUDSTACK-4376: fix cloud-early-config to workaround vSwitch stall in VPC mode. fix potential NPE in DirectAgentAttache in processing answers from resource 2013-09-04 14:49:45 -07:00
Kelven Yang c528e71fec CLOUDSTACK-4390, CLOUDSTACK-4358: Enable full-clone deployment by default for VMware. Apply keep-alive kick for all outstanding vCenter sessions 2013-09-04 14:49:45 -07:00
Kelven Yang 9a2148ffc3 CLOUDSTACK-3886: check in for review request https://reviews.apache.org/r/13008/ 2013-09-04 14:49:45 -07:00
Kelven Yang f383656b21 Fix problems found in local test when JVM assertion is turned on 2013-09-04 14:49:44 -07:00
Kelven Yang 249e2e8f59 Correct DAO usage in VmwareDatacenterVO, relax assertion conditions to work with stack calling frame that is not wrapped with @DB injection 2013-09-04 14:49:44 -07:00
Prachi Damle f31c318158 Changes required to merge to master:
- Replace UserContext by CallContext
2013-09-03 20:03:11 -07:00
Prachi Damle 6a0bda0280 CLOUDSTACK-4337 Dedicated Resources: Zone dedicated to an account should only be visible and accessible to that account
Changes:
- When listing a zone, add clause in the search to check the account_id for a dedicated zone
- When listsing a zone with a domainid, add a similar clause.
- DomainCheck:: checkAccess() for a zone should consider that zone can now be dediacted to a specific account and check access accordingly.

Conflicts:

	server/src/com/cloud/api/query/vo/DataCenterJoinVO.java
	setup/db/db/schema-410to420.sql
2013-09-03 20:02:59 -07:00
Prachi Damle 012afceed2 CLOUDSTACK-4276 Dedicated Resources: Private Zone functionality issues
Changes:
createZone API:
- This API takes in domainid, set it to the zone record in the data_center table

updateZone API:
- This API uses 'isPublic' flag to set a private zone to public - if this flag is set and the zone is dedicated, release the dedication and remove the domainid from the data_center table

listZone API:
- This API already has 'domainid' parameter. We should allow list zones by domain for Root admin.

DedicateZone API:
- set domainid in the data_center table

ReleaseDedicatedZone API:
- remove zoneid from the data_center table
2013-09-03 20:02:56 -07:00
Prachi Damle 96ca70e2da CLOUDSTACK-4259 Dedicated Resources: createAffinityGroup API should not allow admin to create the group of this type through API
Changes:
- Block API from creating this type of group
2013-09-03 20:02:53 -07:00
Prachi Damle 2ce2552132 CLOUDSTACK-4234 Dedicated Resources: When multiple dedication groups are chosen for VM deployment, dedicated resources belonging to both groups should be considered
- Override the equals method
2013-09-03 20:02:47 -07:00
Prachi Damle 5628153c59 CLOUDSTACK-4221: Dedicated Resources: changes to associate the dedicated resource with the 'ExplicitDedication' affinity group
Changes:
- Adding mocks in unit tests for new injected components

Conflicts:

	server/test/org/apache/cloudstack/networkoffering/ChildTestConfiguration.java
2013-09-03 20:02:44 -07:00
Prachi Damle ef22b42b38 CLOUDSTACK-4221: Dedicated Resources: changes to associate the dedicated resource with the 'ExplicitDedication' affinity group
Changes:
- Implict creation of the 'ExplicitDedication' Affinity group during resource dedication
- Only one group per account or per domain will be present
- ListDedicatedResources by affinityGroup
- Deployment should consider dedicated resources associated to the group only
- Deleting affinity group should release the dedicated resouces
- Releasing the dedicated resources should remove the group associated if there are no more resources.

Conflicts:

	plugins/dedicated-resources/src/org/apache/cloudstack/dedicated/DedicatedResourceManagerImpl.java
	plugins/dedicated-resources/test/org/apache/cloudstack/dedicated/manager/DedicatedApiUnitTest.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
2013-09-03 20:02:38 -07:00
Prachi Damle a06bd9fa2b CLOUDSTACK-4168 Root Admin should be able to create 'ExplicitDedication' affinity group at domain level and make it available for all accounts in the domain
Changes:
- 'ExcplicitDedication' type of group can be created/deleted by Root admin only
- Users can no longer create this type of affinity group
- RootAdmin can create this type of affinitygroup at domain level. Such a domain level group is available for all accounts in that domain for listing and for use during deployVM.
- The domain level affinitygroup should be visible to the users in that domain, domain admins and Root admin.

Conflicts:

	server/src/com/cloud/api/query/QueryManagerImpl.java
	server/src/org/apache/cloudstack/affinity/AffinityGroupServiceImpl.java
	server/test/org/apache/cloudstack/affinity/AffinityApiUnitTest.java
2013-09-03 20:02:34 -07:00
Min Chen e92d46bfd4 CLOUDSTACK-4600:Registered Cross-zone template does not populate
template_zone_ref for later added zones.
2013-09-03 16:39:23 -07:00
Chip Childers bf967eb622 Updating datetime format of events to include the timezone 2013-09-03 12:45:01 -04:00
Chip Childers ee13e19a03 Passing description string through to the EventBus for ActionEvents 2013-09-03 12:34:36 -04:00
Chip Childers c86f3bc969 Adding body and subject to the AlertGenerator's Event description hash 2013-09-03 12:28:26 -04:00
Chip Childers 14ee684ce3 Adding eventDateTime to all event generation locations 2013-09-03 11:34:56 -04:00
Wei Zhou 65c1c986da CLOUDSTACK-1192: fix collectVmDiskStatistics issue when stopping a vm 2013-09-03 11:45:34 +02:00
Jayapal 7aea599eb4 CLOUDSTACK-4586 Added CIDR validation for SG Egress rules 2013-09-03 14:18:18 +05:30
Wei Zhou a16fd4781c CLOUDSTACK-4566: fix incorrect values in resource_count table for resource limitation
There are three issues in resource_count table
(1) expunge a vm, the public_ip decreases and becomes -1 in basic zone.
(2) recover a vm, the volume increase.
(3) restore a vm, the volume decrease.
2013-09-02 16:56:34 +02:00
Daan Hoogland d9c06e538b CLOUDSTACK-4346 replace URI getHost() and create(String) calls with BroadcastDomainType methods 2013-09-01 22:53:23 +02:00
Ian Duffy bdba0ddeed Bring up to date with master 2013-08-31 00:25:48 +01:00
Prachi Damle af175d8c65 CLOUDSTACK-4528 [Vmware] new mapping vmware datacenter cloudstack zone - Virtual Router host migration across cluster FAIL
Change:
- Also add a check in migrateSystemVM API to check that source and destination host are in the same cluster
2013-08-28 17:03:24 -07:00
Prachi Damle 92eb84c3e0 CLOUDSTACK-4528: [Vmware] new mapping vmware datacenter cloudstack zone - Virtual Router host migration across cluster FAIL
Changes:
- listHosts within same cluster for migration of system and router VMs
2013-08-28 17:03:21 -07:00
Chiradeep Vittal 4a9b2fb584 Since some config values moved to individual ConfigKey<T> from Config.java, validation is broken for those keys. Workaround the issue so that updateConfiguration API still works 2013-08-27 18:04:30 -07:00
Min Chen b67a832f77 CLOUDSTACK-4530:Create Template from a Snapshot fails with unable to
find any snapshot ova/ovf when we have multiple secondary storage for a
zone.
2013-08-27 17:15:11 -07:00
Murali Reddy 5f42e2937d CLOUDSTACK-3010: [VMWare] [SharedNetworkWithServices] router VM
deployment fails with error "Message: Invalid configuration for device
'2'."

ensuring that direct network guru assigns a mac address for the nic that
it designs
2013-08-28 00:49:38 +05:30
Harikrishna Patnala 81938c68ac CLOUDSTACK-4482: getVMPassword() API call does not return password for Vms that are deployed with password enabled templates.
Improving the error message saying ssh key pair should be assinged to VM to get the encrypted password.

Signed-off-by: Koushik Das <koushik@apache.org>
2013-08-27 16:41:07 +05:30
Alex Huang 8113ebb08f Moved the csvtotags into StringUtils. It was there to begin with. No idea who copied it to ConfigurationManager 2013-08-26 20:27:27 -07:00
frank 64f9f0cee6 CloudStack CLOUDSTACK-4484
Vmware - Not able to fetch userdata from guest Vms using http://<router-address>/latest/user-data
2013-08-26 17:54:39 -07:00
Alex Huang abbae2aa87 Fixed the problem with offerings and templates. These two items due to a previous patch all the way back in 2.1.x versions uses the removed column incorrectly. No one fixed since then. Hence, there's a bunch of findbyidincludingremoved calls in the cloudstack code around these two items. 2013-08-26 17:31:10 -07:00
Alex Huang 2d05fe40c0 Removed getPod, getCluster from ConfigurationManager 2013-08-26 17:31:09 -07:00
Alex Huang ff6b3fd11a Removed getzone 2013-08-26 17:31:08 -07:00
Koushik Das eeac80eaa2 CLOUDSTACK-4350: [Performance Testing] Adding hosts take much longer time than baselines
During host connect multiple listeners gets invoked, one of them is the download listener.
As part of processConnect() method, it checks if templates needs to be downloaded to secondary
store for a particular HV type. As part of that check it computes list of HVs present in the
zone. The earlier logic was to query all hosts (excluding current one) and iterate over them to
make the list. This is not optimal and is bound to have some latency as the number of hosts
increases.
Optimized the logic by querying the list of HVs from the db. directly instead of iterating over
all hosts in the zone.

Conflicts:
	server/src/com/cloud/resource/ResourceManagerImpl.java
2013-08-26 16:18:54 +05:30
Toshiaki Hatano 914e7c4542 Revert "CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor"
This reverts commit 34ae32e0c2.
2013-08-24 07:12:23 +00:00
Toshiaki Hatano 34ae32e0c2 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:
- 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"
2013-08-24 01:39:11 +00:00
Min Chen c6e569755f CLOUDSTACK-4481:API: listEventTypes returns nothing; raises ERROR in MS
logs.
2013-08-23 15:26:57 -07:00
Min Chen 4218ce48f1 CLOUDSTACK-4478:API: ListSwiftsCmd API missing. 2013-08-23 15:26:25 -07:00
Marcus Sorensen 62072514f0 CLOUDSTACK-4661: fix vpcid field in response of creating vpn gateway 2013-08-22 15:17:12 -06:00
Alena Prokharchyk 96a17cc036 CLOUDSTACK-4428: "kvm.snapshot.enabled" flag shouldn't affect detached volumes, or volumes attached to the vm in Stopped/Destroyed state 2013-08-21 16:27:16 -07:00
Alena Prokharchyk d5379b8704 CLOUDSTACK-4392: API volumeresponse - return primary storage information to ROOT and resource domain admin only. 2013-08-21 15:43:06 -07:00
Koushik Das 502c1db103 CLOUDSTACK-3441: [Load Test] High delays between VM being allocated to Pod and network implementation causing delays in VM deployment
The locking code in implement/shutdown network code was not efficient. Even in order to check the current state of the network lock was getting acquired which is not required. This resulted in delays in deploy VM as can be seen from attached logs where the code waited on the lock just to check if network is implemented.
As part of the fix moved out code that is checking if the network is already implemented or shutdowned outside the lock.
2013-08-21 15:25:45 +05:30