----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/9182/ -----------------------------------------------------------
Review request for cloudstack. Description ------- Review Request for Implicit Dedication ====================================== This feature is a part of Dedicated Resources: private pod, cluster or host. This feature allows to add a service offering that will indicate that the VM needs to be on a host exclusive to an account. 1. A new check parameter called 'isDedicated' is added to the service offerings. 2. A dedicated Instance can be deployed with the Service Offering having 'isDedicated' flag true. 3. Dedicated instance will be placed in the host having dedicated VMs of the same account. 4. If space is not available in the dedicated host, dedicated VM will be place in the new empty host. 5. A non-dedicated instance will be placed in any host but not in the dedicated host. 6. If dedicated host gets empty, it will become available for all the accounts. This addresses bug CLOUDSTACK-718. Diffs ----- api/src/com/cloud/offering/ServiceOffering.java b13346c api/src/org/apache/cloudstack/api/ApiConstants.java 58a7831 api/src/org/apache/cloudstack/api/command/admin/offering/CreateServiceOfferingCmd.java 54151fe api/src/org/apache/cloudstack/api/response/ServiceOfferingResponse.java 7a10f7f plugins/host-allocators/random/src/com/cloud/agent/manager/allocator/impl/RandomAllocator.java 0887ee9 plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java 82c6120 server/src/com/cloud/agent/manager/allocator/impl/FirstFitAllocator.java 2a5258c server/src/com/cloud/api/query/dao/ServiceOfferingJoinDaoImpl.java 8827c48 server/src/com/cloud/api/query/vo/ServiceOfferingJoinVO.java fe4a165 server/src/com/cloud/configuration/Config.java 4ae144e server/src/com/cloud/configuration/ConfigurationManager.java 19e74bf server/src/com/cloud/configuration/ConfigurationManagerImpl.java df6642a server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java 6b2d8ad server/src/com/cloud/deploy/FirstFitPlanner.java 06e46fb server/src/com/cloud/migration/ServiceOffering21VO.java fdec30e server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java e1c78e1 server/src/com/cloud/server/ConfigurationServerImpl.java b0abd04 server/src/com/cloud/service/ServiceOfferingVO.java c199a86 server/src/com/cloud/service/dao/ServiceOfferingDao.java 589de7c server/src/com/cloud/service/dao/ServiceOfferingDaoImpl.java 71ad51f server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java e420881 server/src/com/cloud/test/DatabaseConfig.java 5668a33 server/src/com/cloud/vm/UserVmManagerImpl.java ecf1242 server/src/com/cloud/vm/dao/VMInstanceDao.java 8b0a523 server/src/com/cloud/vm/dao/VMInstanceDaoImpl.java 85ad5d0 server/test/com/cloud/vpc/MockConfigurationManagerImpl.java 3989ecf setup/db/create-schema-view.sql f68a6ca setup/db/create-schema.sql ead98a5 setup/db/db/schema-40to410.sql ed4946e Diff: https://reviews.apache.org/r/9182/diff/ Testing ------- Manual Testing Done Tests for DeployVirtualMachine ============================== Setup : Host1 and Host2 , Host 1 has system vms , Host 2 is empty. Service Offering: SWD (Service offering with Dedication enabled), SND (Service offering without Dedication enabled) 1. Root admin deploys a non-dedicated VM with Service Offering(SND), it went to Host 2. 2. Account a1 deploys a dedicated VM with service offering(SWD). VM deployed in Host 1. Note: Host having only systemVms is considered as empty host 3. Now any non-dedicated VM (SND) placed in Host 2 - vm created from Root account went to Host 2 - Tested - vm created from a1 account went to Host 2 - Tested - vm created from u1 account went to Host 2 - Tested - vm created from different domains account : Host2 - Tested 4. Deploying dedicated VMs with(SWD) of different Account failed, Since no free host available. 5. Any dedicated VM (SWD) of same Account a1 is placed on Host 1. 6. If dedicated VMs in Host1 are deleted, the host becomes available for all accounts i.e Account u1's VM used this Host1 . Tests for Migration of dedicated VMs ==================================== 1. Migrate a non-dedicated VM: - if destination host has dedicated vms, request failed. - if destination host has no dedicated vms, migration to the destination host successful. 2. Migrate a dedicated VM: - if destination host has dedicated vms for the same account, migration to the destination host successful. - if destination host has no dedicated vms, request failed. Test for HostTags and isdedicated flag ====================================== 1. Host Tag is provided and isDedicated flag is true - if Host has dedicated vms, vm is placed in that host - if Host has no dedicated vms, request failed. 2. Host tag is provided and isDedicated flag is false - if Host has dedicated vms, request failed. - if Host has no dedicated vms, vm is placed in that host (as cloudstack is doing now) Thanks, deepti dohare
