)]}'
{"specs/mitaka/approved/vmware-placement-policy.rst":[{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"fbc08660364f4e5c05bd2a0ee47ab5285b18861d","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"For vm-host placement policy, admins have to update image metadata"},{"line_number":127,"context_line":"\u0027vmware_vm_group\u0027. Here is a sample format:"},{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_6663bdb2","line":128,"updated":"2015-12-03 22:02:34.000000000","message":"This is not a very friendly workflow for allowing users to have affinity/anti-affinity.  I can\u0027t really support needing to modify image/flavor information between individual boot requests.\n\nWhy can\u0027t the information from the scheduler hint be passed down into the vmware driver and have it make decisions based on that?  Instead of pulling vmware_vm_group from the image/flavor just use the group scheduler hint.  This would mean passing that information into the virt driver but that\u0027s a much smaller change to discuss.","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"d8f45e8ca5452a1f20fd03cf9e96fec9eebb84c8","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"For vm-host placement policy, admins have to update image metadata"},{"line_number":127,"context_line":"\u0027vmware_vm_group\u0027. Here is a sample format:"},{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_fad4f9bd","line":128,"in_reply_to":"7a740942_069652f0","updated":"2015-12-04 16:17:48.000000000","message":"Andrew,\nThere are 2 things:\n1. VM to VM affinity and anti-affinity policy. \n2. VM to host(s) affinity and anti-affinity\n#1 is handled using the existing solution of using ServerGroupAffinity and ServerGroupAntiAffinity filters. The policies are user controlled, as you mentioned. Since, server group object is accessible at virt driver, it is easy to query the policy information and enforce within vcenter cluster.\n\n#2 requires admin to expose host(s) to users. As of now, this is handled by host aggregate and availability zone filter.\nBut, given vcenter cluster is exposed as compute node, the host aggregates or availability zones are at the level of clusters not at ESX hosts level. This means admin cannot expose a group of ESX hosts for instance placement.\n\nThe solution for #2 proposed here i.e using flavor extra spec or image property does not require co-operation between admin and users because when users launch instance using the new flavor/image metadata, they can get automatically placed on right set of hosts meeting the policy defined by admin.\n\nAnd this was done assuming scheduler hint is not passed to virt driver. With the reasoning above, if you still think it is not the right approach, I\u0027ll explore passing scheduler hint to virt driver if that would get common agreement.\n\nThanks!","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"838902290e0c18d4cc452a194138e3c5199c1a1d","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"For vm-host placement policy, admins have to update image metadata"},{"line_number":127,"context_line":"\u0027vmware_vm_group\u0027. Here is a sample format:"},{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_4679e1fb","line":128,"in_reply_to":"7a740942_26b055f4","updated":"2015-12-03 22:16:03.000000000","message":"Also, a particular host or set of hosts cannot be specified as scheduler hint since users don\u0027t know the underlying ESX hosts information abstracted by vcenter cluster.","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"ae98a6e4d5c61543d9e687eecf22ea7daf5e421a","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"For vm-host placement policy, admins have to update image metadata"},{"line_number":127,"context_line":"\u0027vmware_vm_group\u0027. Here is a sample format:"},{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_069652f0","line":128,"in_reply_to":"7a740942_4679e1fb","updated":"2015-12-04 15:10:25.000000000","message":"If this is to provide admin control them I\u0027m a bit confused about why server groups and affinity/anti-affinity are discussed here since those are user controlled things.  This seems to require cooperation between users and admins which is a lot to ask.\n\nI would prefer to pass scheduling information to the virt driver than take this approach.  And it\u0027s something that Ironic might benefit from as well.","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"f645c5b349d383d5e11b0d10c229e0753eee10f0","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"For vm-host placement policy, admins have to update image metadata"},{"line_number":127,"context_line":"\u0027vmware_vm_group\u0027. Here is a sample format:"},{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_26b055f4","line":128,"in_reply_to":"7a740942_6663bdb2","updated":"2015-12-03 22:07:50.000000000","message":"I\u0027m assuming by users you meant tenants. This particular workflow is not for users, instead it is for admins to define where the placement of instances should happen for better SLA. For a given image with certain SLA requirements, it may not change often.\n\nCurrently, the scheduler_hint information is not passed to the virt drivers and hence this approach taken. Are you recommending to expose the scheduler_hint to the drivers?","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"376281f84279d42f4a86ebc48ccca7d741dedfd1","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"For vm-host placement policy, admins have to update image metadata"},{"line_number":127,"context_line":"\u0027vmware_vm_group\u0027. Here is a sample format:"},{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a5de9d1_4f0d1336","line":128,"in_reply_to":"7a740942_fad4f9bd","updated":"2016-01-29 06:37:30.000000000","message":"I will split the specs for vm-vm policy and vm-host policy to avoid confusion","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e92acb34d5b3413886f04672222456580f31c6fc","unresolved":false,"context_lines":[{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Then booting an instance with this image would automatically place it on"},{"line_number":134,"context_line":"corresponding vm group within vcenter."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a7e1126_3f491a32","line":131,"updated":"2015-12-17 12:47:43.000000000","message":"Do both the image and flavor styles of this data handling mean that it could be necessary to create flavors and/or images for every vmware_vm_group? Intuitively that feels fragile and like it won\u0027t scale well for a dynamically evolving datacenter.","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"9b6989bae97815e15dd3be7f2d22f391f19d3fe0","unresolved":false,"context_lines":[{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Then booting an instance with this image would automatically place it on"},{"line_number":134,"context_line":"corresponding vm group within vcenter."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a7e1126_8cc00a7e","line":131,"updated":"2015-12-17 20:38:59.000000000","message":"This may simply be me misunderstanding the architecture. If that\u0027s the case, my apologies. I\u0027m new to exploring the scheduler.\n\nHowever, if I am understanding things correctly then the scaling issue I\u0027m worried about is more of a human use complexity issue than a performance issue. Is it the case that if the model your describing is used, then every time a group is added flavor-key and image-update will need to be done to create images and flavors for that group? As the number of images and flavor and groups grows that gets a bit out of hand.\n\nIt\u0027s also not clear what the experience for a user wanting to launch and instance will be. If a user wants to load their own image and launch that do they need to add the right properties to the image or search through a long list of flavors until they find the one that has the extra space info required? That\u0027s quite cumbersome.\n\nIf we have an option to pursue getting the request information all the way to the virt driver that is likely to have the most flexibility in the long run and be a good solution for many different drivers whereas this one seems quite oriented towards the vmware case.","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"b4b4256213e0ae00bc3865fb8b9937ecb2de2e30","unresolved":false,"context_lines":[{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Then booting an instance with this image would automatically place it on"},{"line_number":134,"context_line":"corresponding vm group within vcenter."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a7e1126_e0ebd576","line":131,"in_reply_to":"3a7e1126_3f491a32","updated":"2015-12-17 19:21:24.000000000","message":"It is either flavor or image property required for a group.\nIf both defined, then image property will take precedence.\n\nIf Admins would like to control placements of VM to hosts within a cluster, then using flavor or image (with property protection) is better way to do it. \n\nCan you please elaborate more on your concerns about scalability?","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"7251c3c21e86846e322b94f6fd2e630cb96b02fa","unresolved":false,"context_lines":[{"line_number":128,"context_line":"glance image-update \u003cimage id\u003e --property vmware_vm_group\u003d\u003cvm group name\u003e"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"or set the flavor extra spec \u0027vmware:vm_group\u0027."},{"line_number":131,"context_line":"nova flavor-key \u003cflavor\u003e \u003caction\u003e vmware:vm_group\u003d\u003cvm group name\u003e"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Then booting an instance with this image would automatically place it on"},{"line_number":134,"context_line":"corresponding vm group within vcenter."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a7e1126_a8960fee","line":131,"in_reply_to":"3a7e1126_8cc00a7e","updated":"2015-12-17 22:06:53.000000000","message":"You are right about updating flavor extra spec OR image property when \"admin\" chooses to restrict their placement within the vcenter cluster. \nThis admin workflow is similar to setting any other property say, disk or vif type.\n\nFor example, if there are 2 set of groups, say, one with \"gold\" performance policy and other with \"silver\" performance, then based on the workload\u0027s SLA requirement, admin can define placement on right set of hosts within cluster.\n\n\nw.r.t user/tenants, they are is no change in workflow for vm to host placement. Whenever a flavor and/or image is chosen for launching instance, they will deployed on hosts based on the policy defined by admin on vcenter.\n\nRegarding your suggestion on using request information, do you mean we can embed the request information (similar to flavor spec) in the cluster group and do lookup of a group that matches the spec and associate to that group automatically?\nIf yes, unfortunately, the group spec on vcenter has only 2 fields: name, userCreated.\nhttps://pubs.vmware.com/vsphere-55/index.jsp#com.vmware.wssdk.apiref.doc/vim.cluster.GroupInfo.html","commit_id":"03ef71282a52c7254e443a6483f8a1564c8daf00"}],"specs/newton/approved/vmware-servergroup-parity.rst":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"1a734789d39d85ef4b9af92cbb987f47fedf9940","unresolved":false,"context_lines":[{"line_number":26,"context_line":"within cluster."},{"line_number":27,"context_line":"The proposal is to inspect the policies from server group object"},{"line_number":28,"context_line":"and automatically create rules on vcenter cluster to satisfy the"},{"line_number":29,"context_line":"placement policy at ESX host level."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Use Cases"},{"line_number":32,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dab17558_16f32c74","line":29,"updated":"2016-05-17 11:11:57.000000000","message":"If this kind of thing is wanted, it does seem like the VMware driver needs to expose the details of where a VM lives to Nova.\n\nThe concept of two VMs with anti-affinity live on the same compute host, messes up Nova\u0027s abstractions.","commit_id":"3b8243f0bb98a2b121267dc43d015f28b3cbc47f"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"ca5678a87b633c2b9fce1029673370df86028569","unresolved":false,"context_lines":[{"line_number":26,"context_line":"within cluster."},{"line_number":27,"context_line":"The proposal is to inspect the policies from server group object"},{"line_number":28,"context_line":"and automatically create rules on vcenter cluster to satisfy the"},{"line_number":29,"context_line":"placement policy at ESX host level."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Use Cases"},{"line_number":32,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_8247911c","line":29,"in_reply_to":"bab6814e_8292f19d","updated":"2016-05-24 09:26:34.000000000","message":"I should be clear, I think its possible to call into Nova to tell it about the required moves, so it is aware of what is happening, but from previous conversations that doesn\u0027t seem like a practical change to the Dynamic Resource Scheduler. I am struggling to think up an alternative.","commit_id":"3b8243f0bb98a2b121267dc43d015f28b3cbc47f"},{"author":{"_account_id":16929,"name":"Giridhar Jayavelu","email":"gjayavelu@vmware.com","username":"gjayavelu"},"change_message_id":"fdc36e114d2389bac419a803a64b0730e54fb369","unresolved":false,"context_lines":[{"line_number":26,"context_line":"within cluster."},{"line_number":27,"context_line":"The proposal is to inspect the policies from server group object"},{"line_number":28,"context_line":"and automatically create rules on vcenter cluster to satisfy the"},{"line_number":29,"context_line":"placement policy at ESX host level."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Use Cases"},{"line_number":32,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dab17558_d53230f1","line":29,"in_reply_to":"dab17558_16f32c74","updated":"2016-05-17 13:54:54.000000000","message":"One of the challenges with exposing host on which the VM lives is that, with Dynamic Resource Scheduler (DRS) turned on a cluster, the VM may move between the hosts. It gets very difficult to track and update the host information on Nova.\n\nLet me discuss with sub-team on how to expose individual hosts to Nova and get back.","commit_id":"3b8243f0bb98a2b121267dc43d015f28b3cbc47f"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9ca5360a5efb3c278d363be3178aac8788952514","unresolved":false,"context_lines":[{"line_number":26,"context_line":"within cluster."},{"line_number":27,"context_line":"The proposal is to inspect the policies from server group object"},{"line_number":28,"context_line":"and automatically create rules on vcenter cluster to satisfy the"},{"line_number":29,"context_line":"placement policy at ESX host level."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Use Cases"},{"line_number":32,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_8292f19d","line":29,"in_reply_to":"dab17558_d53230f1","updated":"2016-05-24 09:24:43.000000000","message":"Agreed thats tricky. I don\u0027t really see how the Dynamic Resource Scheduler can be used with Nova. Nova assumes it owns all scheduling decisions, its a very deep assumption in the system. The problems we have with state updates as VMs get moved is another sign of these deeper issues.","commit_id":"3b8243f0bb98a2b121267dc43d015f28b3cbc47f"}]}
