647 Commits

Author SHA1 Message Date
Edison Su
0ed441c690 CLOUDSTACK-2637: fix upload volume 2013-05-24 19:00:52 -07:00
Wido den Hollander
bef3a2edb7 CLOUDSTACK-1191: rbd: Use cloning for deploying templates instead of a copy
RBD format 2 supports cloning (aka layering) where one base image can serve
as a parent image for multiple child images.

This enables fast deployment of a large amount of virtual machines, but it also
saves spaces on the Ceph cluster and improves performance due to better caching.

Qemu-img doesn't support RBD format 2 (yet), so to enable these functions the
RADOS/RBD Java bindings are required.

This patch also enables deployment of System VMs on RBD storage pools. Since we
no longer require a patchdisk for passing the boot arguments we are able to deploy
these VMs on RBD.
2013-05-24 16:00:08 +02:00
Jayapal
d8f5f2ea10 CLOUDSTACK-2671 Updated vpc private gateway scipt args 2013-05-24 18:54:04 +05:30
Edison Su
3ec52807f1 CLOUDSTACK-2593: fix migrate volume between pools through secondary storage 2013-05-23 18:26:16 -07:00
Min Chen
98af424053 Merge branch 'master' into object_store. 2013-05-23 18:00:15 -07:00
Edison Su
4e4112fcec fix attach volume for kvm 2013-05-23 13:51:46 -07:00
Marcus Sorensen
fce59b8fc4 Summary: Code cleanup for KVM - look up domains by name rather than coversion
Detail: We do two strange things, #1, when a vm is created, we create the uuid
for the domain by converting the name into a uuid, then subsequently, any time
we look for a domain, we convert its name to a uuid and domainLookupByUUID. This
is an unnecessary obfuscation, so instead we just do a domainLookupByName. As
a bonus, we are now setting the domain's uuid to be the cloudstack uuid. It is
no longer used anywhere, but will be less confusing to admins. This shouldn't
affect upgrades, since we can always lookup existing VMs by name.

Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1369287049 -0600
2013-05-22 23:30:49 -06:00
Marcus Sorensen
795fd803da Summary: KVM - double migration can fail
Detail: Undefine VM after migration. Lingering domain definitions cause
migrations back to the original host to fail, since domain already exists.

BUG-ID: CLOUDSTACK-2640
Bugfix-for: 4.1.0,4.2.0
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1369285950 -0600
2013-05-22 23:12:30 -06:00
Devdeep Singh
85ff507094 CLOUDSTACK-2602. XenServer storage motion strategy returns true for canHandle even though hosts are of different hypervisor type. Fixed the canHandle routine to return true only if source and destination hosts are of type XenServer. 2013-05-22 17:47:11 +05:30
Nitin Mehta
a67728b312 CLOUDSTACK-2567 - check for ! dmcEnabled. 2013-05-22 15:31:18 +05:30
Min Chen
01e36538aa Fix a bug in creating volume path in copy command. 2013-05-21 22:18:35 -07:00
Edison Su
383be568b3 CLOUDSTACK-2527: enable attach/detach xs tool iso 2013-05-21 19:13:29 -07:00
Edison Su
536feab856 when copy volume to secondary storage, need to add full volume path 2013-05-21 17:47:38 -07:00
Nitin Mehta
a58ee74e1c CLOUDSTACK-2567 - Check whether DMC - dynamic memory control is enabled for the hyervisor before trying to scale the vm. If its not then dont scale and instead throw and exception. 2013-05-21 16:39:25 +05:30
Devdeep Singh
904a2a87f7 CLOUDSTACK-2601 : xen.heartbeat.interval doesn't change the parameter passed to xenheartbeat.sh. Made changes to read the parameter from config and to pass it to the resource.
Signed-off-by: Devdeep Singh <devdeep@gmail.com>
2013-05-21 13:33:07 +05:30
Prasanna Santhanam
8da7ec05f1 CLOUDSTACK-2085: DMC enable guest scaling
When dmc is enabled allow cloudstack to scale the VM between dynamic
ranges. This requires a further commit where there is enough memory
available between dynamic-max and static-max for the VM to scale under
memory pressure. See the TODO in Xenserver56FP1Resource.java

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-05-20 17:51:49 +05:30
Prasanna Santhanam
85d54cd1c0 CLOUDSTACK-2554: Incorrect compute of minmemory and cpu
23e54bb0 introduced multiple hypervisors support for cpu and memory
overcommit. Here the HypervisorGuru base which determines the min, max
range for the memory for all hypervisors computes the minCpu using the
MemoryOverCommit ratio and minMemory using the CpuOverCommit ratio.

Minor typo/logic issue but massive damage across all HV if enabled ;)

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-05-19 18:34:27 +05:30
Prasanna Santhanam
7ea2c950f5 CLOUDSTACK-2554: Ensuring that we honor hypervisor xen's memory constraints
When setting memory constraints on Xen guests we should honor:
static-min <= dynamic-min <= dynamic-max <= static-max

Our VmSpec while allows the guests to like between dynamic-min and
dynamic-max the memory set by the resource set the static min to be
equal to the dynamic max. This restricts the hypervisor from ensuring
optimized memory handling of guests.

see: http://wiki.xen.org/wiki/XCP_FAQ_Dynamic_Memory_Control#How_does_XCP_choose_targets_for_guests_in_dynamic_range_mode.3F

Another fix was related the restrict_dmc option. when enabled (true)
this option disallows scaling a vm. The logic was reverse handled
allowing scaling when restrict_dmc was on. This control flow is now
fixed.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-05-19 18:34:27 +05:30
Prasanna Santhanam
806aeb990d CLOUDSTACK-2554: CloudStack fails to load XCP 1.6 hypervisors
Missing default constructor fails the agent manager reloading the XCP
resource on reboot of management server. This is fixed by using the
default constructor as do other Xen resources and include a new resource
ala XenServers for XCP1.6.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-05-19 18:34:26 +05:30
Wido den Hollander
239bb13dde Better parse domain XMLs so network devices can be detached as well 2013-05-18 10:34:22 +02:00
Wido den Hollander
5646f5e977 rbd: Allow RBD disks to be attached to a Instance 2013-05-17 17:34:05 +02:00
Edison Su
f7c1b711ad merge to master 2013-05-16 23:56:20 -07:00
Prachi Damle
a2eb7bab1e CLOUDSTACK-2056: DeploymentPlanner choice via ServiceOffering
- Changes merged from planner_reserve branch
- Exposing deploymentplanner as an optional parameter while creating a service offering
- changes to DeploymentPlanningManagerImpl to make sure host reserve-release happens between conflicting planner usages.
2013-05-16 15:02:17 -07:00
Vijayendra Bhamidipati
15be97772e PVLAN : Implementing PVLAN deployment capability for VMware deployments in cloudstack. 2013-05-16 14:50:16 -07:00
Edison Su
389d7c1fa0 if object is already stored in cache store, don't download again 2013-05-16 14:34:06 -07:00
Wei Zhou
a29e39365a CLOUDSTACK-2545: Change unit of network statistics from 1000 to 1024 for KVM
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2013-05-16 22:07:50 +01:00
Marcus Sorensen
20a9d877cf Summary: Use hypervisor as clock source for system vms
BUG-ID: CLOUDSTACK-2492
Bugfix-for: 4.1,master
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1368635782 -0600
2013-05-15 19:41:50 -07:00
Wido den Hollander
738067077a CLOUDSTACK-2515: Verify if the targetPath isn't null before comparing 2013-05-15 19:41:49 -07:00
Harikrishna Patnala
ca0d2ef8c2 CLOUDSTACK-2085: VM weight on xen remain same as before vmscaleup ;because "Add-To-VCPUs-Params-Live.sh" is not getting copied on xs host
Fixed by updating the patch files that has
 entries to copy scipts on xenserver. Here we added
 Add-To-VCPUs-Params-Live.sh

Added a check on Host params whether host restricts Dynamic memory control(DMC) to able to allow scale up VM.
If DMC is not enabled then static max and min are set to SO.

Signed Off by - Nitin Mehta <nitin.mehta@citrix.com>
2013-05-15 19:41:48 -07:00
Sheng Yang
2d2c0c48cd Merge branch 'pvlan'
Conflicts:
	scripts/vm/hypervisor/xenserver/xenserver60/patch
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/NetworkServiceImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockVpcVirtualNetworkApplianceManager.java
2013-05-15 16:08:08 -07:00
Marcus Sorensen
bfc5887a1b Summary: Use hypervisor as clock source for system vms
BUG-ID: CLOUDSTACK-2492
Bugfix-for: 4.1,master
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1368635782 -0600
2013-05-15 10:36:22 -06:00
Wido den Hollander
68a428f84d CLOUDSTACK-2515: Verify if the targetPath isn't null before comparing 2013-05-15 13:57:58 +02:00
Harikrishna Patnala
ffe90c0059 CLOUDSTACK-2085: VM weight on xen remain same as before vmscaleup ;because "Add-To-VCPUs-Params-Live.sh" is not getting copied on xs host
Fixed by updating the patch files that has
 entries to copy scipts on xenserver. Here we added
 Add-To-VCPUs-Params-Live.sh

Added a check on Host params whether host restricts Dynamic memory control(DMC) to able to allow scale up VM.
If DMC is not enabled then static max and min are set to SO.

Signed Off by - Nitin Mehta <nitin.mehta@citrix.com>
2013-05-15 16:17:21 +05:30
Edison Su
a0c3d280b4 merge to master 2013-05-15 00:40:53 -07:00
Edison Su
879a954b98 delete snapshot at the backend 2013-05-14 21:58:07 -07:00
Edison Su
68ffe1c706 fix bug in create volume from snapshot 2013-05-14 16:38:02 -07:00
Jayapal Reddy
2d950e2858 CLOUDSTACK-768: ACL on private gateway 2013-05-13 19:24:23 +05:30
Bharat Kumar
052c24c4d1 CLOUDSTACK-702: Multiple ip ranges in different subnets.
This feature enables adding of guest ip ranges (public ips)  form different subnets.

In order to provide the dhcp service to a different subnet we create an ipalias on the router. This allows the router to listen to the dhcp request from the guest vms and respond accordingly. Every time a vm is deployed in the new subnet we configure an ip alias on the router. Cloudstack uses dnsmasq to provide dhcp service. We need to configure the dnsmasq to issue ips on the new subnets. Added a new class dnsmasqconfigurator which generates the dnsmasq confg file, this file replaces the old config in the router.

The details of the alias ips are stored in db in the nic_ip_alias table. Every time a new subnet is added one of the ip from the subnet is used to configure the ip alias.

I have pushed the code to  https://github.com/bvbharatk/cloud-stack/tree/Cloudstack-702 , also rebased the code with master.
I need to test the code for advanced sg enabled network using kvm.

I have added the unit test
Marvin tests are at https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=53e4965

Also accomodated some of the changes suggested by koushik.
corrected the import statements. renamed the IpAlias command to createIpAlias command.

This feature supports only ipv4
2013-05-13 17:06:44 +05:30
Edison Su
492127c035 fix kvm 2013-05-12 18:27:37 -07:00
Edison Su
e8259e38c2 integration test is passed again 2013-05-12 14:41:06 -07:00
Edison Su
993187622e fix compile, after rebase to master 2013-05-10 20:39:02 -07:00
Edison Su
36146e7f65 create volume command needs to send to vmwareresource 2013-05-10 19:26:44 -07:00
Edison Su
90de46c4fe get vmware works 2013-05-10 19:26:44 -07:00
Alex Huang
342624e0eb Merged with head 2013-05-10 16:33:57 -07:00
Alex Huang
3047929367 Merged 2013-05-10 16:21:43 -07:00
Edison Su
47f6d650f8 fix vmware build 2013-05-10 12:48:49 -07:00
Edison Su
15fc4e137d add license header 2013-05-10 11:40:11 -07:00
Edison Su
e444867e61 fix compile 2013-05-10 09:47:09 -07:00
Edison Su
42e25a22fc refactor kvm/vmware resource code 2013-05-09 23:10:05 -07:00
Hari Patanala
75a2457af6 CLOUDSTACK-658 - Adding scale vm support for vmware with unit tests
Signed off by : Nitin Mehta <nitin.mehta@citrix.com>
2013-05-10 09:32:08 +05:30