Commit Graph

1163 Commits

Author SHA1 Message Date
Min Chen a6f17675d4 CLOUDSTACK-6175:s3.singleupload.max.size option not applicable for
backup snapshot on KVM.
2014-02-26 15:13:49 -08:00
Likitha Shetty 88b5761647 CLOUDSTACK-6146. [VMware] [ESXi 5.5] Live VM migration of an already migrated VM (with storage) across clusters fails
In vCenter 5.5, once a volume is migrated the VMDKs are renamed to match the name of the VM.
Update volume path for every volume belonging to the VM to the corresponding new disk filename.

Conflicts:

	plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
	plugins/hypervisors/vmware/src/org/apache/cloudstack/storage/motion/VmwareStorageMotionStrategy.java
2014-02-26 13:45:44 +05:30
Likitha Shetty 0926bf57f4 CLOUDSTACK-6146. [VMware] [ESXi 5.5] Live storage migration of an already migrated volume fails
In vCenter 5.5, once a volume is migrated the VMDKs are renamed to match the name of the VM.
If a volume has been renamed upon migration update its volumePath to that of the new disk filename.

Conflicts:

	plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
	vmware-base/src/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java
2014-02-26 13:45:43 +05:30
Min Chen b484b48201 Provide separate option for Windows Server 2012 R2 as
an OS type when registering template.
2014-02-25 16:09:29 -08:00
Mandar Barve b0c6d47347 - Updated APICommand annotation to add new flags that indicate if API request or response carry sensitive info - Updated all API classes with the new annotation flag values as per the API's sensitivity - Updated server code to check response annotation before audit logging
Signed-off-by: Daan Hoogland <daan@onecht.net>
(cherry picked from commit df270d6387c362b960064ee5123c14782e767a19)
Signed-off-by: Daan Hoogland <daan@onecht.net>
2014-02-25 22:59:10 +01:00
Wido den Hollander abf3c055c2 templates: Add FreeBSD 10 template
With VirtIO enabled on KVM. FreeBSD 10 supports VirtIO for both the
network and the disks. This frees us from IDE and E1000 which should
also improve performance.
2014-02-25 14:56:24 +01:00
Niels de Vos 14689d7810 Gluster should store volumes in qcow2 format
By default all network disks are in RAW format. Gluster works fine with
QCOW2 which has some advantages.

Disks are by default in QCOW2 format. It is possible to run into
a mismatch, where the disk is in QCOW2 format, but QEMU gets started
with format=raw. This causes the virtual machines to lockup on boot.

Failures to start a virtual machine can be verified by checking the log
of the virtual machine, and compare the output of 'qemu-img info'.

In /var/log/libvirt/qemu/<VM>.log find the URL for the drive:

    -drive file=gluster+tcp://...,format=raw,..

Compare this with the 'qemu-img info' output of the same file, mounted
under /mnt/<pool-uuid>/<img-uuid>:

    # qemu-img info /mnt/<pool-uuid>/<img-uuid>
    ...
    file format: qcow2
    ...

This change makes passes the format when creating a disk located on RBD
(RAW only) and Gluster (QCOW2).

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2014-02-25 12:08:46 +01:00
Hugo Trippaers 52c4f00b26 Findbugs: Fix potential NPE 2014-02-24 14:07:33 +01:00
Hugo Trippaers 6b61fd7d09 Fix CID 1186644: ES: Checking String equality using == or != 2014-02-24 14:06:40 +01:00
Rajesh Battala f960ada36e CLOUDSTACK-6159 Fixed creating volumes(Root, DataDisk) with uuid in primary store 2014-02-23 09:21:30 +05:30
Marcus Sorensen 4fcd0b1a1f if libvirt fails to attach disks, call disconnectPhysicalDisk to clean up 2014-02-20 15:43:27 -07:00
Niels de Vos fe83a85436 Add support for Primary Storage on Gluster using the libvirt backend
The support for Gluster as Primary Storage is mostly based on the
implementation for NFS. Like NFS, libvirt can address a Gluster environment
through the 'netfs' pool-type.
2014-02-20 14:52:01 +01:00
Sheng Yang 5332f67ae8 CLOUDSTACK-6047: Make sure every commands to VR resource is NetworkElementCommand 2014-02-19 19:46:49 -08:00
Nitin Mehta c969aa2595 CLOUDSTACK-6134:
If volume already exists for the vm - register the vm in the inventory and start it.
2014-02-18 18:24:33 -08:00
Hugo Trippaers 24309f6001 Prevent a ClassCastException when the answer is not a SetupAnswer (which happends when something goes wrong while connecting) 2014-02-18 12:37:36 +01:00
Sheng Yang 6bde675f87 Remove SetupGuestNetworkAnswer
It's unnecessary and not different from Answer itself.
2014-02-14 18:10:05 -08:00
Sheng Yang 161e7d93ca CLOUDSTACK-5779: Fix missing clean up period for VR 2014-02-14 18:10:00 -08:00
Hugo Trippaers 97bad4f9b3 Fix checkstyle and license issues 2014-02-14 18:37:47 +01:00
Hugo Trippaers d4d49578dc Findbugs : Fix a number of potential NPEs and minor findings 2014-02-14 18:37:45 +01:00
Sander Botman 16aa73c2c8 Fixing some of the scary bugs possible null pointer: created testSetNicDevIdIfCorrectVifIsNotNull
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2014-02-14 18:37:44 +01:00
Likitha Shetty db91e54bf3 CLOUDSTACK-6112. Adding VPC router to a guest network fails with StringIndexOutOfBoundsException. 2014-02-14 17:01:27 +05:30
Marcus Sorensen df77c4310a CLOUDSTACK-6103: Pass VM iso information along with
PrepareForMigrationCommand, so that destination hypervisor can
mount pool. This further exposed an issue for KVM where iso
was not getting cleaned up upon successful migration, fixed as well.
2014-02-14 00:34:48 -07:00
Marcus Sorensen 7064972997 Fix someone's broken push due to bad checkstyle (VMwareGuru.java unused imports) 2014-02-12 16:26:33 -07:00
Likitha Shetty 9f597ef130 CLOUDSTACK-6056. Enabling static NAT rule for a portable public IP fails with error "Failed to enable static nat".
router.extra.public.nics isn't being honoured and so when an ip that is acquired from the additional VLAN range
is being configured it failed.
2014-02-12 15:53:45 +05:30
Anshul Gangwar b86d45b003 CLOUDSTACK-6054: Changes for making vmsync work for hyper-v. Made changes to PingCommand and
StartupCommand to return the state of all vms on the host.
2014-02-11 12:19:41 +05:30
Laszlo Hornyak bdf50f6d24 Remove assertion
The assertion is built on the assumption that cpuinfo_max_freq is readable by user, which may not be universaly true.
2014-02-10 19:56:54 +01:00
Laszlo Hornyak ab15653d68 Revert "Temporarily ignore getCpuSpeed test"
This reverts commit e4a91d3610.
2014-02-10 19:40:37 +01:00
Laszlo Hornyak e4a91d3610 Temporarily ignore getCpuSpeed test
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 23:13:55 +01:00
Laszlo Hornyak 55b6b6d50b Boolean expression simplification
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 19:19:20 +01:00
Laszlo Hornyak d6a6e8dfa5 Minor Boolean expression simplification
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 19:05:28 +01:00
Laszlo Hornyak 74a3cb4d5e String concatenation cleanup
Replaced string concatenation in loop with StringBuilder

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 19:01:45 +01:00
Laszlo Hornyak 8e3ae40ba2 removed self-assignment
It must have been a copy-paste from the other constructor.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 18:46:36 +01:00
Laszlo Hornyak d22b65f45f replaced Integer reference comparsion with .equals
By default only the Integers between -128..127 are cached (unless overridden by java.lang.Integer.IntegerCache.high system property)
If the inbound or outbound values are higher, the reference comparison won't work.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 18:39:03 +01:00
Laszlo Hornyak 3e3ded75f4 safely close resource with java 1.7 resource block
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 18:27:54 +01:00
Laszlo Hornyak 5e4fec9eca removed unused variables
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 16:55:27 +01:00
Laszlo Hornyak e52a276104 cleanup in LibvirtComputingResource
- minor resource leak cleaned up
- cpu-speed reading method extracted
- test added
- logging added in case of exception

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 16:50:10 +01:00
Wido den Hollander 1baebebda6 test: Expand LibvirtDomainXMLParserTest with Interface test 2014-02-06 14:40:40 +01:00
Wido den Hollander 41c7e22eee test: Add test for LibvirtDomainXMLParser
A couple of changes where made to other classes as well to add
some features to allow more extensive testing.
2014-02-06 14:23:25 +01:00
Rajesh Battala 7f780f26f9 Fixed agent code to handle untagged public vlan while parsing the vlan id 2014-02-05 23:44:14 +05:30
Devdeep Singh a24263fe81 CLOUDSTACK-6030: Encrypt the primary and secondary smb storage password when it is stored in the db. 2014-02-05 15:44:09 +05:30
Alex Huang 7f34282dfa Removed references to secondarystoragevmmanager from code that doesn't use it. 2014-02-05 01:39:15 +00:00
Min Chen 929099518d Fix trailing whitespace. 2014-02-04 15:42:39 -08:00
Min Chen 39efee285f CLOUDSTACK-6027:CreateVolume from snapshot is failing with S3 on Vmware. 2014-02-04 15:08:28 -08:00
Min Chen 9b21da65d1 CLOUDSTACK-6025:CreateTemplate from snapshot in NFS is failing , after
migarting to S3 datastore.
2014-02-04 11:01:51 -08:00
Daan Hoogland 0839fbce67 CLOUDSTACK-6023 vcpus should not be higher then xen specifies 2014-02-04 18:41:53 +01:00
Wido den Hollander 3989d6c481 kvm: Resize volumes using libvirt
This saves us a lot of code and libvirt is probably a better
place to do this.

libvirt-java now has the support we want, so we can now resize volumes
with libvirt.

(C)LVM volumes can't be resized using libvirt, so we have to
invoke a resize script for that.
2014-02-04 14:26:51 +01:00
Min Chen 30695d7f93 CLOUDSTACK-6019:CreateVolume from snapshot in NFS is throwing Warning
"sync snapshot from cache to region wide store failed for image store
test".
2014-02-03 16:41:04 -08:00
Wido den Hollander 5ae12f31b7 rbd: Set client timeout to 30 seconds.
By default the client_mount_timeout setting in librados is 300 seconds,
but that causes the connect to the Ceph cluster to block for 5 minutes
if the Ceph cluster is not available.

This patch is not ideal, but it mitigates the problem for now.

At a later point all this librados/librbd code should go back to libvirt
again, but the current versions of libvirt in the distributions are
to old for all the features we require.

For now this should prevent the CloudStack agent blocking for 5 minutes
when the Ceph cluster isn't available.

This is also tracked at the Ceph tracker: http://tracker.ceph.com/issues/6507
2014-02-03 16:07:00 +01:00
Likitha Shetty 06f79a881c CLOUDSTACK-5994. Hitting IndexOutOfBoundsException in GetVmStatsCommand after upgrade.
To obtain network read/write statistics, multiply sample duration with the
average of the particular performance metric obtained over the sample period.
2014-01-30 18:31:38 +05:30
Marcus Sorensen 05189361b7 CLOUDSTACK-5968 last patch fixes setting low currentMemory during
overprovision, this one explicitly tells libvirt we dont want a
balloon device (won't use it anyway, and will just suck up a percent
of vm memory)
2014-01-28 11:51:23 -07:00
Marcus Sorensen 1530c162e5 CLOUDSTACK-5968 create vm.memballoon.disable agent parameter 2014-01-28 10:44:44 -07:00
Hugo Trippaers 3bd38eb17e Findbugs finding : Incorrect use of equality 2014-01-28 08:58:28 +00:00
Likitha Shetty 4583bac05b CLOUDSTACK-5796. [VMware] Size column is not getting updated in snapshot_store_ref table when a snapshot is backed up in secondary storage.
Calculate and update the size of a backed up snapshot. This snapshot size is in turn used to update the secondary_storage count for an account.
2014-01-28 09:21:05 +05:30
Rajesh Battala 39447cce6e CLOUDSTACK-5941 User Vm deployment on HyperV is failing due to change in the userdata script location and moved to json model 2014-01-28 07:03:08 +05:30
Rajesh Battala 807dc09138 CLOUDSTACK-5561 Support of multiple public vlans on VR running in HyperV 2014-01-28 07:03:08 +05:30
Marcus Sorensen daeea46da0 CLOUDSTACK-5956 remove persist flag during live migration 2014-01-27 11:04:05 -07:00
Laszlo Hornyak 884e8c6510 replaced Long instantiation with parseLong
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-01-25 16:11:51 +01:00
Sheng Yang 3c955c3659 CLOUDSTACK-5779: Make VmwareResource use VirtualRoutingResource 2014-01-24 19:57:52 -08:00
Sheng Yang 069bc3686e CLOUDSTACK-5779: Make CitrixResource to use VirtualRoutingResource 2014-01-24 18:28:31 -08:00
Sheng Yang 285f23f11b CLOUDSTACK-5779: Generalize calling to execute or create file for KVM 2014-01-24 18:28:25 -08:00
Sheng Yang 2d3022594c CLOUDSTACK-5779: Generalize calling to execute or create file for Vmware 2014-01-24 18:28:00 -08:00
Sheng Yang 2d100f1269 CLOUDSTACK-5779: Generalize calling to execute or create file for Xen 2014-01-24 18:27:55 -08:00
Devdeep Singh aab881be21 CLOUDSTACK-5942: The agent at places logs the password of the user. It should mask the
password from the message string before writing to the log. Made a change to do so.
2014-01-24 15:04:00 +05:30
Wido den Hollander dad98ef4de test: Add UnitTest for LibvirtSecretDef 2014-01-23 21:09:25 +01:00
Hugo Trippaers 50b6de4714 Findbugs finding : Fix potential NPE 2014-01-23 16:14:56 +00:00
Hugo Trippaers 5e0d61bf98 Findbugs finding: Fix object comparison with == instead of equals 2014-01-23 15:53:26 +00:00
Hugo Trippaers ecdee7da9a Findbugs finding: Fix incorrect comparison, <VbdType>.equalsi(<String>) will always be false and should be <VbdType>.equals(<VbdType>) 2014-01-23 15:43:50 +00:00
Jayapal 4b3784a98e CLOUDSTACK-5938 Failing add host in security group enabled zone, when CSP is not installed 2014-01-23 18:14:12 +05:30
Santhosh Edukulla f999a01837 Added Fix for CLOUDSTACK-5875
Added fix for exception and listing. Mentioned details under bug.
Post the fix, simulator works fine.

Signed-off-by: Santhosh Edukulla <Santhosh.Edukulla@citrix.com>
Signed-off-by: Koushik Das <koushik@apache.org>
2014-01-23 17:11:33 +05:30
Devdeep Singh 538092b73e Hyper-V agent should log to the event viewer. Changed the default
log appender for the agent.
2014-01-23 13:45:55 +05:30
Hugo Trippaers c2da280347 Add a zipped version of the hyperv image that we can store in the archives on the jenkins server 2014-01-23 09:06:33 +01:00
Anshul Gangwar b2de225f54 CLOUDSTACK-5703: putting rdp server port value in host details 2014-01-23 10:54:08 +05:30
Anshul Gangwar 5941ac46d2 CLOUDSTACK-5344 commit for console proxy rdp for hyperv 2014-01-23 10:54:08 +05:30
Wido den Hollander 5747b80124 test: Add UnitTest for Libvirt Storage Pool definitions 2014-01-22 21:52:39 +01:00
Hugo Trippaers 532bf4b190 Get rid of compiler warnings and dead code in plugin-hypervisor-vmware 2014-01-22 09:55:38 +01:00
Anthony Xu cae19d0b5a fix build 2014-01-21 19:34:54 -08:00
Sheng Yang 1767ddac77 CLOUDSTACK-5779: Update vmdata command in Vmware
To use Gson rather than copy a file to it, follow the same as Xen and KVM.
2014-01-21 18:59:30 -08:00
Anthony Xu b79f949e1b CLOUDSTACK-5923: CS doesn't do master switch for XS any more, CS will depend on XS HA to do master switch, XS HA needs to be enabled.
Conflicts:
	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/discoverer/XcpServerDiscoverer.java
	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerConnectionPool.java
2014-01-21 18:54:53 -08:00
Wido den Hollander f7ee27cd1c test: Add Unit Test for LibvirtVMDef DiskDef 2014-01-22 00:04:29 +01:00
Sheng Yang d4e069ecc8 Fix noredist build issue
Introduced by:

commit ac65f8fddf
Author: Hugo Trippaers <htrippaers@schubergphilis.com>
Date:   Mon Jan 20 18:03:02 2014 +0100

    CLOUDSTACK-5884 make getTargetSwitch(NicTO nicTo) do all the work to select
switch name, type and vlan token. Change preference to use the tags set on the
physical network.
2014-01-21 11:31:40 -08:00
Sheng Yang e88cc488e5 CLOUDSTACK-5779: Move loadbalancer to use routerProxy 2014-01-20 18:48:46 -08:00
Hugo Trippaers ac65f8fddf CLOUDSTACK-5884 make getTargetSwitch(NicTO nicTo) do all the work to select switch name, type and vlan token. Change preference to use the tags set on the physical network.
Conflicts:
	plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
2014-01-20 18:09:01 +01:00
Mike Tutkowski 37332ad9d4 CLOUDSTACK-5873: [Automation] Failed to attach volume to VM, if the vm is created with option startvm=false 2014-01-18 18:07:10 -07:00
Sheng Yang 0ea1c7dfc4 CLOUDSTACK-5779: Move firewall to use routerProxy 2014-01-17 12:36:42 -08:00
Sheng Yang ce67e24d0a CLOUDSTACK-5779: Move ipAlias to use routerProxy 2014-01-17 12:36:42 -08:00
Devdeep Singh e9e5b84747 CLOUDSTACK-5894: A template created from a volume on hyper-v became unusable after
the management server was restarted. The template.properties file created for the
template has the format field in upper-case. This caused the template service to
not to recognise the format and it removed the entry from the template_store_ref
table in db. Fixed the format field in the templatee.properties.
2014-01-17 19:17:17 +05:30
Saksham Srivastava 06f8c1de75 CLOUDSTACK-5692: obscure passwords when using cifs as storage 2014-01-17 14:00:24 +05:30
Likitha Shetty 008b029a29 CLOUDSTACK-5891.[VMware] If a template has been registered and "cpu.corespersocket=X" template details have been added for it,
then any instance deployed from that template should have X cores per socket
2014-01-17 11:00:48 +05:30
Sheng Yang 0cdf0f6f67 CLOUDSTACK-5779: Moving bumpUpPriority, edithosts.sh, dnsmasq.sh to use routeProxy 2014-01-16 16:03:09 -08:00
Sheng Yang b703b43d7c CLOUDSTACK-5779: Refactor mechanism for calling routerProxy in CitrixResource 2014-01-16 16:02:53 -08:00
Mike Tutkowski e9c9887ee0 CLOUDSTACK-5873: [Automation] Failed to attach volume to VM, if the vm is created with option startvm=false 2014-01-16 12:20:54 -07:00
Mike Tutkowski 3ef560d925 CLOUDSTACK-5873: [Automation] Failed to attach volume to VM, if the vm is created with option startvm=false 2014-01-16 12:15:18 -07:00
Anshul Gangwar 823abe6a23 CLOUDSTACK-5880: Communication between management server and hyper-v agent should be secure. 2014-01-16 14:48:28 +05:30
Jayapal a41c9b9631 CLOUDSTACK-5867 Fixed service monitor command path 2014-01-16 11:29:03 +05:30
Alex Huang 68b8891c62 Removed all reminants of the IdentityService. Created the KeysManager to move the management
of keys out of management server
2014-01-14 13:11:35 -08:00
Devdeep Singh f58d77c8d1 CLOUDSTACK-5689: System vm creation on local storage fails for hyper-v. A
null pointer exception was getting generated when a VolumeTO object was
serialized to create an answer object. If a local storage is used the uri
field will be null. Added null checks for the same.
2014-01-14 19:55:00 +05:30
Likitha Shetty a957d52a3c CLOUDSTACK-5707. Hitting multiple 'User unauthenticated' exceptions when vCenter is upgraded to 5.5 from 5.1.
We hit these excptions whenever a management server held session that was with the old 5.1 vCenter server
is used to make resource calls to the new 5.5 vCenter.
Validate a vCenter session context before it is being used to make a resource call.
And if the context is invalid then discard the context and retrieve a new one.
During the invalidation of an old context handle the context disconnect better
by catching the appropriate exception and returning a newly created context.

Conflicts:

	plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareContextFactory.java
	plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
	plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareSecondaryStorageResourceHandler.java
	vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareContext.java
2014-01-14 09:38:50 +05:30
Devdeep Singh 641f85cf6f CLOUDSTACK-5657: Run the service as an account (hyper-v admin on host) so
that migration can work across hosts.
2014-01-10 17:08:01 +05:30
Devdeep Singh db2b025608 CLOUDSTACK-5639: If path field in the TO already has the complete path, do
not try to generate the path.
2014-01-10 16:37:43 +05:30
Mike Tutkowski a354d969ce Merge from 4.3: CLOUDSTACK-5823: Taking a VMware snapshot doesn't work 2014-01-09 23:10:40 -07:00