[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-9379?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15689516#comment-15689516
 ] 

ASF subversion and git services commented on CLOUDSTACK-9379:
-------------------------------------------------------------

Commit feaeed7b1665c8851d7762ef95a37a5fc70756e3 in cloudstack's branch 
refs/heads/master from [~rohit.ya...@shapeblue.com]
[ https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=feaeed7 ]

Merge pull request #1542 from nvazquez/nestedv

CLOUDSTACK-9379: Support nested virtualization at VM level on VMware 
Hypervisor## Introduction

[JIRA TICKET](https://issues.apache.org/jira/browse/CLOUDSTACK-9379)

It is desired to support nested virtualization at VM level for VMware 
hypervisor. Current behaviour supports enabling/desabling global nested 
virtualization by modifying global config `'vmware.nested.virtualization'`. It 
is wished to improve this feature, having control at VM level instead of a 
global control only.

A new global configuration is added, to enable/disable VM nested virtualization 
control: `'vmware.nested.virtualization.perVM'`. Default value=false

After a vm deployment or start command, vm params include 
`'nestedVirtualizationFlag'` key and its value is:
- true -> nested virtualization enabled
- false -> nested virtualization disabled

**We will determinate nested virtualization enabled/disabled by examining this 
3 values:**
- **(1)** global configuration `'vmware.nested.virtualization'` value
- **(2)** global configuration `'vmware.nested.virtualization.perVM'` value
- **(3)** `'nestedVirtualizationFlag'` value in `user_vm_details` if present, 
`null` if not.

Using this 3 values, there are different use cases:
- **(1)** = TRUE, **(2)** = TRUE, **(3)** is null -> _ENABLED_
- **(1)** = TRUE, **(2)** = TRUE, **(3)** = TRUE -> _ENABLED_
- **(1)** = TRUE, **(2)** = TRUE, **(3)** = FALSE -> _DISABLED_
- **(1)** = TRUE, **(2)** = FALSE, **(3)** indifferent  -> _ENABLED_
- **(1)** = FALSE, **(2)** = TRUE, **(3)** is null -> _DISABLED_
- **(1)** = FALSE, **(2)** = TRUE, **(3)** = TRUE -> _ENABLED_
- **(1)** = FALSE, **(2)** = TRUE, **(3)** = FALSE -> _DISABLED_
- **(1)** = FALSE, **(2)** = FALSE, **(3)** indifferent -> _DISABLED_

* pr/1542:
  CLOUDSTACK-9379: Support nested virtualization at VM level on VMware 
Hypervisor

Signed-off-by: Rohit Yadav <rohit.ya...@shapeblue.com>


> Support nested virtualization at VM level on VMware Hypervisor
> --------------------------------------------------------------
>
>                 Key: CLOUDSTACK-9379
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9379
>             Project: CloudStack
>          Issue Type: Improvement
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: VMware
>    Affects Versions: 4.9.0
>            Reporter: Nicolas Vazquez
>            Assignee: Nicolas Vazquez
>             Fix For: 4.10.0.0
>
>
> h2. Introduction
> It is desired to support nested virtualization at VM level for VMware 
> hypervisor. Current behaviour supports enabling/desabling global nested 
> virtualization by modifying global config {{'vmware.nested.virtualization'}}. 
> It is wished to improve this feature, having control at VM level instead of a 
> global control only.
> h2. Proposal
> A new global configuration is added, to enable/disable VM nested 
> virtualization control: {{'vmware.nested.virtualization.perVM'}}. Default 
> value=false
> h2. Behaviour
> After a vm deployment or start command, vm params include 
> {{nestedVirtualizationFlag}} key and its value is:
> * true -> nested virtualization enabled
> * false -> nested virtualization disabled
> We will determinate nested virtualization enabled/disabled by examining:
> * (1) global configuration {{'vmware.nested.virtualization'}} value
> * (2) global configuration {{'vmware.nested.virtualization.perVM'}} value
> * (3) {{'nestedVirtualizationFlag'}} value in {{user_vm_details}} if present, 
> null if not.
> Using this 3 values, there are different use cases:
> # (1) = TRUE, (2) = TRUE, (3) is null -> ENABLED
> # (1) = TRUE, (2) = TRUE, (3) = TRUE -> ENABLED
> # (1) = TRUE, (2) = TRUE, (3) = FALSE -> DISABLED
> # (1) = TRUE, (2) = FALSE -> ENABLED
> # (1) = FALSE, (2) = TRUE, (3) is null -> DISABLED
> # (1) = FALSE, (2) = TRUE, (3) = TRUE -> ENABLED
> # (1) = FALSE, (2) = TRUE, (3) = FALSE -> DISABLED
> # (1) = FALSE, (2) = FALSE -> DISABLED



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to