Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  Deploy VM in cluster ]]></ac:plain-text-body></ac:structured-macro>

 

This feature  is implemented for following hypervisor  
  1-VMWARE
  2-KVM 
  3-XEN

 

 

 

 

 

 

 

 

 

 

Test Case ID

Test Case Name

Steps

Expected Result

Priority
(P0 P1 | P2| P1P3)

Test Case Type
(Sanity/Functional/Upgrade/Performance)

Automatable (Y/N)
VMWARE      (Y/N)

KVM(Y/N)

XEN(Y/N)

OVM(Y/N)

BAREMETAL(Y/N)

1

UI/API check

1-Add cluster using  API addCluster

add cluster API should have new parameters  cpuovercommitratio and ramovercommitratio

P0

 

Y

 

 

 

 

 

2

UI/API check

1- update commit ratio using API UpdateOvercommitRatio with parameter cpuovercommitratio,ramovercommitratio.

response should contain " details of the updated cluster along with the overcommit ratios"

P0

 

Y

 

 

 

 

 

check cluster level settings for

cpu.overprovisioning.factor

mem.overprovisioning.factor

 

2- update overprovisioning  ratio using following API 

for cpu name=cpu.overprovisioning.factor

for memory name=mem=cpu.overprovisioning.factor

http://10.220.*.*:8096/client/api?command=updateConfiguration&clusterid=01d9a06d-f493-4764-88b0-5a093dfcb491&response=json&name=cpu.overprovisioning.factor&value=2

3-List cluster

1-cluster level setting should have both settings

2-using api mentioned 2 you shoul be able to change overprovisioning  factors

3-List cluster response should show overprovisioning  factors

P1

 

Y

2

3

DB check

1-Logoin through UI
2-create a cluster with overcommit and change overprovisioning.factor to x
3-Login to DB
4-check cluster detail check cluster_detail table

5-check user_vm_details table

1-There should be some be   attribute ,which  represent overcommit factor and should  store overcommit factor for the already existing clusters .
memoryOvercommitRatio  and value  for each cluster .

2-user_vm_details table should have entry for every vm  with cpu/mem.overprovisioning.factor

P1 P0

 

Y

3Capacity calculation

used capacity

===========

 

 

 

( service offering of vm / overcommit it got deployed with) * new cpu/mem overcommit

(service offering of vm/overcommit value in user_vm_details table for that vm )*overCommit value in cluster details table for vm  cluster

Total capacity

===========

(cpu/mem).overprovisioning.factor*total actual capacity

 

 

1-calculate total capacity for cluster,pod,zone it should follow the  same formula

 

P1  

  

 Deploy VM in cluster

 

 

 

 

 

4

Deploy vm in a cluster with ram overcommit factor 2x a service offering(
ram=y)

1-deploy vm with ram= Create a cluster with overcommit factor x
2- deploy another VM with ram<=x say total available memory on host is z
3-deploy N vms with service offering (ram=y) until z.x>=N.y

1- VM in step 1 3 should get deployed
2-VM in step 2 should also get deployed

P0

Functional

Y

Y

Y

Y

N

N

  

P1

Functional

Y

5

Deploy VM in cluster with ram overcommit factor 2x service offering(ram =y)

1-deploy vm with ram= Create a cluster with overcommit factor x
2- say total available memory on host is z
3-deploy another VM with ram>x N vms with service offering (ram=y) until   z.x<N.y

1- VM Deployment of vm in step 1 3 should get deployed
2-VM in step 2 should not  get deployed

P0

Functional

Y

Y

fail.

P1

Functional Y

Y

N

N

6

Deploy vm in a cluster with cpu overcommit factor 2x a service offering(
CPU=y)

1-deploy vm with cpu= Create a cluster with overcommit factor x
2- say total available CPU on host is z
3-deploy another VM with cpu<=x N vms with service offering (CPU=y) until  z.x>=N.y

1- VM in step 1 3 should get deployed 2-VM in step 2 should also get deployed

P0 P1

Functional

Y

Y

Y

Y

N

N

7

Deploy vm in a cluster with cpu overcommit factor 2x

1-deploy vm with cpu= x
2- deploy another VM with cpu >x

1- VM in step 1 should get deployed
2-VM in step 2 should not  get deployed

P0

Functional

Y

Y

Y

Y

N

N

8

a service offering(
CPU=y)

1-Create a Deploy vm in cluster with overcommit factor x . and total available ram = M
1-Deploy vm with aSO where ram=y GB
2-max and min will be y GB and y/x GB
3-Deploy  vms  such sum of all y>M

1-CS will choose a value in y/x to y such that total required ram will be < M.

P0

Functional

Y

Y

Y

Y

N

N

 

 Addition of host to cluster
(admin responsibility to enable overcommit feature)

 

 

 

 

 

 

 

 

 

 

9

Addition of host to cluster(with ram overcommit >1 and cpu overcommit =1)

add a host(which supports  ram overcommit but not CPU) to cluster

1- CS should add host  to cluster

P0

Functional

Y

Y

Y

Y

N

N

10

Addition of host to cluster(with ram overcommit =1 and cpu overcommit >1)

add a host(which supports  cpu  overcommit but not ram) to cluster

1- CS should add host  to cluster

P0

Functional

Y

Y

Y

Y

N

N

11

Addition of host to cluster(with cpu overcommit >1 and ramovercommit >1)

add a host(which supports  cpu  and  ram overcommit) to cluster

1-CS  should  add host to cluster

P0

Functional

Y

Y

Y

Y

N

N

12

Addition of host to cluster(with ram overcommit >1 and cpu overcommit =1)

add a host(ram overcommit not supported,but cpu overcommit supported ) to cluster

1- CS should not add host  to cluster

P0

Functional

Y

Y

Y

Y

N

N

13

Addition of host to cluster(with ram overcommit =1 and cpu overcommit >1)

add a host(cpu overcommit not supported but ram overcommit supported) to cluster

1- CS should not add host  to cluster

P0

Functional

Y

Y

Y

Y

N

N

 

 

 

 

 

 

 

 

 

 

 

 

14

Change in cpu overcommit factor from 1 to  x(>1). of cluster

If there is host does not support cpu overcommit

1-CS should not allow change of overcommit factor

P0

Functional

Y

Y

Y

Y

N

N

15

Change in ram overcommit factor from 1 to  x(>1). of cluster

If there is host does not support ram overcommit

1-CS should not allow change of overcommit factor

P0

Functional

Y

Y

Y

Y

N

N

16

Change in cpu and ram overcommit factor from 1 to  x(>1). of cluster

If there is host does not support cpu and ram overcommit

1-CS should not allow change of overcommit factor

P0

Functional

Y

Y

Y

Y

N

N

17

Change in cpu and ram overcommit factor from 1 to  x(>1). of cluster

If all the  host cluster  support cpu and ram overcommit

1-CS should  allow change of overcommit factor

P0

Functional

Y

Y

Y

Y

N

N

18

Change in ram  overcommit factor from 1 to  x(>1). of cluster

If all the  host cluster  support  ram overcommit

1-CS should  allow change of overcommit factor

P0

Functional

Y

Y

Y

Y

N

N

19

Change in cpu  overcommit factor from 1 to  x(>1). of cluster

If all the  host cluster  support  cpu  overcommit

1-CS should  allow change of overcommit factor

P0

Functional

Y

Y

Y

Y

N

N

2- say total available CPU on host is z
3-deploy N vms with service offering (CPU=y) until z.x<N.y

1- Deployment of vm in step 3 should fail.

P1

Functional

Y

9

Addition of host to cluster

1- add host which have overcommit capacity (having licence)
2-Add another host wich don't have overcommit capacity (no licence)

1-Should fail xen does not support mixed licensing

P2

Fuctional

Y

11

weight

1-Deploy vms with different  service offerings

vm with different cpu speed (cpu speed*vcp ) should get different weight

P2

Functional

Y

 

"overcommit ratio update " effect on existing and new  vms and capacity calculation

 

"overcommit factor update " effect on vm

 

 

 

 

 

 

 

 

 

 

 

1-Login Through UI
2-Create a cluster with overcommit ratio x
3-Deploy a vm vms so that no resource are left in cluster
4-Change overcommit ratio to y

 1-VMs deployed in step-3 should have entry in user_vm_detail with overcommit x 

 

 

  

12

 

 

 

 

20

5-when y<x and there is no(less than required) resource left in cluster according to new overcommit ratio y<x  (for Memory)
6-Deploy a  vm.


1-VM deployed in step 3 should not have any effect of y 
2-step 6  should fail  for both CPU and RAM
6  should fail  

P1 P0

Functional

Y

Y

Y

Y

N

N

21

13

 

5-when y<x and there is enough resource left in cluster according to new overcommit ratio (for CPU)
6-Deploy a  vm.


1-VM deployed in step 3 should not have any effect of y 
2-step 6  should be successful for both CPU and RAM
6  should fail

P1 P0

Functional

Y

Y

Y

Y

N

N

22

14

 

5-when y>x and there is enough resource left in cluster according to new overcommit ratio (for Memory)
6-Deploy a  vm.


1-VM deployed in step 3 should not have any effect of step 6  should be successful

and an entry should be created in user_vm_Detail table with memory overcommit y

2-step 6  should be successful for both CPU and RAM
capacity calculation should be according  to test case 3 "capacity Calculation "

P2 P0

Functional

Y

Y

Y

Y

N

N

23

15

 

5-when y>x and there is not enouh resource left in cluster according to new overcommit ratio (For CPU)
6-Deploy a  vm.

1-VM deployed in step 3 should not have any effect of step 6  should be successfuland an entry should be created in user_vm_Detail table with cpu overcommit y

2-step 6  should fail for both CPU and RAM
capacity calculation should be according to test case 3 "capacity Calculation "

P1 P0

Functional

Y

Y

Y

Y

N

N

  

 VM Life cycle

 

 

 

 

 

 

 

 

 

 

 

Reboot

1-set cluster overcommit ratio x
2-Deploy some vm such that no resources are available on current host
3-change overcommit ratio to y

 1-VMs deployed in step-3 should have entry in user_vm_detail with overcommit x 

 

 

  

16

 

 

 

 

Reboot

4

 

 

1-Reboot all the vms in , deployed in step 2 when x>y all vm should come up without any failure

1-Overcommit value should not get changed  for the vms in user vm details table vm


  

P2

 Functional 

Y

 17

 

 

 

Reboot

4

 

 

1-Reboot all the vms in deployed in step 2 when x<y

all vm should come up without any failure

 

 

 

 

 

 

 

 

 

stop/start(destroy/restore)

1-Overcommit value should not get changed  for the  vms in user vm details table

P2

Functional

Y

18

stop/start

4 1-Stop and start all the vms in deployed in step 2 when x>y

1-all vm should get resource depend on new overcommit ratio
2-in case no resource available some vm will fail to start

 

 

 

 

 

 

 

 

 

 

Overcommit value should be changed to y for the  vms in user vm details table
2-If Summation of SO/Overcommit ratio for all vms< available actual memory and service ,
a-then all vm should come up without failure
b-else only few vms come up which satisfy above  condition

P2

Functional

Y

19

stop/start

4 1-Stop and start all the vms in deployed in step 2 when x<y

 

 

 

 

 

 

 

 

 

 

 

1-Stop and start one by one

some vm will not start

 

 

 

 

 

 

 

 

1-Overcommit value should be changed to y for the  vms in user vm details table

2-all VM should come up without failure

P2

Functional

Y

20

destroy/restore ->start

4-Destroy and restore and start  all the vms in deployed in step 2 when x>y

1-Overcommit value should be changed to y for the  vms in user vm details table
2-If Summation of SO/Overcommit ratio for all vms< available actual memory and service ,
a-then all vm should come up without failure
b-else only few vms come up which satisfy above  condition

P2

Functional

Y

21

destroy/restore ->start

1-destroy/restore->start  all the vms in deployed in step 2 when x<y

1-Overcommit value should be changed to y for the  vms in user vm details table
2-all VM should come up without failure

P2

Functional

Y

22

(manage/unmanage-Disable/enable  cluster)

1-Create a cluster with overcommit ratio x
2-unmanage-manage cluster

1-Overcommit value should not get changed  for the  vms in user vm details table

P2

Functional

Y

 

(manage/unmanage  cluster)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23

24

upgrade path

Pre upgrade steps
1-Deploy  some vms
2-Have some snapshot and template

3-set cpu overcommit  to x

4- set vmware.reserve.(mem/cpu) to true

Post upgrade steps
1-add cluster with overcommit factor x
2-Deploy a vm  where required resource for vm <= resource available in cluster according to overcommit factor
3-Deploy a vm where required resource for vm > resource available in cluster according to overcommit factor
4-stop vms and change overcommit ratio .
5-Start vms .

1- Upgrade should be successful

2-check cluster and global level settings it should list

(cpu/mem).overcommit.factor and vmware.reserve.
2(cpu/mem) with same values as before upgrade
3-Check cluster detail table it should have some attribute to store overcommit factor for cluster.
3 4-in postupgrade step-2 vm should get deployed successfully .
4 5- In postupgrade step-3 vm deployment should fail. 
6-in step 5 ,vm should  get max min resource based on new overcommit ratio.

 

Upgrade

Y

Y

Y

Y

N

N

 

 

 

 

 

 

 

 

 

 

 

 

24

25

Number of max VM can be deployed (CPU overcommit factor x, actula actual cpu C) in case enough RAM  available.

1- Deploy a vm with a SO where cpu=y .

number of vm must be limited by n*y*vcpu/x<C (nummber of vm *lower value of ram*vcpu < total cpu in cluster)

P1 P2

Functional

Y

Y

Y

Y

N

N

26 25

Number of max VM can be deployed (RAM overcommit factor x, actula actual ram M) in case if  enough CPUs are available.

1- Deploy a vm Deploy  vms with a SO where ram=y ,limit(y/x ,y)

number of vm must be limited by n*y/x<M (nummber of vm *lower value of ram < total available memory in clusteron current  host)

P1 P2

Functional

Y Y

 

Y   Y

 

N   N

 

 

 

 

 

 

 

 

 

 

 

 

 

27

Migrate vm from one cluster to another

vm should be able to migrate in any cluster ,having required resources available, irrespective of overcommit factor .

P0

Functional

Y

Y

Y

Y

N

N

 

 

 

 

 

 

 

 

 

 

 

 

26

Dash board display for multi cluster environment

1- Add xen , vmware, kvm clusters

2- set (cpu/meme) overpovisioning to x for xen cluster and check zone total capacity

3- set (cpu/mem)overpovisioning to x for kvm cluster and check zone total capacity

4- set (cpu/mem)overpovisioning to x for vmware cluster and check zone total capacity

1-Total  capacity should be[ x.(xen cluster capacity)+kvm cluster capacity+vmware cluster capacity]

2-In step 1-Total  capacity should be[ x.(kvm cluster capacity)+xen cluster capacity+vmware cluster capacity]

3-in step 4-Total  capacity should be [x.(vmware cluster capacity)+kvm cluster capacity+xen cluster capacity]

P2

Functional

Y

27

overcommit ratio <1

1-Craete a cluster with overcommit ratio x
2-Change overcommit ratio to <1

1-Cs should not allow to set overcommit ratio <1

P3

Functional

Y

28

cluster.cpu.allocated.capacity.disablethreshold

set cluster.cpu.allocated.capacity.disablethreshold
to some value say .85

1-Should be calculated based on overcommit ratio

P2

Functional

Y

29

cluster.cpu.allocated.capacity.notificationThreshold

set cluster.cpu.allocated.capacity.notificationThreshold
to some value

1-should be calculated based on overcommit ratio

P2

Functional

Y

30

cpu.overpovisioning .factor

set cpu.overpovisioning .factor to some value

1-Expected to  be there in Global settings

P2

Functional

Y

31

cluster.memory.allocated.capacity.disablethreshold

set
cluster.memory.allocated.capacity.disablethreshold
to some value(say 0.5)

1-should be calculated based on overcommited memory

P2

functional

Y

32

cluster.memory.allocated.capacity.notificationthreshold

set cluster.memory.allocated.capacity.notificationthreshold
to some value(say 0.5)

1-should be calculated based on overcommited memory

P2

Functional

Y

34

vmware.reserver.cpu

 

1-set cpu.overpovisioning .factor  to x>1

2- set vmware.reserver.cpu to false and deploy vm

3-set vmware.reserver.cpu to true and deploy vm

1-In step 2 vm should get deployed and no cpu resource should get reserved for the vm

2-in step 3 vm should get deployed and  cpu =cpu in so/x  resource should get reserved for the vm

P1FunctionalY
35vmware.reserver.mem

1-set cpu.overpovisioning .factor  to x>1

2- set vmware.reserver.mem to false and deploy vm

3-set vmware.reserver.memto true and deploy vm

1-In step 2 vm should get deployed and no mem resource should get reserved for the vm

2-in step 3 vm should get deployed and mem= mem in so/x   resource should get reserved for the vm
P!FunctionalY

28

Dash board display
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="7eae284b-97ed-44a3-81d7-3178985b7b6f"><ac:plain-text-body><![CDATA[[for KVM and VMware, yet to decide]

should display actual resources

 

 

 

 

Y