Commit Graph

1071 Commits

Author SHA1 Message Date
Alena Prokharchyk 634cd78baa Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	api/src/com/cloud/api/commands/ListNetworksCmd.java
	api/src/com/cloud/api/response/NetworkResponse.java
	api/src/com/cloud/event/EventTypes.java
	api/src/com/cloud/network/NetworkService.java
	client/tomcatconf/commands.properties.in
	scripts/network/domr/getDomRVersion.sh
	scripts/network/domr/ipassoc.sh
	scripts/network/domr/l2tp_vpn.sh
	scripts/network/domr/networkUsage.sh
	scripts/network/domr/router_proxy.sh
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/network/dao/IPAddressDaoImpl.java
	setup/apidoc/gen_toc.py
	setup/db/create-schema.sql
	wscript
2012-06-28 17:41:40 -07:00
Alena Prokharchyk 1a232171eb VPC: implementation for Add/delete/list StaticRoute. Agent implementation is yet to be done 2012-06-28 10:11:41 -07:00
Alena Prokharchyk 030458a37b VPC: implemented add/delete Private gateway
Conflicts:

	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/dc/DataCenterVO.java
	server/src/com/cloud/network/NetworkManagerImpl.java
2012-06-25 20:54:14 -07:00
Alena Prokharchyk 1b1e52ddb0 VPC: apply firewall ACLs as a part of VPC router start/restart and VPC network implement
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java
2012-06-25 20:47:29 -07:00
Wido den Hollander bc94948e06 agent: Set the listen addr of a VM specificly to the private IP of a host
Now users have to modify their /etc/libvirt/qemu.conf vnc_listen, this is not needed anymore
2012-06-20 15:29:26 +02:00
U-CITRITE\\koushikd 817595daf8 Fix bug CS-15261 In case IP address is passed to deployVirtualMachine API, the default property on NIC was not getting set and as a result there was a failure down the line and VM creation was failing.
Signed-off-by: U-CITRITE\koushikd <koushikd@banlkoushikd01.citrite.net>
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2012-06-19 06:53:43 +01:00
Alena Prokharchyk 982562b9fb VPC: ipAssoc consists of 3 parts: plug nic (if needed), associateIp, enableSourceNat(if ip is source nat ip)
Conflicts:

	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2012-06-15 14:31:58 -07:00
Alena Prokharchyk c82885021b More logging to plug nic code 2012-06-15 14:27:49 -07:00
Alena Prokharchyk 7e119e4c94 Fixed addDhcpEntry/userdata/password in VPC setup 2012-06-15 14:27:24 -07:00
Alena Prokharchyk aa84256542 1) Added VpcVirtualNetworkApplianceService interface
2) Pass dns1/dns2 to setupGuestNetworkCommand
3) Network implement - don't get source nat ip address for Vpc if it already has one
2012-06-15 14:27:00 -07:00
Alena Prokharchyk d70d2f82d4 StartRouter: set only control nic during the initial router start; plug exising public and guest nics after the router is started with control nic 2012-06-15 14:25:31 -07:00
Alena Prokharchyk 31b8f07bb5 Added NicTO to setupGuestNetworkCommand constructor - we need this info for guest network configuraiton 2012-06-15 14:22:40 -07:00
Alena Prokharchyk 0a7faa9838 Support for adding private network
Conflicts:

	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade2214to30.java
2012-06-15 14:20:34 -07:00
Alena Prokharchyk f28cefc4c3 Added support for network shutdown in VPC guest networks 2012-06-15 14:07:59 -07:00
Alena Prokharchyk d9fd7e02a5 Plug nic support
Conflicts:

	server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
2012-06-15 14:07:46 -07:00
Alena Prokharchyk f4060c3c1d 1) Added new element - VpcVirtualRouterElement. Extends VirtualRouter + has plug/unplug nics support
2) Added services api support for plugging/unplugging the nics to VpcElement

Conflicts:

	api/src/com/cloud/network/NetworkService.java
	core/src/com/cloud/vm/VMInstanceVO.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2012-06-15 14:04:09 -07:00
Alena Prokharchyk 9debd3a5df 1) Added start logic to the VPC
2) VirtualRouterManagerImpl - refactored deployVirtualRouter method
3) Added vpcId to domain_router/user_ip_address tables and corresponding vo objects

Conflicts:

	server/src/com/cloud/network/IPAddressVO.java
2012-06-15 13:56:05 -07:00
Alena Prokharchyk afd2d0331f Set networkId as a join parameter in DomainRouterDaoImpl as networkId was moved to the helper table 2012-06-15 13:55:01 -07:00
Alena Prokharchyk 998cf66e6c Removed network_id reference from domain_router table as now VirtualRouter can be associated with multiple networks (VPC case). Code modifications were done accordingly to the places where this field was used.
Router->Networks (one to many) are held in router_network_ref table now
2012-06-15 13:54:48 -07:00
Alena Prokharchyk 60b52f90dd Initial checkin for VPC feature:
1) Added API frameworks for the feature. New commands:
* CreateVPCCmd
* ListVPCsCmd
* DeleteVPCCmd
* UpdateVPCCmd
* CreateVPCOfferingCmd
* UpdateVPCOfferingCmd
* DeleteVPCOfferingCmd
* ListVPCOfferingsCmd

2) New db tables:

* `cloud`.`vpc`
* `cloud`.`vpc_offerings`
* `cloud`.`vpc_offering_service_map`

and corresponding VO/Dao objects.

Added vpc_id field to `cloud.`networks` table - not null when network belongs to VPC

3) New Manager and Service interfaces- VpcManager/VpcService

4) Automatically create new VpcOffering (if doesn't exist) on system start

5) New Action events:

* VPC.CREATE
* VPC.UPDATE
* VPC.DELETE

* VPC.OFFERING.CREATE
* VPC.OFFERING.UPDATE
* VPC.OFFERING.DELETE

Conflicts:

	api/src/com/cloud/api/ApiConstants.java
	client/tomcatconf/commands.properties.in
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	setup/db/create-schema.sql
2012-06-15 13:53:59 -07:00
prachi f1fae9d57f CS-14753: When Vm is deployed with a Security Group , it also gets associated with the default security group.
Changes:
- StartVM needed to be changed to add default security group only when none is present.
- DeployVm: createAdvancedSecurityGroupVirtualMachine changed to follow the same rule - add default SG only if none is specified.
2012-05-25 14:40:31 -07:00
prachi 0c1c9141f4 DeployVMCmd: Do not place the instance in default security group if groupId is provided 2012-05-25 14:40:28 -07:00
Alena Prokharchyk c7bffc7b89 CS-15082: changed search criteria for Running vms in Network. Ip4 Address for guest network can be null for nic in Basic zone when vm originally fails to start.
Reviewed-by: Frank
2012-05-25 10:18:43 -07:00
Nitin Mehta 4bb4e98eae bug CS-14945: Throw an error message if the user is trying to attach the volume in local only storage zone.
Reviewed-by: Kishan
2012-05-25 18:46:44 +05:30
Alena Prokharchyk e65465929d CS-15082: don't allow to remove guest network in Basic zone when there are non-expunged CPVM/SSVMs using it. 2012-05-24 11:38:32 -07:00
Edison Su 403addc59d bug CS-14833: if iso is xen/vmware tools, attach it to vm; status CS-14833: resolved fixed 2012-05-15 14:04:16 -07:00
Alena Prokharchyk d11dceaccc CS-14904
Fixed the bug where vm_instance.ha_enabled wasn't updated during service offering upgrade

Conflicts:

	server/src/com/cloud/server/ManagementServerImpl.java
2012-05-15 12:36:40 -07:00
Nitin Mehta 7e0863555b bug CS-14814: Do not allow attaching volume to a stopped vm for an uploaded volume. Make changes to accomodate volume attaching for a vm created in Stopped state. 2012-05-15 18:28:12 +05:30
Nitin Mehta acd55bac90 bug CS-14785: Allow attaching the volume for Uploaded volume. Also have transition fo delete volume. 2012-05-14 16:46:49 +05:30
Nitin Mehta 838d01754b bug CS-14785: Improvements to volumes sync so that it can recover from any error. Introduced new state UploadOp which signifies that the volume os on secondary and the status would be picked up from volume host ref table. 2012-05-11 11:42:42 +05:30
Nitin Mehta 189ac88a11 bug CS-14785: String equality should be through equals function....what was i thinking !!!. 2012-05-08 16:07:52 +05:30
Nitin Mehta 0d2422720b bug CS-14739: Check for the volume and vm hypervisor compatibility before attaching the volume to vm in case the volume is on secondary storage. 2012-05-04 17:29:22 +05:30
Alena Prokharchyk 5021274232 CS-14256: throw executionException when finalizeStart fails (no point to retry). 2012-04-23 15:56:23 -07:00
Salvatore Orlando 9f321ffeac Open vSwitch tunnel manager
Applying patch with new ovs-tunnel-manager on top of cloudstack oss-master
2012-04-23 22:32:16 +01:00
Nitin Mehta 54956280e6 Preliminary upload and attach changes work .. 2012-04-23 12:28:36 +05:30
Nitin Mehta 564cef8ddf More changes for uploadVolume. Create framework for upload volume progress communication between MS and SSVM. 2012-04-23 12:14:35 +05:30
Alena Prokharchyk 9b089f2eb7 AdvanceStart: do cleanup() call with force=true when the start command wasn't sent to the backend yet 2012-04-13 17:19:02 -07:00
Alena Prokharchyk 85b35978de Db upgrade path for 3.0.2 to 3.0.3 2012-04-09 15:50:10 -07:00
Abhi d6e9f49c09 bug CS-14396: the VMs with current host id should be listed here, probably this fix did not make to this branch, is there is 2.2.14 branch 2012-04-09 12:27:18 +05:30
David Nalley 59436be4ee fixing line endings in server 2012-04-07 20:13:10 -04:00
Alena Prokharchyk 6ff3dc3951 Return password as a result of startVm command if the vm was originally deployed with startVm=false parameter 2012-04-06 13:46:49 -07:00
Alena Prokharchyk 2d1a6b0b35 bug 14615: deployVm can work 2 diff ways now: 1) Default way - create and start the vm. 2) Create the vm without starting it. Note that vm's volumes stay in Allocated state -not created on the backend till the point where vm starts
status 14615: resolved fixed
2012-04-06 11:30:48 -07:00
Alena Prokharchyk c0130a5c41 Code cleanup for createVlanRange api 2012-04-04 15:03:04 -07:00
frank 2f634c0913 Switch to Apache license 2012-04-03 04:50:05 -07:00
Alena Prokharchyk d6cf594ef7 bug 14292: don't try to reboot vm as part of resetVmPassword if the vm is in Stopped state
status 14292: resolved fixed
2012-03-28 13:51:14 -07:00
Abhi d3673506cf bug 14216: rightly initializing to avoid NPE 2012-03-21 15:33:05 +05:30
Vijayendra Bhamidipati 005ba5e2b5 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Adding overloaded addProxyObject() function to CloudException
	and RuntimeCloudException classes and using this function
	to stuff exceptions with IDs, to reduce code footprint.
2012-03-15 16:27:52 -07:00
Vijayendra Bhamidipati b1bb0afad4 Bug 13127: API error text refer to database ids instead of uuids
Description:

	Modifying the API functions' exception handling to call
	addProxyObject() wherever applicable, and removing some
	wrong calls to addProxyObject() that were put in in an
	earlier commit for this bug.

	With this commit, we cover many API functions to use the
	new exception handling code, but some pieces may still be
	left out. These will be covered as work in progress, when
	making changes to the CS API code.
2012-03-12 18:05:45 -07:00
Alena Prokharchyk f3935d667f bug 14156: return instancename parameter in userVm response to ROOT admin only 2012-03-06 13:39:13 -08:00
prachi 5148145d18 Bug 14028 - Add hostid parameter to StartVmCmd to enable admins to start VM on a particular host
Changes:
- Added hostid to StartVMCmd. Only root admin can use it.
2012-03-05 17:50:23 -08:00
Alena Prokharchyk c052d96428 bug 13966: cleanup the vm (stop it on the backend) when work step is Release. Also never retry when finalizeStart failed
status 13966: resolved fixed
reviewed-by: Alex Huang
2012-02-23 15:13:47 -08:00
prachi f619e26c48 Bug 13850 - VM stuck in starting state if it is started during the HA-Work of the corresponding router
Reviewed-By: Kelven

Changes:
- Update the pending work Item to be DONE if we are changing the VM state during fullSync.
2012-02-22 17:36:00 -08:00
prachi e37732c4de Bug 13766 - VMs are still running after disabling the zone
Reviewed-by: Sheng Yang

Changes:
- Do not check if allocation_state is 'Enabled' in planner if the caller is Root Admin.
- This should let Root Admin create a VM in a disabled Zone.
2012-02-22 17:34:00 -08:00
Alena Prokharchyk 2e9511e2ae Changed isElastic to isSystem for the publicIpAddress assigned during the vm deployment in EIP enabled network
Reviewed-by: Chiradeep
2012-02-21 15:39:49 -08:00
Alena Prokharchyk 4d27f3c44b bug 13866: return publicIp info in listVms api response when vm is linked to public ip via static nat
Reviewed-by: Frank
2012-02-17 15:42:17 -08:00
prachi eb43f780f7 Bug 13824 - VM deployment fails due to volume not being recreatable
Reviewed-By: Alex

Changes:
- Reuse the same storagepool where the Volume is ready on each retry of VM deployment until the cluster where the volume is has capacity
- After the cluster is out of capacity, we look in other clusters and find a new storagepool.
- At this point if the volume is recreatable on the new storagepool, depoyment will succeed provided everytyhing else goes through
- But if the volume is not recreatable and its cluster is out of capacity, we will still fail to deploy the VM
2012-02-16 17:04:25 -08:00
abhi fac8091c9f bug 13673: stopping alien VMs during sync for Xenserver 2012-02-16 12:35:36 +05:30
Nitin Mehta 8f869b6a18 Bug 13591: Remove unwarranted log messages that we are printing with every answer recieved from the agent.
Reviewed-By: Kishan
2012-02-13 16:33:52 +05:30
abhi 20968a408c bug 13549: cleanup stopped/starting VMs if present on host during MS startup
reveiewed-by: kishan
2012-02-13 07:25:01 +05:30
kishan 278833eb29 Bug 13420: Send alert of type 18 when sending alert for SSVM
Status 13420: resolved fixed
Reviewed-By: Nitin
2012-02-08 18:50:42 +05:30
Alena Prokharchyk cad392cd68 bug 13335: fixed listProjectInvitations by projectId
status 13335: resolved fixed
2012-02-07 13:16:27 -08:00
abhi 59c7150af7 bug 13439: full sync at management server restart, disabling hourly sync 2012-02-06 15:01:44 +05:30
abhi ae609f6801 bug 13408: added more loggin to assignVM 2012-02-01 18:45:25 +05:30
abhi b6e5419370 bug 12899: checking if static nat rule is in place, throw error if there. Let the caller clear it first before assigning VM to another account 2012-02-01 18:08:32 +05:30
Kelven Yang c1fb754de7 VM display name can be NULL in schema, leave it as NULL instead of empty string when user does not provide a optional VM display name 2012-01-26 11:30:40 -08:00
Kelven Yang e751dad940 VM display name will stay empty if user does not provide, VM host name is default to UUID for now 2012-01-26 11:10:00 -08:00
Kelven Yang 8083b29235 bug 13306: remove sensive DB id info from VM display name 2012-01-25 17:16:21 -08:00
Alena Prokharchyk 4dec3c890a bug 13282: release elastic IP of the vm on vmStop
status 13282: resolved fixed
2012-01-25 15:03:46 -08:00
Alena Prokharchyk 5307d21210 DisableStaticNat: if elasticIP service is enabled for the network offering, always allocate new elastic ip and create static nat rule for it when disableStaticNat is called 2012-01-24 14:06:01 -08:00
Alena Prokharchyk 57ddf63676 Special permission check for networks 2012-01-20 11:01:38 -08:00
Alena Prokharchyk d4d345a587 Don't retry to re-create the vm when failed to allocate public ip 2012-01-19 14:00:07 -08:00
Alena Prokharchyk 4f46c3b160 Mark ip as not elastic when disable static nat is called on it 2012-01-19 13:58:36 -08:00
Alena Prokharchyk 212c22b256 Added isElastic flag to ip address 2012-01-19 13:58:35 -08:00
Alena Prokharchyk 6325d21c50 Get new elasticIp when releaseIpAddress is called for elasticIP of the vm 2012-01-19 13:58:35 -08:00
Alena Prokharchyk 0e8104cca1 Disassociate ip address - always allocate a new IP and enable static nat for it when elactic IP is enabled 2012-01-19 13:58:35 -08:00
Alena Prokharchyk 359185f567 System is the owner of the first elastic ip address for the vm 2012-01-19 13:58:35 -08:00
Alena Prokharchyk d5752eca61 Error deployVm when elasticIp/staticNat failed to assign to the vm 2012-01-19 13:58:34 -08:00
Alena Prokharchyk 0f6f231ee6 Elastic IP - when deployVm, get ip address and enable static nat on it. On vm destroy release the Ip 2012-01-19 13:58:34 -08:00
Kelven Yang 3612fc12c8 bug 11428: remove the constraint based on customer's feedback, we will allow creating volume from a snapshot that was originally taken from root volume. Customers should be aware that when the volume is attached as a data volume, some partitions that were originally created as a root volume may not be recognized by the guest OS 2012-01-17 16:10:20 -08:00
Alena Prokharchyk 83400cd15f bug 12776: if there are multiple objects involved in resource creation, verify that they belong to the same account
status 12776: resolved fixed
2012-01-17 13:40:37 -08:00
Alena Prokharchyk bda032b874 bug 12760: generate vm.destroy event when vm goes from Stopped to Expuning state
status 12760: resolved fixed
2012-01-17 10:38:52 -08:00
Alena Prokharchyk f0c4980dff bug 13110: use Ternary data structure when build search criteria
status 13110: resolved fixed
2012-01-16 14:15:28 -08:00
Abhinandan Prateek 0374e42931 bug 13068: clearing sec grp has a dependency on nic's existing, move the call a bit 2012-01-16 13:50:15 +05:30
Abhinandan Prateek eb4cfe063a bug 12916: warning user if he tried to move the VM across zones 2012-01-10 10:49:18 +05:30
Abhinandan Prateek 3a2d0b1ec6 bug 12918: don't allow movement within same account 2012-01-10 10:39:03 +05:30
Alena Prokharchyk c581506103 bug 12306: list* command revamp 2012-01-09 10:07:42 -08:00
kishan 5dc4a70b90 Bug 12850: Allow accounts in child domains to create Vms in zones owned by parent domain
Status 12850: resolved fixed
Reviewed-By: Abhi
2012-01-09 19:32:26 +05:30
Edison Su 1648bd800c bug 12899: mgt server needs to pass down the storage pool uuid when creating template from volume
status 12899: resolved fixed
2012-01-05 16:42:45 -08:00
Abhinandan Prateek 2778deacb6 bug 8962: usage related changes 2012-01-04 16:41:18 +05:30
kishan 9b3f78254d Bug 12845: When moving Vm to another account, add volume create usage event with size and template/offering id
Status 12845: resolved fixed
Reviewed-By: Abhi
2012-01-04 16:34:52 +05:30
Abhinandan Prateek a60d8cea86 bug 12530: moved the initial full sunc from the cron to host connect. 2012-01-02 13:40:33 +05:30
Abhinandan Prateek 9333acffb4 bug 12530: ignore VMs in starting state, as the first sync may happen after the managment server has already issued start for system VMs 2011-12-30 10:35:08 +05:30
Abhinandan Prateek 8173474a42 bug 8962: done some testing on basic networks 2011-12-29 12:37:28 +05:30
Abhinandan Prateek b2079346d6 bug 8962: added params networkids and securitygroups in case the moved VM needs to be part for additional networks and sec grps respectively 2011-12-28 11:39:28 +05:30
Abhinandan Prateek 5e4acc2a55 bug 12530: introduce initial full sync; cleanup syncronization; 2011-12-27 11:13:38 +05:30
Abhinandan Prateek df83487be9 bug 8962: adding code for basic networks 2011-12-21 17:18:31 +05:30
Edison Su 009fa8c079 bug 12158: only allow storage migration through migratevm api, iff no data disks attached to the vm. As data disks may have different service offering with the specified storage pool
status 12158: resolved fixed
2011-12-20 17:12:09 -08:00
kishan e2cb4f94d6 bug 12337: Encrypt only password in host_detail table. Removed unused and duplicate references of HostDetailDao
status 12337: resolved fixed
reviewed-by: Abhi
2011-12-20 19:28:41 +05:30
Abhinandan Prateek 462ad5cfc2 bug 8962: network related improvements 2011-12-20 18:31:37 +05:30
Alena Prokharchyk ceb0a918a1 createTemplate/createSnapshot for project - allow to execute for Projects in Active state only 2011-12-19 16:20:40 -08:00
frank 8ef2724c26 better log when deploy vm failed 2011-12-19 15:50:11 -08:00
Sheng Yang 5102279824 bug 12586: Remove the duplicate sync code of fullHostSync()
fullHostSync() is messed up.

The sync operation have been done twice, and for the second time, the original
info has already cleared, so default value "Stopped" is created, then result in
stop all the vms.

The fullHostSync() is skipped for Xen, so Xen don't have this issue.

status 12586: resolved fixed
2011-12-15 14:47:48 -08:00
Edison Su 49fb9049fb bug 12446: fix typo
status 12446: resolved fixed
2011-12-14 16:51:38 -08:00
Sheng Yang 3263fd596e bug 10904: add a global config to enable/disable automatically add the vm to the default security group
status 10904: resolved fixed
2011-12-13 14:48:44 -08:00
Nitin Mehta 353bc396e3 bug 11838: Create Private Template from Snapshot - Lift the restriction of creating duplicate names keeping it consistent with register template
Reviewed by : Kishan.
2011-12-13 14:42:08 +05:30
Abhinandan Prateek a703315d34 bug 12348: fixed getting VMs for a cluster which was not getting back VMs in starting state 2011-12-13 12:20:48 +05:30
Alena Prokharchyk 0980c47100 bug 12363: don't expunge nics when vm is expunged, just leave them in Removed state in the DB
status 12363: resolved fixed
2011-12-09 14:26:30 -08:00
Alena Prokharchyk bde5e16a26 bug 12453: when networkId is specified, don't check if the network created from Required network offering is present
status 12453: resolved fixed
2011-12-08 14:38:21 -08:00
Edison Su 3df3e9fb10 bug 12407: for snapshot, there is no vm related to
status 12407: resolved fixed
2011-12-07 13:57:02 -08:00
Alena Prokharchyk 2c2dfdc507 bug 12237: fixed listSnapshots to work correctly with projectId
status 12237: resolved fixed
2011-12-06 16:43:58 -08:00
Alena Prokharchyk 7b8287d323 bug 10804: Api and middle layer support for default route feature 2011-12-05 14:53:45 -08:00
Alena Prokharchyk a4773b7080 bug 12291: listVms - show non-project resources only if no projectId specified
status 12291: resolved fixed
2011-12-02 15:17:50 -08:00
Naredula Janardhana Reddy 09905b641b bug 10617: merge code from branch bug10617. 2011-12-01 14:17:52 +05:30
Abhinandan Prateek 660891b405 bug 8962: adding a check for disabled accounts 2011-11-29 12:40:58 +05:30
Abhinandan Prateek a560d6f055 bug 11910: no need to do full sync as first thing after connect 2011-11-29 11:23:21 +05:30
Alena Prokharchyk afb56d2112 bug 11492: check volume resource limit when deployVm
status 11492: resolved fixed
2011-11-28 13:38:32 -08:00
Alena Prokharchyk 586febd4c1 bug 11965: check the user state on the Services layer, not in the VmManager as VmManager can be called not only from the API, but also by internal methods - HA for instance - and in this case we shouldn't care about the account state
11965 status: resolved fixed

Also fixed gson serialization error in account response
2011-11-28 10:05:19 -08:00
Abhinandan Prateek 88f9b1ab7c bug 8962: review changes incorporated 2011-11-25 15:03:45 +05:30
Abhinandan Prateek da20d33e27 bug 11910: full sync will only stop unknown VMs on agent 2011-11-23 16:48:12 +05:30
Abhinandan Prateek 488ac8238e bug 11311: lis host takes in a additional parameter to fine tune the details, the default behavious is still unchanged. 2011-11-22 16:26:52 +05:30
prachi 0dc7fb48a1 Bug 11962 - MigrateVirtualMachine fails with AgentUnavailableException when the targeted host for migration is under Maintenance
Bug 11964 - You are allowed to migrate a virtual machine on to the host that it already exists o

Changes:
Validations were missing in th MigrateVmCmd API, since from UI the validations are always done while listing hosts for migration as first step.
2011-11-21 17:12:36 -08:00
Nitin Mehta ec3a00a230 bug 10281: Template/ISO APIs should throw an exception in failure case for the events to be registered as failure.
Reviewed by : Kishan.

status 10281: resolved fixed
2011-11-21 18:58:06 +05:30
Alex Huang 84d5f0514e Changed network tags to network name as we no longer need to send the entire network tags down to the resource. 2011-11-18 14:28:16 -08:00
prachi 313e6ca284 Bug 8791 user dispersing allocator
Changes:
- Added a two new deployment planners  'UserDispersingPlanner' and 'UserConcentratedPodPlanner' to the DeploymentPlanners
- Planner can be chosen by setting the global config variable 'vm.allocation.algorithm' to either of the following values:
('random', 'firstfit', 'userdispersing', 'userconcentratedpod')
- By default, the value is 'random'. When the value is 'random', FirstFitPlanner is invoked as before that shuffles the resource lists.
- Now Admin can choose whether the deployment heuristic should be applied starting at cluster or pod level. This can be done by using the
global config variable 'apply.allocation.algorithm.to.pods' which is false by default. Thus by default as earlier, planner starts at clusters directly.

'UserConcentratedPodPlanner' changes:
- Earlier to 3.0, FirstFitPlanner used to reorder the clusters in case this heuristic was chosen.
- Now this is done by a separate planner and is applied only when 'vm.allocation.algorithm' is set to this planner
- It reorders the capacity based clusters/pods such that those pods having more number of Running Vms for the given account are tried first.
- Note that this userconcentration is applied only to pods and clusters. Not to hosts or storagepools within a cluster.

'UserDispersingPlanner' changes:
- 'UserDispersingPlanner' reorders the capacity ordered pods and clusters based on number of 'Running' VMs for the given account in ascending order. Aim is to choose thodes pods/clusters first which have less number of Running VMs for the given account
- Admin can provide weights to capacity and user dispersion so that both parameters get considered in reordering the pods/clusters. This can be done by setting
the global config parameter 'vm.user.dispersion.weight'. Default value is 1. Thus if this planner is chosen, by default, ordering will be done only by number of Running Vms, unless the weight is changed.
- HostAlllocators and StoragePoolAllocators also reorder the hosts and pools by ascending order of number of Running VMS/ Ready Volumes respectively for the given account. Thus try to choose that host or pool within a cluster with less number of VMs for the account.
2011-11-17 18:29:39 -08:00
Alena Prokharchyk 5571afa471 Virtual router elements: prepare nics only when VirtualRouter is a provider for at least one service in the network 2011-11-17 14:33:22 -08:00
Abhi 9086a39bda bug 11910: avoid Starting to Running state changes during full sync, as the VM startup process does not like it 2011-11-17 14:32:56 +05:30
Alena Prokharchyk 790b33bdfc More validation to network and network offering creation/upgrade 2011-11-16 14:53:38 -08:00
Kelven Yang 277c60e4f6 bug 11814: Allow template to have details info in key/value pairs. 2011-11-15 15:01:46 -08:00
Alena Prokharchyk bb2a8cf7ea NaaS: added "subdomainAccess" parameter to domain level network object. The parameter defines whether the network can be accessed from the subdomains. If the parameter is not specified, it would be defaulted to allow.subdomain.network.access Global Config param 2011-11-14 18:13:47 -08:00
Naredula Janardhana Reddy f1b99f4f07 Revert "bug 10617: merging code from branch bug10617"
This reverts commit 8bc33448b9220534ba0ddc6c642ffb1e69d5844e.

Conflicts:

	server/src/com/cloud/api/ApiResponseHelper.java
2011-11-11 20:23:26 +05:30
Abhinandan Prateek b793ce6c33 bug 11987: changing virtualmachineimpl to reoccuring listener
reviewed-by: nitin
2011-11-11 19:24:09 +05:30
Alena Prokharchyk 039e09ce93 * Introduced aclType parameter for createNetwork command (can hold 2 values now: Account and Domain). This parameter defines the access control type to the network object. If it's account -
only owner of the network can access it; if it's domain - all accounts in the domain and domain children can have an access.
* aclType replaces 2 old fields: isShared and isDomainSpecific.
* All 2.2.x account specific networks will have aclType=Account; 2.2.x Domain specific networks - aclType=domain; 2.2.x Zone level networks - aclType=Domain with domainId = Root domain id
2011-11-10 18:34:56 -08:00
Sheng Yang bde1f6d2de Merge branch 'networkasservice'
Conflicts:
	api/src/com/cloud/api/commands/CreateRedundantVirtualRouterElementCmd.java
	api/src/com/cloud/api/commands/CreateVirtualRouterElementCmd.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/ExternalNetworkDeviceManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	setup/db/create-schema.sql
2011-11-10 16:36:08 -08:00
Alex Huang d6c22c42fe Merge branch 'master' of ssh://git.cloud.com/var/lib/git/cloudstack-oss 2011-11-10 15:26:39 -08:00
Alex Huang f6fcaa49ec Merge complete except for virtualnetworkappliancemanager 2011-11-10 15:18:16 -08:00
Naredula Janardhana Reddy 02adbd4bd3 bug 10617: merging code from branch bug10617 2011-11-10 15:23:48 +05:30
Abhinandan Prateek a2499c9e69 bug 11910: during full sync ignoring VMs which have been into starting state shortly
reviewed-by: kishan
2011-11-10 12:00:10 +05:30
Sheng Yang 9b8f96c06d NaaS: Merge Role.DHCP_USERDATA and Role.DHCP_FIREWALL_LB_USERDATA to Role.VIRTUAL_ROUTER 2011-11-09 17:09:17 -08:00
Nitin e2e7da3ff4 bug 11428: Under VMware with current version, for snapshot related related operations,
1) if snapshot is originally created from root volume, allow only CreateTemplateCommand from snapshot 2) if snapshot is originally created from data volume, allow only CreateVolumeCommand from snapshot Reviewed by - Kishan
status 11428: resolved fixed
2011-11-09 16:33:09 +05:30
alena 3a845d2d75 Keep Service/Provider map per network as well as per networkOffering (to handle the case when there are multiple providers defined for the same service in the network offering, and only one is picked when the network is created) 2011-11-07 16:16:03 -08:00
Kelven Yang 2b6f3d458e UUID support for XML responses 2011-11-04 17:38:22 -07:00
Sheng Yang 3de3fc69d2 NaaS: Implement shutdownProviderInstances for virtual router 2011-11-03 13:44:26 -07:00
Kelven Yang 7e9b210d5c bug 6745: Fix problems in Async create commands 2011-11-03 07:34:02 -07:00
Kelven Yang 79e39c20fb Fixes on merged result 2011-11-03 07:34:01 -07:00
Kelven Yang fa2dd8e93a bug 6745: Using UUID instead of integers - for VM instances 2011-11-03 07:33:56 -07:00
Abhinandan Prateek fab2d1f880 bug 11678: added vm.destory.forcestop config var to set force when destroying a vm 2011-11-03 15:51:02 +05:30
Abhinandan Prateek 267b12d015 bug 11709: saving encrypted password in db
status 11709: resolved fixed
2011-11-03 15:40:20 +05:30
alena 3e20c60d6d Fixed vm deployment in Basic zone 2011-11-02 17:02:44 -07:00
alena f42c9e434f Basic zone: the System Guest network offering can be created from any Shared Guest network offering.
Limitation:
* in order to make the networkOffering choice, only one Shared network has to be Enabled at the moment when Basic zone is being created
2011-11-02 15:44:53 -07:00
alena 2250dff349 1) Removed tags from the network object
2) Get hypervisor tags from the physical network instead.
2011-11-01 17:42:06 -07:00
alena 9560e92015 physicalNetworkId is optional in createNetwork api. Works as follows:
* can be specified for Shared network only
* if not specified for the Shared networks, try to locate it based on the zoneId and tags. If tags is not null, pick up first physicalNetwork from the zone that has matching tags. If tags is null, and there are none/more than 1 physical netwroks in the zone, error out.
2011-11-01 15:49:39 -07:00
alena be21a5e37c Don't allow enabling securityGroup service for Isolated networks 2011-11-01 13:09:14 -07:00
alena 80dc2c0b1a Don't send security group commands to the backend when 1) securtiy group service is disabled in the network offering and 2) security group service provider is supported on the physical network 2011-11-01 12:07:32 -07:00
anthony 46dac852fa Merge branch 'swift'
Conflicts:
	server/src/com/cloud/agent/AgentManager.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/host/dao/HostDao.java
	server/src/com/cloud/host/dao/HostDaoImpl.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/download/DownloadMonitorImpl.java
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
2011-10-31 15:04:48 -07:00
Abhinandan Prateek abb37acbdd bug 8962: added usage related and resource count related code, changed the API name as suggested. Incorporated relevant review comments 2011-10-31 16:35:42 +05:30
Abhinandan Prateek 932e3c3a65 bug 11311: incremental checkin 2011-10-31 12:27:17 +05:30
Abhinandan Prateek 07e44e3a23 bug 11311: change list vm call to provide less info 2011-10-30 16:25:57 +05:30
root a572205e3c Revert "bug 11311: vm summary command initial impl"
This reverts commit 0abc7e2ea8b9e222f1927aea72d46240bfe8c534.
2011-10-30 15:13:58 +05:30
Abhinandan Prateek f456462443 bug 11311: vm summary command initial impl 2011-10-28 14:07:19 +05:30
Abhinandan Prateek 3cb1426a6c bug 10588: sending cluster sync only for xen 2011-10-28 11:39:22 +05:30
alena b413a625f4 1) replaced joinProject API with updateProjectInvitation api. You can accept/decline the invitataion with this command
2) Added deleteProjectInviation command. Can be executed by project admin only
2011-10-27 18:32:00 -07:00
alena d315e57b0e Renamed "type" to "guestType" 2011-10-27 16:51:42 -07:00
alena fe0b685e95 Security group is a service now 2011-10-27 16:49:20 -07:00
Sheng Yang e1e96c0bb3 NaaS: Add ServiceProviders
Added PortForwardingServiceProvider, StaticNatServiceProvider, rename
PasswordServiceProvider to UserDataServiceProvider(may rename to a better name
later).

Add related function for service providers.
2011-10-27 11:55:10 -07:00
frank 21de281276 Fix broken compilation by new anget manager merge 2011-10-27 11:24:10 -07:00
frank cef30956e9 Merge branch 'newagentmgr'
Conflicts:
	agent-simulator/src/com/cloud/api/commands/ConfigureSimulator.java
	ovm/src/com/cloud/ovm/hypervisor/OvmDiscoverer.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/capacity/CapacityManagerImpl.java
	server/src/com/cloud/network/F5BigIpManagerImpl.java
	server/src/com/cloud/network/JuniperSrxManagerImpl.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	utils/src/com/cloud/utils/db/GenericDao.java
2011-10-27 11:09:56 -07:00
Abhinandan Prateek a1a0fdc0a3 bug 10588: making sure the vms are synced during a delta also 2011-10-27 15:56:53 +05:30
Edison Su 193474a595 Storage migration: if it's basic network and migrate to different pod, need to reallocate network 2011-10-25 19:20:18 -07:00
alena 525a0a7675 1)Changed implementation for restart network: call shutdown/implement methods as a part of it
2)Re-apply all existing firewall rules as a part of implement call. TODO: Cleanup all existing rules from the backend (leave them in the DB) as a part of shutdown call
2011-10-25 18:24:24 -07:00
frank 1460f3950e Bug 9949 - revert VM to template
1. able to restore VM from its original template
2. Only allow to restore when VM is running or stopped
3. after restoring, VM state will not change, e.g. running is still running

status 9949: resolved fixed
2011-10-25 13:52:39 -07:00
prachi 780e0efe79 Removing references to DataCenter - providers, using the networkoffering -> providers map instead.
TODO:
- Still leaving the provider columns in data_center schema as-is for CloudKit and BareMetal
- ExternalNetworkDeviceMgrImpl still needs to fix the dataCenter.setProviders calls and externalNetworkApplicance usage checks to see if zone has external networking.
2011-10-24 18:06:33 -07:00
alena 75c8e33226 Removed guestIpType from network/networkOffering 2011-10-24 17:05:00 -07:00
Edison Su 92eaf49f29 Add storage migration 2011-10-24 15:59:47 -07:00
anthony 19df7ed8af Swift; create template from snapshot 2011-10-21 17:32:48 -07:00
anthony 6c5c24dd6b swift: create volume from template works 2011-10-21 12:53:58 -07:00
alena 219978a9be Create network using physical network id 2011-10-20 18:25:13 -07:00
Abhinandan Prateek 1ea9b5d703 bug 10588: putting config param for cluster sync intervals 2011-10-20 10:51:40 +05:30
alena ceda05298e Deprecate guestIpType in networkOffering api. Use type (Shared/Isolated) instead 2011-10-19 16:38:39 -07:00
frank 65f3bb1df5 Bug 11647 - OVM - no support for migrate instance
return available hosts when hypervisor type is Ovm
status 11647: resovled fixed
2011-10-17 16:26:32 -07:00
Abhinandan Prateek f7f2eb825d bug 10588: incorporated review comments (Reviewer Nitin, Murali, Kishan, Jana)
1. Finetune vriable scope, s_ for static vars
2. Impl should be cluster aware and a host going down should not affect the sync
2011-10-17 14:59:24 +05:30
alena c00058adc2 Added type (Shared/Isolated) to the networkOffering/networks 2011-10-13 17:33:41 -07:00
frank cd6b872f8d Bug 11670 - OVM - HA failed when host is disconnected from network
status 11670: resolved fixed
2011-10-13 14:46:36 -07:00
Abhinandan Prateek b050120303 bug 10588: clearing map so that the vm sync can resume on next connect, in case of failure 2011-10-12 12:34:54 +05:30
kishan 334eeccd2c bug 11561: Added new Dao RandomlyIncreasing, which will increase the Vm Id by 1-10 randomly
status 11561: resolved fixed
2011-10-11 12:40:50 +05:30
Sheng Yang 0121c0516d Network: Add Service providers
In the past, the NetworkElement would cover almost all the functionality that
e.g.  virtual router can cover: firewall, source NAT, static NAT, password,
VPN... So anyone want to implement the NetworkElement would have to implement
these service's specific methods, even it wouldn't support it. Also, if we want
to find a e.g. FirewallServiceProvider, we have to proceed all the current
network service providers, to call a method to know if it support such service.
That's neither elegant nor scaling way to do it.

As the first step, this patch separates each ServiceProvider from NetworkElement
(there are some interface already out of NetworkElement, so this patch slightly
modifies them too), and only the class would implement the correlated interface, would
have the ability to do these services.
2011-10-10 11:45:39 -07:00
Edison Su 962bbcd5a0 bug 11634: add manual vm migration support for kvm
status 11634: resolved fixed
2011-10-10 11:31:18 -07:00
frank 0f5384d086 Bug 11522 - New agent manager
move findxxx interface from HostDao to Managers
2011-10-06 11:56:17 -07:00
prachi a51fb221d6 Bug 11169 - Couldn't deploy a router because the host it existed on is in Maintenance.
Changes:
- VirtualMachineMgr puts the constraint that if Root volume is already READY, we provide the clusterId in the plan to the deploymentPlanner. Planner then searches for resources only under that cluster.
- If no deployment could be found, deploying VM fails.
- Fixed this, such that incase the root volume is recreatable, we call the planner again by removing the cluster constraint. Planner will then search for resources in other clusters.
- Works for system VMs(SSVM, consoleproxy, virual routers).
2011-10-05 18:35:59 -07:00
alena 25c2734e03 More stuff to Projects feature - added support for adding resources (vms, templates, isos) to the project 2011-10-05 13:24:25 -07:00
prachi 9bd5e5871b Bug 11481 - get manual live migration working with all VMs
Changes:
- Added a new API  'migrateSystemVm'  backed by MigrateSystemVMCmd.java to migrate system VMs (SSVM, consoleproxy, domain routers(router, LB, DHCP))
- This is Admin only action
- The existing API 'migratevirtualmachine' is only for user VMs
2011-09-29 17:47:46 -07:00
alena 12e25fb988 Implemented vm* api commands to be executed against the project 2011-09-29 10:20:51 -07:00
Abhinandan Prateek 83c6cf3db0 bug 10588: code to sync VM state at cluster level and dettached from ping command 2011-09-27 13:18:21 +05:30
alena ccd47c1b21 Implemented Project Invitations 2011-09-26 17:47:20 -07:00
alena a1cab92ae1 bug 11537: revoke related FirewallRules when do vmExpunge and ipAddress release.
status 11537: resolved fixed

Reviewed-by: edison@cloud.com

Conflicts:

	server/src/com/cloud/network/firewall/FirewallManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
2011-09-22 14:01:02 -07:00
alena 9f9b60a287 1) Added resource limits for the Projects - the same as for the account
2) Added "Project" limit type for the Domain object
2011-09-21 17:09:49 -07:00
alena a1331d1cfc Intermidiate checkin to Project feature:
1) Introduce new managers - ProjectManager and DomainManager. Moved all domain related code from AccountManager to DomainManager.
2) Moved some code from ManagementServerImpl to the correct managers.
3) New resource limit for Domain - Project
2011-09-20 18:35:28 -07:00
prachi 0eea1cb733 Bug 11404 - VM was in Running state, had null for a pod_id, basically didnt allow creation of subsequent vm's
Reviewed-by: Alex

Changes:
- When management server starts, it goes through all the pending work items from op_it_work table and schedules HA work for each. It used to mark each item as done. Instead we should keep the item as pending and let it get marked as Done after the HA work is done.
- Changes in VirtualMachineMgr::advanceStop() :
a) if we find a VM with null hostId, we stop the VM only if it is forced stopped.
b) if VM state transition to Stopping fails,for state Starting and Migrating we try to find the pending work item and then do cleanup the VM. In case state is Stopping we can cleanup directly.
c) We proceed releasing all resources only if state transitioned to 'Stopping'.
- Changes in HA:
a) Depend on VirtualMachineMgr::advanceStop() in case host is not found to do VM cleanup
- When Vm state between mgmt server and agent syncs from starting -> running, mark any pending work item as done.

Conflicts:

	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
2011-09-15 19:06:19 -07:00
prachi 6b82ba3ff9 Bug 11457 - NullPointerException while synching VM state from Starting -> Running between management server and agent
Reviewed-by: Kelven and Alex

Changes:
- Added log statements about the podId during deploying a VM.
2011-09-15 16:16:24 -07:00
prachi df17ce5648 Bug 11457 - NullPointerException while synching VM state from Starting -> Running between management server and agent
reviewed-by: Alex/Kelven

Changes:
1.	UserVmManagerImpl :: finalizeStart()
Added null check for the cmds.getAnswers() object. Return ‘true’ if null.

2.	VirtualMachineManagerImpl :: advanceStart()
Move the line to set PodId to the vm being started above the state transition where hostId gets set, so that podId is not null in case management server goes down when vm starts on the agent. On restart, podId is not updated during fullsync. So this will prevent podId remaining null.

vm.setPodId(dest.getPod().getId());
2011-09-15 16:16:15 -07:00
Kelven Yang 7a64d8fda4 add VmwareInvestigator and VmwareFencer, use short worker VM name to avoid vCenter truncation 2011-09-14 15:15:26 -07:00