Commit Graph

170 Commits

Author SHA1 Message Date
Kelven Yang c75b0044ef CLOUDSTACK-5765: cleanup internal serialization and exception propagation issues 2014-01-07 17:12:06 -08:00
Koushik Das 2b2d5998d7 CLOUDSTACK-5002: unable to destroy vm ;VM destroy failed in Stop i-2-59-VM Command due to You gave an invalid object reference. The object may have recently been deleted.
This is happening as concurrent operations are happening on the same VM. Earlier this was not seen as all vm operations were synchronized at agent layer. By making execute.in.sequence
global config to false this restriction is no longer there. In the latest code operations to a single vm are synchronized by maintaining a job queue. In some scenarios the destroy vm operation
was not going through this job queue mechanism and so was resulting in failures due to simultaneous operations.
2014-01-06 18:19:06 +05:30
Kelven Yang 22a1b8c3fc CLOUDSTACK-5672: Fix VM work job serialization issues in Add/Remove nic 2014-01-03 17:20:24 -08:00
edison db25228b23 CLOUDSTACK-5329: fix NPE in storage migration for zone-wide primary storage, and also the serization error. 2014-01-03 16:44:21 -08:00
Kelven Yang ce7bc8fd90 CLOUDSTACK-5725: put origin flow context id into log4j context prefix to link jobs with the orchestration work flow in logging 2014-01-03 15:47:03 -08:00
Kelven Yang 9cad092054 CLOUDSTACK-5767: Remove the logic of using underlying job related fields for volume specific logic. 2014-01-03 13:10:32 -08:00
Harikrishna Patnala 6ce46e94f5 CLOUDSTACK-5730: [Automation]DirectAgentAttache's send command fails due to ArrayIndexOutOfBoundsException; Unable to cleanup hypervisor's datastructures as part of Delete Account Job
Signed-off-by: Koushik Das <koushik@apache.org>
2014-01-03 15:42:31 +05:30
Kelven Yang a03c8fe668 Fix a typo caused problem in attach-volume process 2013-12-31 15:13:10 -08:00
Kelven Yang 3094160718 CLOUDSTACK-669: Finalize VM work dispatching mechanism to avoid big switch statement 2013-12-31 13:32:28 -08:00
Mike Tutkowski e65fae412c CLOUDSTACK-5662: XenServer can't discover iSCSI targets with different credentials 2013-12-28 21:43:28 -07:00
Mike Tutkowski 8eb430f602 CLOUDSTACK-5662: XenServer can't discover iSCSI targets with different credentials 2013-12-28 00:12:11 -07:00
Kelven Yang dc303fda6e CLOUDSTACK-669: Convert volume snapshot orchestration flow to make it be serialized with other VM operations 2013-12-27 16:40:50 -08:00
Devdeep Singh 7e54ca8831 CLOUDSTACK-5456: Download root volume when vm is in stopped state fails on hyper-v. Made
changes to make sure the volume entry is created in the db with the right image format.
2013-12-26 19:11:11 +05:30
Devdeep Singh 079323f591 CLOUDSTACK-5420: The agent manager wasn't transitioning the host to maintenance
mode if their are no vms running on the host. Made the change to do so.
2013-12-26 11:14:01 +05:30
Kelven Yang 497feab841 CLOUDSTACK-669: covert VMsnapshot orchestration flows to make them be serialized with other VM operations 2013-12-20 16:45:27 -08:00
Harikrishna Patnala 1c6b146d04 CLOUDSTACK-5554: Custom disk offering allows to create a datadisk with size greater than custom.diskoffering.size.max value 2013-12-19 15:45:43 +05:30
edison 15403a1f29 add xenserver 6.2.0 hotfix support, to optimize vdi copy
add xenserver hot fix
2013-12-18 18:22:52 -08:00
Koushik Das efe2549e7a CLOUDSTACK-5458: cpu speed is not getting updated in vm_instance table after service offeirngs change
Removed cpu, ram and cpu speed fields from the vm_instance table as these are not used
2013-12-18 15:34:44 +05:30
Nitin Mehta dc0f8ebdf1 CLOUDSTACK-4941:
During HA call different planners which skip some heurestics
2013-12-17 18:32:46 -08:00
Kelven Yang ed2125ec34 CLOUDSTACK-669: convert volume attach/detach flows to make them be serialized with other VM operations 2013-12-17 17:11:05 -08:00
Prachi Damle 35afd012f5 CLOUDSTACK-4852: Since upgrade to 4.2 only users at the zone-attached domain level can manipulate VMs
Changes:
- The vmprofile owner passed in to the planner should be the VM's account and not the caller
- Do not do the access check for Root Admin
2013-12-17 11:23:21 -08:00
Bharat Kumar 9118bbf934 CLOUDSTACK-5495 Unable to stop VM. adding the changes to make the global config execute.in.sequence.hypervisor.commands configurable for stopvm command.
Signed-off-by: Koushik Das <koushik@apache.org>
2013-12-17 17:43:19 +05:30
Murali Reddy df16623533 CLOUDSTACK-4616: When system Vms fail to start when host is down , link
local Ip addresses do not get released resulting in all the link local
Ip addresses being consumed eventually.

fix ensure Nics with reservation strategy 'Start' should go through
release phase in the Nic life cycle so that release is performed before
Nic is removed to avoid resource leaks.
2013-12-16 19:03:16 +05:30
Kelven Yang 96678bbbfb CLOUDSTACK-669: refactor VM work job dispatcher to allow volume/snapshot manager to participate serialized job handling 2013-12-13 17:26:13 -08:00
Kelven Yang 619f5381d5 CLOUDSTACK-669: put user vm work under new vmsync model 2013-12-11 16:19:57 -08:00
Jayapal 3caef2b1d5 CLOUDSTACK-5278 Fixed cleaning up egress default rules on VR and SRX
1. Egress default policy rules is send to the firewall provider. It is up to the
    provider to configure the rules.
   2. The default policy rules are send for both allow and deny default policy.
   3. On network shutdown rules for delete are send.
   4. For VR and SRX, by default deny the traffic. So no default rule to deny traffic is required.
2013-12-10 14:43:13 +05:30
Kelven Yang d931718ab2 CLOUDSTACK-669: put system vm work under new vmsync model 2013-12-06 15:48:10 -08:00
Prachi Damle 13d2caa6b5 CLOUDSTACK-5401: VM migration during host maintenance fails if pool.storage.capacity.disablethreshold is lowered
Changes:
- During Vm migration while finding a new host within the cluster, we need to set the storagepool Id to the deployment plan too.
- This will indicate the planner that the volumes are ready and no need to find new pool
- This in turn will prevent the threshold check done during the pool allocation. This step is not needed since there is no need to allocate pools newly.
- Thus the migration wont fail because th threshold check fails.
2013-12-06 13:18:40 -08:00
Prachi Damle 3a6adb3c58 CLOUDSTACK-5399: Add option to createVolume API to specify a VM, to place the volume appropriately and attach immediately
Changes:

    - Added 'virtualmachineid' parameter to the createVolume API to specify a VM for the volume. The Vm should be in 'Running' or 'Stopped' state.
    - This parameter is used only when createVolume API is called using snapshotid parameter
    - When this parameter is set, the volume is created from the snapshot in the pod/cluster of the VM. Also the volume is then attached to the VM in the same request
    - If attach Volume fails but create has succeeded, the API errors out but the Volume created remains available. User may attach the same volume later
    - When Vm is provided, but if no storage pool is available in the VM's pod/cluster then the volume is not created and API fails.
2013-12-06 13:18:37 -08:00
Anthony Xu 0847ccfe97 XS VMmetadata platform contains virtual platform related info, CS should save platform info in DB to migrate the VM to other Cluster
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	server/src/com/cloud/template/TemplateManagerImpl.java
2013-12-05 01:17:56 -08:00
Nitin Mehta ee82870aa2 CLOUDSTACK-5349:
Volume create usage event and resource count werent getting registered. Check its type rather than it is UserVm since the code is coming from VirtualMachineManager.
2013-12-04 10:53:42 -08:00
Alena Prokharchyk b315ca1895 CLOUDSTACK-5261: support for alert publishing via Root admin web api
listAlerts: introduced new parameter "name" to the alertResponse

Added new Admin API - generateAlert. Available to ROOT admin only

listAlerts: implemented search by alert name
2013-12-03 17:08:23 -08:00
Bharat Kumar 089c7bc9f8 CLOUDSTACK-5161 use a map to specify the custom parameters instead of having one parameter each 2013-12-03 16:53:58 +05:30
Bharat Kumar 72e0354661 CLOUDSTACK-5161 enable scaling and upgrading of a vm using custom offering
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-29 18:32:16 +05:30
Alena Prokharchyk 43119bcbdd Added new paramerer "start" to createVPC command. When false is passed in, VPC won't be started (its VPC VR won't get implemented) till the point when the first netwotrk gets implemented in the VPC.
The parameter is optional and true by default to preserve the original behavior
2013-11-22 09:40:12 -08:00
Alena Prokharchyk 592863f1ef Removed unused agent lb timer
Conflicts:
	engine/orchestration/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java
2013-11-21 14:34:42 -08:00
Kelven Yang 5a44de282b CLOUDSTACK-669: side-by-side VM sync management at manager level 2013-11-20 18:22:38 -08:00
Mike Tutkowski bb8794203e CLOUDSTACK-4810: Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VMware) 2013-11-12 16:52:12 -07:00
Laszlo Hornyak 6f3688d13d Fill the creationMonitors based on priority
If not priotity, append to the end of the list.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-11-08 21:51:04 +01:00
Bharat Kumar 7095ea2b5e CLOUDSTACK-4738 Dynamic compute offering.
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-07 12:41:20 +05:30
Mike Tutkowski 10c513a259 CLOUDSTACK-4810: Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VMware) 2013-11-06 21:02:39 -07:00
Kelven Yang 191dc80fa4 VM power state for job oritented sync processing 2013-11-05 19:00:37 -08:00
Harikrishna Patnala a286dec098 CLOUDSTACK-4908: CPU socket count of host Adding cpu socket count of the host in hostresponse
Signed-off-by: Koushik Das <koushik@apache.org>
2013-11-05 16:12:36 +05:30
Rajesh Battala 989c6e6914 Modified cloud-early-config to configure, when the VR boots up in HyperV Environment
Implemented commands that are required for VR to bootup and Vm deployment to work
Modified hyperv agent code, to deploy VR with Boot Args, boot args passed to VR using KVP Exchange Component.
Fix for VR to boot up and get configured with boot args, Fixed issue in VolumeOrchestrator
Implemented SetFirewallRulesCommand in HyperV Resource
Implemented VR network commands to provide the necessary services from VR
Fixed hyperv localstorage path encode url issue. encode is converting space to '+'
2013-11-04 18:48:53 +05:30
Koushik Das 269a4ef11e CLOUDSTACK-4855: Throttle based on the # of outstanding requests to the directly managed HV host (direct agents)
Cloudstack sends requests to directly managed HV hosts (direct agents) using the direct agent thread pool. The size of the pool is determined by global config direct.agent.pool.size defaulted to 500.

Currently there is no restriction on the number of threads a direct agent can use from this shared thread pool to send requests to the host. This is fine as long as the host is responding to requests
in a reasonable amount of time. But if there is a considerable delay in getting response, the thread remain blocked for that much time. As more commands are send to the slow host threads keep getting
blocked. This can eventually lead to a situation where requests to healthy hosts cannot be processed as there are not enough free threads.

The problem being addressed here is to localize the impact of few bad hosts, so that entire management server is not affected.

One such way is to throttle based on the # of outstanding requests on per host basis. The outstanding requests to a host will be a % of direct agent pool size. This is configurable based on
direct.agent.thread.cap. The default value is 0.1 or 10%, a value of 1 would mean the old behavior where there is no upper cap. This will ensure that the impacted host will be bound by a upper cap on the number of threads it can use to process requests and not the entire pool.
2013-11-04 14:52:26 +05:30
Alena Prokharchyk 9c773fbd68 DestroyNetwork: fixed regression bug - the call always returns false after finishing the transaction. Return true instead. 2013-10-31 15:25:57 -07:00
Alena Prokharchyk 591dcd1d1c ResourceDetails: added "display" field to a bunch of VOs - determines whether the detail should be returned to the regular user 2013-10-29 09:18:11 -07:00
Mike Tutkowski 858ce76665 Extend support of CloudStack-managed storage to KVM 2013-10-27 22:30:03 -06:00
Alena Prokharchyk 0fb4d9d5a2 Made all resource details DAOs (nic_details, user_vm_details, template_details, volume_details, service_offering_details) extend from the same base class as although details are being stored in diff tables, those tables have the same structure and same accessors. 2013-10-25 10:56:19 -07:00
Darren Shepherd 81d01369d7 Merge commit 'df728fcf41ba0dfddabfaadea8cbcb77d18bfa96'
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-10-23 12:31:53 -07:00