Commit Graph

2232 Commits

Author SHA1 Message Date
Alex Huang ff6b3fd11a Removed getzone 2013-08-26 17:31:08 -07:00
Toshiaki Hatano 914e7c4542 Revert "CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor"
This reverts commit 34ae32e0c2.
2013-08-24 07:12:23 +00:00
Toshiaki Hatano 34ae32e0c2 CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor
Initial patch for VXLAN support.
Fully functional, hopefully, for GuestNetwork - AdvancedZone.

Patch Note:
 in cloudstack-server
- Add isolation method VXLAN
- Add VxlanGuestNetworkGuru as plugin for VXLAN isolation
- Modify NetworkServiceImpl to handle extended vNet range for VXLAN isolation
- Add VXLAN isolation option in zoneWizard UI

 in cloudstack-agent (kvm)
- Add modifyvxlan.sh script that handle bridge/vxlan interface manipulation script
-- Usage is exactly same to modifyvlan.sh
- BridgeVifDriver will call modifyvxlan.sh instead of modifyvlan.sh when VXLAN is used for isolation

Database changes:
- No change in database structure.
- VXLAN isolation uses same tables that VLAN uses to store vNet allocation status.

Known Issue:
- Some resource still says 'VLAN' in log even if VXLAN is used
- in UI, "Network - GuestNetworks" dosen't display VNI
-- VLAN ID field displays "N/A"
2013-08-24 01:39:11 +00:00
Alex Huang f23f1530e7 Removed missing class from application context 2013-08-19 14:13:31 -07:00
Alex Huang 4ba359c3fe Moved VirtualMachineManager into engine 2013-08-19 14:13:28 -07:00
Daan Hoogland 53d09c6f18 uri code per broadcast/isolation type , default is to accept anything as uri , vlan and lswitch need some extra tlc
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2013-08-15 14:26:26 +02:00
Edison Su c58f15d867 CLOUDSTACK-4222: use new volume object in case of migrate volume 2013-08-13 15:16:45 -07:00
Alex Huang de2bd96d98 Moved volume related code into cloud-engine-orchestration 2013-08-12 19:06:51 -07:00
Alex Huang 0e19e82fac Split up the volume manager into two. One part is for self-service. One part belongs in the engine. Removed old 2.1 upgrade code. In order to upgrade from 2.1, you must upgrade to 2.2. first. So therefore these files are no necessary in the newer versions of CloudStack 2013-08-12 19:05:22 -07:00
Koushik Das 8cf48ed2ce CLOUDSTACK-4179: [Performance Testing] Time taken for Deploy VM async job to complete is considerably higher
The time increased due to the newly added dedicated resources feature. During regular VM deployment, all dedicated resources are put in avoid list so that they are not considered for deployment.
Now the way to compute the list of dedicated resources is not optimal and performance deteriorates in an environment having lot of pods, clusters and hosts as the logic is to query db. for each suc resource.

The fix is to optimize the logic not to loop through all resources but get the list of each resource type in a single query.

Conflicts:
	server/src/com/cloud/deploy/DeploymentPlanningManagerImpl.java
2013-08-09 16:57:21 +05:30
Alena Prokharchyk 4976a67bfc CLOUDSTACK-4193: don't let privateGateway to be created with NULL networkId 2013-08-08 10:49:12 -07:00
Min Chen 151a7ee497 CLOUDSTACK-3861 and CLOUDSTACK-3862: Deprecate old S3/Swift classes. 2013-08-02 18:16:46 -07:00
Alex Huang 8930cfa983 Switched over to use the new jobs framework 2013-08-02 11:07:55 -07:00
Bharat Kumar 21f1b137cb Cloudstack-3753 Multiple VLAN range API need to accept a list rather than "add" or "remove" per command
Reviewed-by: Alena Prokharchyk

Conflicts:
	server/test/com/cloud/network/MockNetworkManagerImpl.java
2013-08-01 13:36:20 -07:00
Mice Xia 51e4f597e0 fix CLOUDSTACK-3591 add usage recording for VM snapshots
Conflicts:

	plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	server/src/com/cloud/vm/snapshot/VMSnapshotManagerImpl.java
	setup/db/db/schema-410to420.sql
2013-08-01 10:47:36 +08:00
Harikrishna Patnala 2c53ede1de CLOUDSTACK-3848: Usage events for dynamic scaling of cpu/ram operation on VM 2013-07-31 15:07:17 +05:30
Alex Huang a4cea4ebf2 Removed schema from the dependency of many components 2013-07-29 10:55:19 -07:00
Min Chen c8cafb91a7 CLOUDSTACK-3818: NFS Cache Improperly Named. 2013-07-26 15:07:45 -07:00
Rajesh Battala 24a8d60d6f CLOUDSTACK-62 [AWS Style Health Checks] Response of the API listLoadBalancerRuleInstances should show the service state of a VM if health check is configured for it 2013-07-26 16:40:26 +05:30
Alex Huang 9aaa378b08 Moved ClusterManager into it's own package. Removed the agent load balancing code. 2013-07-25 19:00:26 -07:00
Min Chen 45d38c4142 CLOUDSTACK-3709:[Object_Store_Refactor][UI] Can't delete NFS Cache
storage through UI.  Fixed at API side.

Conflicts:
	server/src/com/cloud/storage/StorageManagerImpl.java
2013-07-25 17:33:28 -07:00
frank 42738c2fda change associatesUcsProfileToBlade to async api 2013-07-25 15:26:51 -07:00
Ian Duffy eaa4143371 Merge LDAPPlugin
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-25 17:54:52 +05:30
Alex Huang 555211a080 Moved Configuration from api to utils and moved the package. This was done by eclipse so I only ran the unit test to verify everything is fine 2013-07-25 03:57:12 -07:00
Harikrishna Patnala 0010faee4b Fix for CLOUDSTACK-2536
Removing memoryovercommitratio and cpuovercommitratio parameters from addCluster and updateCluster APIs,
since these can be configurable using updateConfiguration API at cluster level.
By default while creating cluster these values are taken from global configuration parameters.
2013-07-25 13:42:08 +05:30
Edison Su 7f200d966e CLOUDSTACK-3681: fix bunch of bugs related to vmware, regarding to snapshot 2013-07-24 19:06:30 -07:00
Alena Prokharchyk 57623832b0 CLOUDSTACK-3478: fixed volume destroy. #1 - don't call destroy() when the volume is in Expunged/Expunging/Destroy state. #2 - added state transition for Expunged state 2013-07-23 14:40:59 -07:00
Alex Huang 319d91e1c2 Removed the getByTypeAndId() method and replace it with getById method 2013-07-22 20:06:04 -07:00
Alex Huang 1325014a03 Changed VirtualMachineProfile to be non-generic. From here on VirtualMachineManager will only manage vm instance. It doesn't understand the difference between different types of VMs. This makes the vmsync code to be generic across all vms. 2013-07-22 11:48:11 -07:00
Min Chen d423a755f5 CLOUDSTACK-3274: API Refactoring: secretkey and accesskey of the backing
store is found in plaintext in the logs.

Conflicts:
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/api/ApiServlet.java
2013-07-20 18:01:49 -07:00
Alex Huang 2d4464d2ba Applied review request 12685 2013-07-19 08:29:33 -07:00
ahuang 11971b5a58 Bring over from vmsync changes in utils package. Simple changes. New files are not being used yet in master 2013-07-17 18:29:42 -07:00
Bharat Kumar d73bb22802 Incorportaed the review changes Now dhcpservice IPs are removed when last vm from the subnet is removed. Rebased with master.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 12:35:06 +05:30
Bharat Kumar dd33abffbe Cloudstack-2997 Make haproxy maxconn configurable
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 10:06:11 +05:30
Edison Su bf32776f9f be able to upload template into swift 2013-07-16 18:07:06 -07:00
ahuang 11e1e585b1 UserContext switched to CallContext. Added generic storage mechanism for other code to carry information throughout a call. Made the calling User and Account a must have. Added an interface to carry entities in error. Fixed up the code. Part of the vmsync branch 2013-07-16 11:24:21 -07:00
Prachi Damle fa9ca72f36 CLOUDSTACK-2155: Anti-Affinity -When Vm deployment is done in parallel , anti-affinity rule is not honored.
Changes:
- Locking the group and save reservation mechanism done by DPM
- Added admin operation to cleanup VM reservations
- DPM will also cleanup VM reservations on startup
2013-07-16 10:53:06 -07:00
Toshiaki Hatano b134854937 CLOUDSTACK-3431: KVM: cloudstack-plugin-hypervisor-kvm with BridgeVifDriver doesn't cleanup vNet due to multiple reasons
- Move vnetBridge clean up function from LibvirtComputingResource to BridgeVifDriver
-- since only BridgeVifDriver have to handle this event
- LibvirtComputingResource now properly call VifDriver.unplug() when it receives UnPlugCommand

- Remove not working and no longer used method getVnet(String) from VirtualMachineName
- Remove not working and no longer used method getVnet() from StopCommand
- Remove unused constructer StopCommand(VirtualMachine, String, boolean) from StopCommand
- Remove unused member vnet from StopCommand
- Remove unused member _modifyVlanPath from OvsVifDriver

Tested with 2 KVM hosts and confirmed it correctly manipulate vnetBridge with start, stop, migrate, plug, and unplug event

Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2013-07-15 09:12:52 +02:00
Edison Su 8f4575e877 CLOUDSTACK-3400: add swift support 2013-07-13 02:07:15 -07:00
Edison Su 0c1ae20e77 add inital swift support
Conflicts:

	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/test/com/cloud/resource/MockResourceManagerImpl.java
2013-07-13 02:07:03 -07:00
Hugo Trippaers 2691970f28 CLOUDSTACK-728 Get the framework in place the support the removal of the portgroup that is created for a nic connected to an lswitch.
Add a command to tell a hypervisor guru to take some action when
expunging a nic
2013-07-12 12:18:34 +02:00
Alena Prokharchyk dd91974920 CLOUDSTACK-2843: added CopyCommand to the list of the commands controlled by execute.in.sequence.hypervisor.commands global config. This command was introduced by the Storage refactoring, and used for volume creation on the primary storage 2013-07-11 17:44:12 -07:00
Murali Reddy 7f2c659630 CLOUDSTACK-1673: AWS Regions - Events - User disable / Domain Delete event does not
include the UUID of the user/domain that was disabled.

- added enity type and enity UUID details to UserContext
- publish the entity type and UUID details for the action events
  generated  for accout/user/domain
2013-07-11 18:01:43 +05:30
Jayapal e46b90078e CLOUDSTACK-3352 fixed removing previous acl rules when emply acl is applied 2013-07-09 12:50:39 +05:30
Ryan Dietrich 70f33efa72 CLOUDSTACK-3190: Async jobs actions now trigger event bus messages to be
published

-AsyncJobManagerImpl to publish async job events when async jobs are
created, updated and completed
2013-07-05 17:48:25 +05:30
Alex Huang 43ab9506ab Moved HostAllocator and PodAllocator from server to api package, where they are supposed to be. In the process, I had to change the VO objects used by these two itnerfaces to interface equivalent. This makes sense because there's really no reasons why allocators require write access to the database. One of the files have been reformatted because it contained a bunch of tabs instead of spaces for indentation. 2013-07-03 17:48:53 -07:00
Alex Huang bec53fb59a VMSync: Separating jobs from api 2013-07-03 11:22:40 -07:00
Mike Tutkowski 99227f7b3e SolidFire plug-in and related changes
SolidFire plug-in

SolidFire plug-in related
2013-06-28 16:59:21 -06:00
Jayapal 3096261c05 Updated to show same value in log msg SetFirewallRulesCommand and accessdetails for egress default policy 2013-06-28 19:05:54 +05:30
Murali Reddy 0f40cfbea8 CLOUDSTACK-2045: [Multiple IPs Per Nic] This feature is not working well
in case of networks with external devices after GC

add an exception for networks that use external networking devices and has
secondary guest IP's allocated. On network GC, when network goes through
implement phase a new vlan is allocated, based on the acquired VLAN id cidr
of the network is decided in case of external networking case. While NIC
uses reservation strategy 'Start' which ensures that new primary ip is
allocated for the NiC from the new CIDR. Secondary IP's have hardcoded
IP's in  network rules. So prevent network GC.
2013-06-28 12:26:20 +05:30
Donal Lafferty 4361418e41 Removed Dead Code from Management Server Hyper-V 2012 Support
Update ImageFormat enum to include VHDX format introduced with Hyper-V
Server 2012.
Remove existing Hyper-V plugin, because it does not work and is dead
code.
Remove references to existing Hyper-V plugin from config files.
Remove Hypervisor.HypervisorType.Hyperv special cases from manager code
that are unused or unsupported.
Specifically, there is no CIFS secondary storage class
"CifsSecondaryStorageResource".  Also, the Hyper-V plugin's
ServerResource is contacted by the management server and not the other
way around.
Add Hyperv-V support to ListHypervisorsCmd API call

Signed-off-by: Edison Su <sudison@gmail.com>
2013-06-27 11:46:02 -07:00
Harikrishna Patnala 9385cf0453 CLOUDSTACK-2835: VR Deployement from admin registered template is failing because registered template type is user. Additional parameter "isrouter" in register/update template API for the root admin. True if registered template is of type ROUTING.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-06-26 16:00:12 +05:30
Wei Zhou 3bb4ec9f65 CLOUDSTACK-1192: Disk I/O Statistics support KVM only util 20130625 2013-06-26 11:10:11 +02:00
Hiroaki KAWAI 2d6369c826 CLOUDSTACK-2756: Stratosphere SSP plugin
Stratosphere SSP is an SDN solution which creates virtual L2
networks backed by vxlan and vlan. SSP will ask hypervisor to set a
specific vlan, then SSP will interact with openflow switches and
put vxlan/vlan translation flow rules.

This plugin provides SSP as "connctivity" service provider.

Signed-off-by: Hiroaki KAWAI <kawai@stratosphere.co.jp>
2013-06-25 15:31:40 +09:00
Jayapal c22e7d0052 CLOUDSTACK-1578 SRX: Egress default policy configurable using network offering on SRX firewall 2013-06-24 13:37:01 +05:30
Jayapal 6a7ae637dd CLOUDSTACK-1578 Egress default policy configurable using network offering in xenserver with VR as firewall provider 2013-06-24 13:37:00 +05:30
Edison Su 97f8c524b8 merge object_store 2013-06-20 00:18:00 -07:00
Harikrishna Patnala 7b6b8d7a07 CLOUDSTACK-2987 Ensure XStools to be there in template inorder to enable dynamic scaling of vm
CLOUDSTACK-3042 - handle Scaling up of vm memory/CPU based on the presence of XS tools in the template
This also takes care of updation of VM after XS tools are installed in the vm and set memory values accordingly to support dynamic scaling after stop start of VM

Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-06-20 11:08:38 +05:30
Edison Su 9aec9c605c merge to master 2013-06-19 18:16:47 -07:00
Alena Prokharchyk d66e9c7b51 CLOUDSTACK-2843: Provideded an ability to turn off the synchronization being done on the CS agent side,
for number of commands participating in Vm deployment process, as parallel deployment is supported on the hypervisor side.
The behavior is controlled by global config varirables:

"execute.in.sequence.hypervisor.commands" (false by default) sets/resets the synchronization for commands:
=========================
StartCommand
StopCommand
CreateCommand
CopyVolumeCommand

"execute.in.sequence.network.element.commands" (false by default) sets/resets the synchronization for commands:
==========================
DhcpEntryCommand
SavePasswordCommand
UserDataCommand
VmDataCommand

As a part of the fix, increased the global lock timeout to 30 mins in several VR scripts:
===========================
edithosts.sh
savepassword.sh
userdata.sh

to support situations when multiple concurrent calls to the script are being made.
2013-06-19 10:12:13 -07:00
Hiroaki KAWAI 2f659d6d86 Add comment
Comment for RBD explanation.
2013-06-19 15:36:26 +09:00
Wei Zhou 882220e802 CLOUDSTACK-1301: VM Disk I/O Throttling 2013-06-18 10:02:55 +02:00
Alena Prokharchyk 5d0a1cee13 CLOUDSTACK-2883: create default network offering with internal lb support (if doesn't exist already) 2013-06-17 16:13:19 -07:00
Min Chen 1df4cf839e CLOUDSTACK-3028: Object_Store_Refactor - S3 reduced redundancy storage
should be an option.
2013-06-17 11:49:33 -07:00
Edison Su f41c800d88 merge to master 2013-06-14 19:06:33 -07:00
Edison Su a715eb8121 clean up storage related code, and add lru replacement algorithm for cache storage 2013-06-14 15:55:59 -07:00
Min Chen 18aeef3ef1 Merge branch 'master' (up to commit
c30d9be3ce) into object_store.
2013-06-12 11:20:32 -07:00
Jayapal c1ad3b7974 CLOUDSTACK-2604 Fixed deleting secondary ip when no PF rules set
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-06-10 12:13:08 +05:30
Min Chen 66e702222d Simplify various DeleteTemplateCommnad, DeleteVolumeCommand and
DeleteSnapshotBackupCommand to use one DeleteCommand, also provide
BaseImageStoreDriverImpl class for plugin to inherit to avoid code
duplication.
2013-06-06 18:00:38 -07:00
Min Chen e92cd6d632 Move data store specific extract volume logic from VolumeManager to data
store driver.
2013-06-04 13:54:14 -07:00
Min Chen ef03d5a122 Move data store specific extract template/iso logic from
TemplateManager to data store driver.
2013-06-04 11:50:43 -07:00
Bharat Kumar 0a69b82899 CLOUDSTACK-2620 [Multiple_IP_Ranges] Guest vm's nameserver is not set to VRs guest IP address in case of multiple subnets
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-06-03 19:09:01 +05:30
Wei Zhou f714d26039 Revert "CLOUDSTACK-1301: Add VM Disk I/O Throttling"
This reverts commit 6dad8adf8f.
2013-06-03 07:48:03 +02:00
Wei Zhou 6dad8adf8f CLOUDSTACK-1301: Add VM Disk I/O Throttling 2013-06-01 08:03:02 +02:00
Wei Zhou b9b0168da4 CLOUDSTACK-1192: Add Disk I/O Statistics 2013-06-01 08:00:48 +02:00
Murali Reddy 9c0f9aceb8 CLOUDSTACK-2332:[GSLB] deleteAccount is not cleaning the gslb rules
created by the account

revoking GSLB rules of account on delete
2013-05-31 19:08:40 +05:30
Rajesh Battala af4177b86c Fixed CLOUDSTACK-2662 Preferred implicit dedication fails with insufficient capacity even if shared hosts are available.
Issues:
In Implicit planner resource usage is fixed to "Dedicated". It should be Dedicated/Shared depending upon the Implict Planner strict/preferred modes and hosts availability.

Fixed:
Issue is fixed by determining the resource usage to be "Dedicated/Shared" depending upon the Implicit strict/preferred mode and the hosts availability for the planner.
2013-05-31 00:28:56 -07:00
Alena Prokharchyk 1300fc8128 AccountManager/Service: reduced visibility for methods that are called only from AccountManagerImpl itself 2013-05-30 11:18:32 -07:00
Saksham Srivastava 17267794ad CLOUDSTACK-681: Dedicated Resources - Explicit Dedication, Private zone, pod, cluster or host. <Patch1>
This feature allows a user to deploy VMs only in the resources dedicated to his account or domain.

1. Resources(Zones, Pods, Clusters or hosts) can be dedicated to an account or domain.
   Implemented 12 new APIs to dedicate/list/release resources:
   - dedicateZone, listDedicatedZones, releaseDedicatedZone for a Zone.
   - dedicatePod, listDedicatedPods, releaseDedicatedPod for a Pod.
   - dedicateCluster, listDedicatedClusters, releaseDedicatedCluster for a Cluster
   - dedicateHost, listDedicatedHosts, releaseDedicatedHost for a Host.
2. Once a resource(eg. pod) is dedicated to an account, other resources(eg. clusters/hosts) inside that cannot be further dedicated.
3. Once a resource is dedicated to a domain, other resources inside that can be further dedicated to its sub-domain or account.
4. If any resource (eg.cluster) is dedicated to a account/domain, then resources(eg. Pod) above that cannot be dedicated to different accounts/domain (not belonging to the same domain)
5. To use Explicit dedication, user needs to create an Affinity Group of type 'ExplicitDedication'
6. A VM can be deployed with the above affinity group parameter as an input.
7. A new ExplicitDedicationProcessor has been added which will process the affinity group of type 'Explicit Dedication' for a deployment of a VM that demands dedicated resources.
   This processor implements the AffinityGroupProcessor adapter. This processor will update the avoid list.
8. A VM requesting dedication will be deployed on dedicatd resources if available with the user account.
9. A VM requesting dedication can also be deployed on the dedicated resources available with the parent domains iff no dedicated resources are available with the current user's account or
   domain.
10. A VM (without dedication) can be deployed on shared host but not on dedicated hosts.
11. To modify the dedication, the resource has to be released first.
12. Existing Private zone functionality has been redirected to Explicit dedication of zones.
13. Updated the db upgrade schema script. A new table "dedicated_resources" has been added.
14. Added the right permissions in commands.properties
15. Unit tests:  For the new APIs and Service, added unit tests under : plugins/dedicated-resources/test/org/apache/cloudstack/dedicated/DedicatedApiUnitTest.java
16. Marvin Test: To dedicate host, create affinity group, deploy-vm, check if vm is deployed on the dedicated host.
2013-05-30 01:07:01 -07:00
Min Chen efbf9c8635 Move ExtractVolumeCmd from ManagementServerImpl to VolumeManagerImpl,
also add support for S3 for ExtractVolumeCmd.
2013-05-29 22:27:07 -07:00
Nitin Mehta 8d1189c2ae CLOUDSTACK-2060
Global config to turn off dynamically scale vm functionality
2013-05-29 19:02:06 +05:30
Murali Reddy 883333c214 CLOUDSTACK-2700:on network/vpc delete, portable IP should be still
associated with account

Unlike public ip which gets dis-associated (released) with the account
on network/VPC delete, portable IP should continue to be associated with
the account even when the network/VPC with which it is currently
associated in deleted. This fix ensures portable IP are associated to
account even after network/vpc is deleted.
2013-05-27 18:44:41 +05:30
Murali Reddy ad48c83808 generate an action event when portable IP association is transferred
from a network to different network
2013-05-27 18:44:41 +05:30
Edison Su 0ed441c690 CLOUDSTACK-2637: fix upload volume 2013-05-24 19:00:52 -07:00
Murali Reddy b000781bfc fixing disassociateIpAddress API to call 'releasePortableIpAddress'
network service method for portable ip address. Also fix ensures events
coresponding to the portabl ip are generated correctly.
2013-05-24 18:54:04 +05:30
Edison Su 3ec52807f1 CLOUDSTACK-2593: fix migrate volume between pools through secondary storage 2013-05-23 18:26:16 -07:00
Min Chen 98af424053 Merge branch 'master' into object_store. 2013-05-23 18:00:15 -07:00
Alena Prokharchyk f41d398cf7 Remote access vpn: method name change 2013-05-22 16:05:03 -07:00
Edison Su 5af888c67a add image format in volumevo 2013-05-22 13:38:11 -07:00
Hiroaki Kawai 7260e8d83f CLOUDSTACK-1638: Introduce NetworkMigrationResponder
The location of the virtual machine is provided by DeployDestination, which will
be passed in NetworkGuru#reserve and NetworkElement#prepare.

During the virtual machine migration, it actually changes DeployDestination and
it looks like that it will tell that event to network components as it has
NetworkManager#prepareNicForMigration. The problem is that althogh the interface
has that method, NetworkManagerImpl does not tell the DeployDestination changes
to network components.

So IMHO, we need to add calls of NetworkGuru#reserve and NetworkElement#prepare
in NetworkManagerImpl#prepareNicForMigration . And then, we also need to add
calls NetworkGuru#release and NetworkElement#release after the migration,
otherwise the network resources that plugin reserved will be kept even when the
vm leaves off.

(Sheng Yang: rebase code, add license header)

Signed-off-by: Sheng Yang <sheng.yang@citrix.com>
2013-05-20 16:43:18 -07:00
Murali Reddy d6452be861 CLOUDSTACK-652: meging 'portable public ip' feature
Squashed commit of the following:

commit f244f9ce7982db16984dd87c31545f1c0240c704
Merge: 993cbb0 f5c8e38
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Mon May 20 18:54:05 2013 +0530

    Merge branch 'master' into portablepublicip

    Conflicts:
    	server/src/com/cloud/server/ManagementServerImpl.java
    	server/test/org/apache/cloudstack/networkoffering/ChildTestConfiguration.java

commit 993cbb0df9fa6e64b96b18ed775b73cdf4a8f5d7
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Mon May 20 18:49:54 2013 +0530

    introduce 'transferPortableIP' interface method in network manger. This
    method will transfer association of portable ip from one network to
    another network.

commit 0c1c2652c1b39e9a81ca35464360e11ed9ef23f1
Merge: a718d35 a29e393
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Fri May 17 02:48:54 2013 +0530

    Merge branch 'master' into portablepublicip

    Conflicts:
    	utils/src/com/cloud/utils/net/NetUtils.java

commit a718d353f7
Merge: ecca117 c211818
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Mon May 13 21:22:19 2013 +0530

    Merge branch 'master' into portablepublicip

    Conflicts:
    	api/src/org/apache/cloudstack/api/ResponseGenerator.java
    	server/src/com/cloud/api/ApiResponseHelper.java
    	server/src/com/cloud/network/NetworkServiceImpl.java
    	server/src/com/cloud/network/addr/PublicIp.java
    	server/src/com/cloud/server/ManagementServerImpl.java
    	server/test/com/cloud/network/MockNetworkManagerImpl.java
    	server/test/com/cloud/vpc/MockConfigurationManagerImpl.java
    	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
    	setup/db/db/schema-410to420.sql

commit ecca117e34
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Mon May 13 20:05:29 2013 +0530

    added integration tests for testing portable ip ranges

commit 895a27c277
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Mon May 13 15:12:19 2013 +0530

    - establish model for transferring portable IP association from a network
      with which it is associated to another network.

    - enabling static nat api, extended to transfer potrtable IP across the
      networks if the VM/network is different from the current associate
      network of the portable ip

commit 51509751b2
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Mon May 13 12:05:33 2013 +0530

    seperate out associate/disassociate with guest network operations from
    alloc and release of portable ip

commit bd058f58c2
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Sun May 12 21:14:48 2013 +0530

    enhance disasociateIPAddr API to release protable IP associated with a
    guest network or VPC

commit 27504d9098
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Sun May 12 16:53:45 2013 +0530

    enhance asociateIPAddr API to acquire a protable IP and associate with a
    guest network or VPC

commit f82c6a8431
Merge: 3dbfb44 0749013
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Sat May 11 23:32:13 2013 +0530

    Merge branch 'master' into portablepublicip

    Conflicts:
    	api/src/com/cloud/network/IpAddress.java
    	api/src/org/apache/cloudstack/api/ResponseGenerator.java
    	client/tomcatconf/commands.properties.in
    	server/src/com/cloud/api/ApiResponseHelper.java
    	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
    	server/src/com/cloud/server/ManagementServerImpl.java
    	server/test/org/apache/cloudstack/affinity/AffinityApiTestConfiguration.java
    	server/test/org/apache/cloudstack/networkoffering/ChildTestConfiguration.java
    	setup/db/db/schema-410to420.sql

commit 3dbfb44eb5
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Sat May 11 20:33:19 2013 +0530

    - add 'portable' boolean as property of IpAddress, persist the property in
    IPAddressVO, return the property in IpAddressResponse

    - add ability to request portable IP in associateIpAddress api

commit bf3cb274cf
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Sat May 11 16:08:40 2013 +0530

    add the status of each portable IP (its state, details of associated data
    center/VPC/guest network etc) in the PortableIpRangeResponse returned by
    listPortableIpRanges API

commit e7b2fb2255
Author: Murali Reddy <muralimmreddy@gmail.com>
Date:   Sat May 11 14:36:01 2013 +0530

    Introdcues notion of 'portable IP' pool at region level.

    Introduces root admin only API's to provision portable ip to a region
       - createPortableIpRange
       - deletePortableIpRange
       - listPortableIpRanges
2013-05-20 20:05:47 +05:30
Prachi Damle 31a67706e4 CLOUDSTACK-2070: Anti-Affinity - When Vm deployment fails because of not being able to satisfy the anti-affinity rule , user should be provided with more informative message.
Changes:
- There is no good mechanism currently to figure out if the  deployment failed due to affinity groups only
- We can just hint the user that the deployment might have failed due to the affinity groups and ask to review the input
2013-05-17 14:36:23 -07:00
Nitin Mehta 4eb310e926 iCLOUDSTACK-2321
Fix the response of scaleVMCmd
Add Scale System vm command
2013-05-17 17:43:43 +05:30
Edison Su f7c1b711ad merge to master 2013-05-16 23:56:20 -07:00
Devdeep Singh adbebc1892 Changes for implicitly dedicating a resource. It includes a following:
1. A new implicit planner which extends the functionality provided by FirstFitPlanner.
2. Implicit planner can be used in either strict or preferred mode. In strict mode it tries to deploy a vm of a given account on a host on which vms of the account are already running. If no such host is found it'll search for an empty host to service the request. Otherwise the deploy vm request fails.
3. In preferred mode, if a host which is running vms of the account or an empty host isn't found, the planner then tries to deploy on any other host provided it isn't running implicitly dedicated strict vms of any other account.
4. Updated the createServiceOffering api to configure the details for the planner that the service offering is using.
5. Made db changes to store the service offering details for the planner.
6. Unit tests for testing the implicit planner functionality.
7. Marvin test for validating the functionality.
2013-05-17 11:40:31 +05:30
Prachi Damle a2eb7bab1e CLOUDSTACK-2056: DeploymentPlanner choice via ServiceOffering
- Changes merged from planner_reserve branch
- Exposing deploymentplanner as an optional parameter while creating a service offering
- changes to DeploymentPlanningManagerImpl to make sure host reserve-release happens between conflicting planner usages.
2013-05-16 15:02:17 -07:00
Murali Reddy 565d829c00 CLOUDSTACK-2460: fix the event descriptions for
create/delete/update/assign global load balancer rule apis
2013-05-16 15:19:41 +05:30
Sheng Yang 2d2c0c48cd Merge branch 'pvlan'
Conflicts:
	scripts/vm/hypervisor/xenserver/xenserver60/patch
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/NetworkServiceImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/vpc/VpcManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockVpcVirtualNetworkApplianceManager.java
2013-05-15 16:08:08 -07:00
Min Chen 62a9daa5d6 Properly invoke parent constructor to default Answer result to true. 2013-05-15 15:52:46 -07:00
Prachi Damle c8af438e64 CLOUDSTACK-2522: While processing agents behind on ping, we may fail to process a host that is already in 'Down' state
Changes:
- Added a transition for DOWN -> DOWN state on PING TIMEOUT so that transition will set mgmt_server_id in the host table to null.
2013-05-15 14:27:27 -07:00