Commit Graph

549 Commits

Author SHA1 Message Date
Murali Reddy aa4f654929 bug 9419: implement api to reset resource count
added a command to reset resource count for account/domain based on real usage of resources
2011-06-16 18:59:38 +05:30
kishan dfd3e128f5 bug 8879: Send network usage command for domain routers in Running state only
status 8879: resolved fixed
2011-06-15 14:17:30 +05:30
kishan 8d87cf3506 bug 6770: Alert will be sent when deploying User VM fails
status 6770: resolved fixed
2011-06-15 12:40:23 +05:30
Abhinandan Prateek db94ece73b bug 10062: better error message 2011-06-15 10:05:45 +05:30
Alex Huang 1ac7276942 bug 10260: propagate ha and deployment planner fixes 2011-06-13 17:36:32 -07:00
Alex Huang 1561275838 bug 10260: propagate ha and deployment planner fixes 2011-06-13 17:35:34 -07:00
Alex Huang 1d7e70acd1 bug 10260: propagate ha and deployment planner fixes 2011-06-13 17:35:20 -07:00
alena b9325a28dd bug 9579: allow domain name suffix update for existing networks.
Block update only in these cases:

* when DNS capability AllowDnsSuffixModification is false for the network
* when target network has running network elements (dhcps or domRs)
2011-06-09 16:10:24 -07:00
Alex Huang d9e0bcfa1e bug 10126: Renamed getPodId() to getPodIdToDeployIn() 2011-06-03 22:17:08 -07:00
nit dbb1ed3645 bug 9729 : Remove redundant permission check from deployvm cmd.
status 9729: resolved fixed
2011-06-03 18:07:54 +05:30
Alex Huang 2ceadec326 bug 9651: tags parameter added to createnetwork 2011-06-01 17:36:14 -07:00
anthony d02e4fb37f bug 10100 : if there are more than one hypervisor type in one zone, create_template_from_snapshot may be sent to host with diferent hypervisor type
status 10100 : resolved fixed
2011-06-01 15:30:22 -07:00
Frank 9961e1ca2a Fix NPE when reboot vm
vm.podId has different meaning than you think
2011-06-01 11:54:20 -07:00
Alex Huang 0ab12edd6c network tagging changes 2011-05-31 09:49:27 -07:00
Edison Su 2f8235dbd2 fix local seconeary storage related issues(sync/download templates, etc) for mycloud 2011-05-21 12:05:02 -04:00
alena 30e8ed3ab6 Don't allow to specify security groups when deployVm in Vmware setup.
Also fixed a couple of other problems:
* verify security group ids before vm creation
* don't create "default" security group (if missing) as a part of deployVm process when vm is deployed from vmWare template
2011-05-20 18:52:58 -07:00
kishan 6bd8cece48 bug 8830: added source template id to template usage records
status 8830: resolved fixed
2011-05-19 16:53:33 +05:30
Alex Huang e552f118af propagated bf8afdbc7af3c0e9fbc90c841fedec57ac7b8cdf 2011-05-17 16:02:44 -07:00
alena c2afcdec52 bug 9873: always add default security group to the SG list when deploy vm in 1) Basic zone 2) Advance zone using SG enabled network
status 9873: resolved fixed

Following fixes were made as a part of the checkin:

* When deploy user vm and SG doesn't exist in the DB, create it automatically.
* SecurityGroup enabled use vm start: if map to default group is not present in security_group_vm_map table, create one.
* Added "name" (securityGroupName) parameter back to deleteSecurityGroup/authorizeSecurityGroupIngress/deployVm. Mutually exclusive with security group id parameter.

Conflicts:

	api/src/com/cloud/api/commands/AuthorizeSecurityGroupIngressCmd.java
	api/src/com/cloud/api/commands/DeleteSecurityGroupCmd.java
	api/src/com/cloud/api/commands/DeployVMCmd.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
2011-05-17 15:08:13 -07:00
Alex Huang ea9703997b proxy agent 2011-05-17 07:12:58 -07:00
anthony 9c4964bc1b fixed merge 2011-05-16 16:54:00 -07:00
anthony ba6b2ca670 initial checkin for multiple secondary storage 2011-05-16 16:37:15 -07:00
Alex Huang 5ce631e9d7 Separated resource management and agent management code. It's not all done but at least we make a first step 2011-05-16 10:55:18 -07:00
nit bc360f499d bug 9397 : CreateTemplate - generate MD5 checksum of the template. The code will calculate the checksum after the template has been created in the secondary storage. This code would be executed by ssvm. This would be agnostic of the way the template was created (not hypervisor specific).
status 9397: resolved fixed
2011-05-12 18:13:29 +05:30
alena 0f0dcc1964 bug 9827: call destroyVolume() method only after ensuring that the volume is not destroyed already.
status 9827: resolved fixed
2011-05-11 14:12:19 -07:00
alena 6075419977 bug 9821: fixed search by keyword in listVirtualMachines command
status 9821: resolved fixed
2011-05-10 12:28:30 -07:00
alena ad05706f18 bug 9791: check if user is authorized to use a private template for vm creation
status 9791: resolved fixed
2011-05-10 10:39:25 -07:00
nit d91999533b bug 9397 : CreateTemplate - generate MD5 checksum of the template. The code will calculate the checksum after the template has been created in the secondary storage. This code would be executed by ssvm. This would be agnostic of the way the template was created (not hypervisor specific). 2011-05-10 12:26:00 +05:30
Abhinandan Prateek 029a9e6a8a bug 9815: ClassCastException: com.cloud.agent.api.Answer cannot be cast to com.cloud.agent.api.StopAnswer
status 9815: resolved fixed

The type cast should be done after making sure that the command was successful. Otherwise you may have the base Answer returned.
2011-05-10 11:41:20 +05:30
alena 7cb11b09f5 bug 9796: throw an exception when try to create volume/template from the non-ready snapshot
status 9796: resolved fixed
2011-05-09 16:35:09 -07:00
prachi 4c89cc57ae Bug 9652: Need to provide a way to specify deployment plan during VM start
Changes:
- Throw an exception if the deployment plan passed into start() cannot be satisfied by the current constraints (such as root volume is already created in a pool in a different
cluster).
2011-05-06 14:39:53 -07:00
Frank 4e2935dc37 Fix other stupid string comparsions 2011-05-06 10:21:05 -07:00
Alex Huang 7bc25643a9 propagating fix from 2.2.4 2011-05-05 17:57:06 -07:00
Alex Huang 117a81acf6 cleanup agent manager 2011-05-05 17:57:06 -07:00
anthony 10c4c14ad5 swift integration checkin 2011-05-05 13:55:29 -07:00
prachi 9aba817256 Bug 9652: Need to provide a way to specify deployment plan during VM start
Changes:
- Added a new parameter to pass in deployment plan during vm start
- If a hostId is passed in to the DeployVMCmd (only allowed for a root admin to test a host), a plan is passed in to start the vm in that host's datacenter, pod and cluster and on that host
- If a plan is passed in during start, but if the VM's root volume is READY, then plan of the root volume takes precedence. In that case the plan passed in is not used.
2011-05-04 15:02:52 -07:00
Alex Huang fba1c95512 bug 9615: Part of the HA cleanup 2011-05-03 16:34:53 -07:00
kishan 77e48b8683 bug 9678: update user statistics in cloud_usage. Send network usage command to routers of virtual network only
status 9678: resolved fixed
2011-05-04 02:38:25 +05:30
Chiradeep Vittal b42ebf4872 Build fixes after first pass at merge 2011-05-03 10:41:31 -07:00
Chiradeep Vittal 303e2a7481 Start of zonesfeature / mycloud/cloudkit 2011-05-03 10:40:17 -07:00
Alex Huang 8c8354a00e bug 8745: we decided on not implementing revert on the agent because it really requires business logic above. Stop if the checkSsh doesn't work 2011-05-02 14:47:49 -07:00
Murali Reddy d95d831faa bug 9595 : Negative resource counts exception when destroying VM account
pushing 2.2.4 changes
2011-05-02 12:53:51 +05:30
anthony 93eb893c22 misuse instanceName and name, which causes vm sync behavior weirdly 2011-04-29 19:01:46 -07:00
prachi b2b01bfcd2 Bug 8830 - Return parent template ID from templates created off of a snapshot
Changes:
- Added a new column `source_template_id` to vm_template table to carry the parent/source template ID from which the tempalte was created
- Added the column in db upgrade 224 to 225
- Changed code to save the source_template_id if there is one associated to the volume/ volume from which the snapshot was taken
- API response returns the sourcetemplateid field, if set, in all template usecases.
2011-04-29 15:40:59 -07:00
anthony bbc470ed4f bug 9619: handle two types of domr name
status 9619: resolved fixed
2011-04-29 14:13:25 -07:00
Alex Huang 99bc15f64a changed getName to getHostname 2011-04-29 08:34:10 -07:00
Alex Huang 2aa280ed14 Removed the ugly cglib name 2011-04-28 15:45:09 -07:00
alena f8742adcd5 bug 9621: set addressFormat during NicProfile creation
status 9621: resolved fixed
2011-04-27 23:19:43 -07:00
prachi 209be1065b Bug 9585 - Existing Data Disk is being destroyed and recreated on Stop and Start of a User VM.
Changes:
- When the ROOT volume of a VM is found to be READY, changed planner to reuse the pool for every volume(root or data) that is READY and that has a pool not in maintenance and not in avoid state
- If ROOT volume is not ready, we dont care about the DATA disk. Both would get re-allocated.
- When a pool is reused for a ready volume, Planner does not call storagepool allocators. And such volumes are not assigned a pool in the deployment destination returned by the planner. Accordingly StorageManager :: prepare method wont recreate these volumes since they are not mentioned in the destination.
2011-04-27 11:36:51 -07:00
Murali Reddy c12ccbd06f Bug 9534 : implement CPU cap
Introducing new boolean flag in service offering to restrict the user VM's CPU utilization to what service offering it is entitled for.
2011-04-27 13:54:45 +05:30
alena 4290abb57c bug 9578: when deploy dhcp in Basic zone, put pod information to deploymentPlan
status 9578: resolved fixed
2011-04-26 14:57:40 -07:00
prachi 6e39019b6a Bug 9548 [Cloud Stack Upgrade - 2.1.8 to 2.2.4] System VM's Volumes Recreation is not happening on an event of New Volume creation Failures
Changes:
- Reason was that the old volume's templateId was being updated before volume creation was attempted. So on the retry, we dint find a difference in volume's templateId and VM's templateId and did not enter the recreation logic.

- Fix is to update the new volume's templateId with the VM's templateId while creating the new volume. The old volume's templateId stays the same and the volume is marked as 'Destroy' when a new volume is created.
2011-04-26 11:35:24 -07:00
alena 1a6d78eae4 Code cleanup. No need to declare runtime exceptions (CloudRuntimeException, InvalidParameterException, PermissionDenied exceptions) 2011-04-21 16:26:53 -07:00
Murali Reddy 435c20c0cc Bug 9273: resource cont going -ve
adding addtional check that ensure we decrease the count in advanceStart only on new vm creation.
2011-04-22 01:19:23 +05:30
alena 22ee7117f5 bug 9521: fixed NPE in finalizeCommandsOnStart() method by adding vm's nic to vm profile during the vm to vmProfile conversion.
status 9521: resolved fixed
Conflicts:

	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
2011-04-20 16:16:01 -07:00
alena f881d394e2 bug 9415: deleteHost - cleanup vms running on the host to be removed
status 9415: resolved fixed
2011-04-20 15:50:10 -07:00
Kelven Yang 7103e1c9a7 global replacement to avoid using getClass().getName() for unique names 2011-04-19 17:26:41 -07:00
Edison Su d6b5acb852 bug 8532,8755: don't create multiple HA work if there already has one of HAwork of this VM is created, but not finished
status 8532: resolved fixed
status 8755: resolved fixed
2011-04-14 17:46:54 -04:00
Frank 92155522f2 Add license header to files 2011-04-14 11:23:14 -07:00
Alex Huang 6936a666fd removed some references to name 2011-04-14 03:54:34 -07:00
prachi 88c0126878 Bug 9187: modify userdata with update vm
Changes:
- UpdateVMCmd is changed to take in userData as a parameter
-The userData is updated in the DB if it is non-null.
2011-04-13 19:22:18 -07:00
Kelven Yang 1b9cbd9166 bug 9223, 9224: persist runid to form cluster session, based on cluster session and DB condition to issue isolation notification for self-fencing 2011-04-13 15:13:54 -07:00
prachi b1700af146 Bug 9387: Recreate system vms if template id changed....
Changes:
While starting a System VM:
- We check, incase the ROOT volume is READY, if the templateID of the volume matches the SystemVM's template.
- If it does not match, we update the volumes' templateId and ask deployment planner to reassign a pool to this volume even if it is READY.

In general:
- If a root volume is READY, we remove its entry from the deploydestination before calling storagemanager :: prepare()
- StorageManager creates a volume if a pool is assigned to it in deploydestination passed to it.
- If a volume has no pool assigned to it in deploydestination, it means the volume is ready and has a pool already allocated to it.
2011-04-13 13:47:07 -07:00
Murali Reddy 9bf2d32884 Bug 9273 : resource counts going -ve
pushing 2.2.4 fix in to master
2011-04-13 17:43:12 +05:30
prachi 80fe0b584d More changes for Bug 9387:
- Update system vm_instance's template_id if it does not match the system vm template.
- Use _templateDao.findSystemVMTemplate to find the latest system vm template.
2011-04-12 18:20:01 -07:00
prachi 47c31a077a Bug 9387 - Recreate system vms if template id changed...
Changes:
- Planner must reassign the storage pool if the template id for system vms has changed.  StorageManager must then recreate the volume if the volume has been
reassigned.  This is needed to do automatic update of the system template.
2011-04-12 18:19:58 -07:00
alena 52bf157387 bug 9398: removed resource_type from volumes table as we no longer use it. Corresponding db upgrade scripts are updated
status 9398: resolved fixed

Conflicts:

	server/src/com/cloud/storage/StorageManagerImpl.java
2011-04-11 18:14:35 -07:00
anthony ac223c197f bug 9392: don't lock domr entry, otherwise updating domr state fails
status 9392: resolved fixed
2011-04-11 16:06:12 -07:00
Frank 105db3b15a Merge branch 'baremetal' to master
modifies:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/commands/AddHostCmd.java
	api/src/com/cloud/api/commands/CreatePodCmd.java
	api/src/com/cloud/api/commands/DeployVMCmd.java
	api/src/com/cloud/dc/Pod.java
	api/src/com/cloud/network/NetworkService.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/dc/HostPodVO.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	setup/db/create-schema.sql
	utils/src/com/cloud/utils/SerialVersionUID.java
2011-04-11 14:21:41 -07:00
nit debe236a8d bug 8710: CONTD....Introducing a new user role in cloudstack called RESOURCE_DOMAIN_ADMIN. The role would have all the domain_admin rights and the rights to list zone,pods,clusters and so on. More info in the bug 2011-04-11 19:40:37 +05:30
Murali Reddy 290c799b2c Bug 9273 : [Stress Test] 'Count' in resource_count table has negative values
pushing 2.2.4 changes in to master
2011-04-11 15:37:53 +05:30
Murali Reddy 8b30507841 bug 9312: deleteAccount API does not decrement User VM resource count when VM is destroyed
pushing 2.2.4 changes to master branch
2011-04-11 14:35:06 +05:30
prachi 191d689912 Bug 9045: No 'Starting job for VM.MIGRATE' & 'Successfully completed VM.MIGRATE' events shown for VM manual migration
Changes:
- Added the required 'ActionEvent' annotation to the API, so that the events get added.
2011-04-05 16:28:01 -07:00
Alex Huang 075fba5899 stackmaid is now taskmanager 2011-04-05 10:17:22 -07:00
prachi 53f8ebf6f0 Bug 9043 - VM manual migration - when destination host is out of memory for migration, VMs being migrated remained in 'migrating' state
Changes:
- When migration fails we try to do cleanup on the destination host agent. The AgentUnavailableException in this cleanup was not caught.
-Due to that other cleanup like reverting capacity allocated and vm state were skipped.
-Fix is to catch the AgentUnavailableException so that rest of the cleanup can happen.
- Also corrected the exceptions in various cases of migration failure.
- In case the VM is still starting, HA should schedule a retry. Introduced a special migration exception for handling this.
2011-04-04 17:30:08 -07:00
Kelven Yang 2759eefcf5 Add weight to command to help future load management, fix issues found in system vm pooling 2011-04-04 09:33:42 -07:00
alena 097d415589 Revert "bug 8898: allow service offering upgrade for Running vm"
This reverts commit 7668e1878a.
2011-04-01 17:54:17 -07:00
anthony 513236b100 bug 9161: better fix 2011-03-31 18:23:32 -07:00
anthony f3fbe7b9fe bug 9161: findByOutstandingWork means find all works with step not equal Done 2011-03-31 18:01:42 -07:00
Kelven Yang ea95ac1808 bug 8713 : finalize the implementation of supporting system vm pooling 2011-03-31 17:14:09 -07:00
alena 46a80a599a bug 9192: multiple improvementes to listVms command.
1) No longer do multiple searches involving "domain" table; only one join with domain is being done.
2) Do join with domain table only when command is executed by domainAdmin
3) Added index for "path" field in "domain" table
4) No longer do joins with account table as account_id is already present in vm_instance table.
2011-03-29 18:42:44 -07:00
Kelven Yang 8e727230ce Use SystemVmLoadScanner for console proxy VMs 2011-03-29 11:19:01 -07:00
Kelven Yang 2e284e1f75 Add system VM load scaner 2011-03-28 18:44:48 -07:00
will a959726f38 bug 9200: Fixed issue when attempting to change the service offering of a VM who's current service offering has been deleted. 2011-03-28 18:15:13 -07:00
anthony 045b6ac319 bug 9184: allow detach a volume when the VM is in Destroyed status
status 9184: resolved fixed
2011-03-28 14:46:54 -07:00
anthony 8712334ae2 bug 9161:
add more log
2011-03-28 14:46:54 -07:00
alena 8c61e10c08 bug 9158: introduced new parameter "storageId" to listVirtualMachines api.
status 9158: resolved fixed

1) Works for admins only
2) When specified, list only vms that have volumes on this storage
2011-03-25 18:26:59 -07:00
Alex Huang 9d158dc060 Removed the async create status for volume now that our customers don't use it 2011-03-24 20:04:23 -07:00
prachi 923f562aa8 Bug 6873: disable/enable mode for clusters (and pods and zones and hosts)
- Added a new flag 'allocation_state' to zone,pod,cluster and host
- The possible values for this flag are 'Enabled' or 'Disabled'
- When a new zone,pod,cluster or host is added, allocation_state is 'Disabled' by default.
- For existing zone,pod,cluster or host, the state is 'Enabled'.
- All Add/Update/List  commands for each of zone,pod,cluster or host can now take a new parameter 'allocationstate'
- If 'allocation_state' is 'Disabled', Allocators skip that zone or pod or cluster or pod.
- For a root admin, ListZones lists all zones including the 'Disabled' zones. But for any other user, the 'Disabled' zones are not included in the response.
- For any usecase that creates/deploys/adds/registers a resource and takes in zone as parameter, now we check if the Zone is 'Disabled'. If yes then the operation cannot be performed by a user other than root-admin. Add volume, snapshot, templates are examples of this usecase.
- To enable the root admin to test a particular pod/cluster/host, deployVM command takes in 'host_id' parameter that can be passed in only by root admin.
If this parameter is passed in by the admin, allocators do not search for hosts and use that host only. StoragePools are searched in the cluster of that host.
If VM cannot be deployed to that host, allocators and deployVM fails without retrying
2011-03-23 22:15:35 -07:00
anthony d2dc0a504b put host into maintenance, if the VM can not migrate, just stop it 2011-03-23 16:50:59 -07:00
alena 05be5acfda bug 9066: don't allow enabling ha for vm created from Ha disbled service offering
status 9066: resolved fixed
2011-03-22 10:46:10 -07:00
alena 7c1a6e4884 bug 8831: API/Management server part is done for "Dedicate Network to domain". UI part is left 2011-03-21 18:17:59 -07:00
alena abb2e2b2ff bug 8831: partial checkin for Domain specific Networks (includes DB changes) 2011-03-21 15:05:07 -07:00
alena 2027aa9a8a bug 9044: don't cleanup vm resources if the vm is already expunged
status 9044: resolved fixed
2011-03-18 18:12:52 -07:00
alena 96e83fe97f bug 8146: Elastic IP support in Basic zone.
Following was done as a part of checkin:

1) NetworkOffering/Network:

* add PF service support for default Guest network offering.
* Add one more additional network - Public.
* Allow to enable external firewall in Basic zone.

2) Don't allow to deployVm in Public Network.
3) Allow to add vlan ip ranges to Public networks in Basic zone.
4) Associate IP - allow to associate with Direct vms.
5) Allow to create PF/Static nat rules. Rules are being sent to External Firewall Rule only.
6) Add PF support to External Firewall element.
2011-03-17 17:19:36 -07:00
alena 7b5d7806d2 bug 8510: update resource count for template after the DB record is created. Decrement it if actual snapshot creation fails 2011-03-15 17:29:23 -07:00
Frank d297eea96f Bug 8208 - bare metal provisioning
do fullsync in baremetal resource
2011-03-15 15:29:52 -07:00
alena d2f92f1c76 bug 8973: Create Virtual Guest network as a part of deployVm if corresponding networkOffering has availability=Required and no networkIds are specified
status 8973: resolved fixed
2011-03-15 15:06:52 -07:00
alena c32198838f bug 8724: can create sshKeyPair in behalf of other users now
status 8724: resolved fixed
2011-03-14 15:37:50 -07:00
alena 7b9b897459 Fixed the issue when admin can't deploy vm in behalf of another user. We were passing caller to deployVm always. 2011-03-14 11:08:59 -07:00