)]}'
{"specs/liberty/approved/hyper-v-cluster.rst":[{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/hyper-v-cluster"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Hyper-V Clustering has been introduced since Windows / Hyper-V Server 2008 R2"},{"line_number":14,"context_line":"and it introduced several benefits such as highly available VMs, better"},{"line_number":15,"context_line":"performance, faster live migrations and other features. [1][2][3]"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_805ab528","line":13,"updated":"2015-06-04 18:40:40.000000000","message":"2008, not R2","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/hyper-v-cluster"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Hyper-V Clustering has been introduced since Windows / Hyper-V Server 2008 R2"},{"line_number":14,"context_line":"and it introduced several benefits such as highly available VMs, better"},{"line_number":15,"context_line":"performance, faster live migrations and other features. [1][2][3]"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_25e0c128","line":13,"in_reply_to":"5afe65bd_805ab528","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":37,"context_line":"  * Smaller overhead, as only one nova-compute service will necessary, as"},{"line_number":38,"context_line":"    oposed to one nova-compute service / node."},{"line_number":39,"context_line":"  Disadvantages:"},{"line_number":40,"context_line":"  * Single point of failure. If the Node where the nova-compute is running"},{"line_number":41,"context_line":"    fails, the whole Cluster will be considered down by nova."},{"line_number":42,"context_line":"  * neutron-hyperv-agent are still mandatory on every Node. Even though its"},{"line_number":43,"context_line":"    performance has been enhanced over the past release cycles, it won\u0027t be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_e084c95e","line":40,"updated":"2015-06-04 18:40:40.000000000","message":"Not correct, nova-compute can run as a clustered service","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":37,"context_line":"  * Smaller overhead, as only one nova-compute service will necessary, as"},{"line_number":38,"context_line":"    oposed to one nova-compute service / node."},{"line_number":39,"context_line":"  Disadvantages:"},{"line_number":40,"context_line":"  * Single point of failure. If the Node where the nova-compute is running"},{"line_number":41,"context_line":"    fails, the whole Cluster will be considered down by nova."},{"line_number":42,"context_line":"  * neutron-hyperv-agent are still mandatory on every Node. Even though its"},{"line_number":43,"context_line":"    performance has been enhanced over the past release cycles, it won\u0027t be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_65c8f9a8","line":40,"in_reply_to":"5afe65bd_e084c95e","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    fails, the whole Cluster will be considered down by nova."},{"line_number":42,"context_line":"  * neutron-hyperv-agent are still mandatory on every Node. Even though its"},{"line_number":43,"context_line":"    performance has been enhanced over the past release cycles, it won\u0027t be"},{"line_number":44,"context_line":"    able to handle port binding, VLAN tagging and creating security group rules"},{"line_number":45,"context_line":"    for each new port (up to thousands of ports in some scenarios)."},{"line_number":46,"context_line":"  * ceilometer-agent-compute will have to run on each Node or implementing a"},{"line_number":47,"context_line":"    Hyper-V Cluster Inspector is necessary, in order to poll the metrics of all"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_00b5a52f","line":44,"updated":"2015-06-04 18:40:40.000000000","message":"add \"efficiently\"","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    fails, the whole Cluster will be considered down by nova."},{"line_number":42,"context_line":"  * neutron-hyperv-agent are still mandatory on every Node. Even though its"},{"line_number":43,"context_line":"    performance has been enhanced over the past release cycles, it won\u0027t be"},{"line_number":44,"context_line":"    able to handle port binding, VLAN tagging and creating security group rules"},{"line_number":45,"context_line":"    for each new port (up to thousands of ports in some scenarios)."},{"line_number":46,"context_line":"  * ceilometer-agent-compute will have to run on each Node or implementing a"},{"line_number":47,"context_line":"    Hyper-V Cluster Inspector is necessary, in order to poll the metrics of all"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_455bbdf6","line":44,"in_reply_to":"5afe65bd_00b5a52f","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    Deploying a 2 GB instance in the Cluster fails, as there is no viable host"},{"line_number":52,"context_line":"    for it."},{"line_number":53,"context_line":"  * Free vCPU tracking issue. Same as above."},{"line_number":54,"context_line":"  * Needs an extra component to schedule instances on the Cluster Nodes."},{"line_number":55,"context_line":"  * nova-compute service might perform poorly, as it will spawn threads for"},{"line_number":56,"context_line":"    console logging. For large scale scenarios, having hundreds or thousands of"},{"line_number":57,"context_line":"    threads running in a single service is a bad idea."}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_4096fd93","line":54,"updated":"2015-06-04 18:40:40.000000000","message":"why an extra component? This would be part of the nova-compute driver","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":51,"context_line":"    Deploying a 2 GB instance in the Cluster fails, as there is no viable host"},{"line_number":52,"context_line":"    for it."},{"line_number":53,"context_line":"  * Free vCPU tracking issue. Same as above."},{"line_number":54,"context_line":"  * Needs an extra component to schedule instances on the Cluster Nodes."},{"line_number":55,"context_line":"  * nova-compute service might perform poorly, as it will spawn threads for"},{"line_number":56,"context_line":"    console logging. For large scale scenarios, having hundreds or thousands of"},{"line_number":57,"context_line":"    threads running in a single service is a bad idea."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_e5c2a933","line":54,"in_reply_to":"5afe65bd_4096fd93","updated":"2015-06-09 14:13:03.000000000","message":"Yeah, I guess component sounds a bit too much for what I had in mind. I was just thinking of a mechanism which would select a host on which to create the instance in.","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  * Needs an extra component to schedule instances on the Cluster Nodes."},{"line_number":55,"context_line":"  * nova-compute service might perform poorly, as it will spawn threads for"},{"line_number":56,"context_line":"    console logging. For large scale scenarios, having hundreds or thousands of"},{"line_number":57,"context_line":"    threads running in a single service is a bad idea."},{"line_number":58,"context_line":"  * When performing actions on an instance, extra queries will be necessary in"},{"line_number":59,"context_line":"    the Hyper-V Cluster Driver to determine on which Node the instance resides,"},{"line_number":60,"context_line":"    in order to properly manipulate it."}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_c0f0ad00","line":57,"updated":"2015-06-04 18:40:40.000000000","message":"cluster sizes will be max 16 nodes in practical scenarios, but still serial console access will be horrible","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  * Needs an extra component to schedule instances on the Cluster Nodes."},{"line_number":55,"context_line":"  * nova-compute service might perform poorly, as it will spawn threads for"},{"line_number":56,"context_line":"    console logging. For large scale scenarios, having hundreds or thousands of"},{"line_number":57,"context_line":"    threads running in a single service is a bad idea."},{"line_number":58,"context_line":"  * When performing actions on an instance, extra queries will be necessary in"},{"line_number":59,"context_line":"    the Hyper-V Cluster Driver to determine on which Node the instance resides,"},{"line_number":60,"context_line":"    in order to properly manipulate it."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_85f53558","line":57,"in_reply_to":"5afe65bd_c0f0ad00","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":64,"context_line":"      nova live-migration foo bar"},{"line_number":65,"context_line":"    will result in a UnableToMigrateToSelf exception. This will negate one of"},{"line_number":66,"context_line":"    the Hyper-V Cluster\u0027s advantages: faster live migrations within the same"},{"line_number":67,"context_line":"    Cluster."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Method B: nova-compute service on each Hyper-V Cluster Node."},{"line_number":70,"context_line":"  Advantages:"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_00680586","line":67,"updated":"2015-06-04 18:40:40.000000000","message":"I\u0027d add also on the disadvantages:\n\n* (quite important) the Windows cluster will act as a scheduler in choosing a node for a new instance resulting in potentially poor allocation choices.\n\n* the underlying cluster infrastructure will be opaque and the user wont be able to know on which physical node the node resides using Nova API","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":64,"context_line":"      nova live-migration foo bar"},{"line_number":65,"context_line":"    will result in a UnableToMigrateToSelf exception. This will negate one of"},{"line_number":66,"context_line":"    the Hyper-V Cluster\u0027s advantages: faster live migrations within the same"},{"line_number":67,"context_line":"    Cluster."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Method B: nova-compute service on each Hyper-V Cluster Node."},{"line_number":70,"context_line":"  Advantages:"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_c57c4db7","line":67,"in_reply_to":"5afe65bd_00680586","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Method B: nova-compute service on each Hyper-V Cluster Node."},{"line_number":70,"context_line":"  Advantages:"},{"line_number":71,"context_line":"  * No single point of failure."},{"line_number":72,"context_line":"  * Correct memory and vCPU tracking."},{"line_number":73,"context_line":"  * nova-scheduler will properly schedule the instances in the Cluster."},{"line_number":74,"context_line":"  * No decrease in nova-compute service\u0027s performance."}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_a00db1e9","line":71,"updated":"2015-06-04 18:40:40.000000000","message":"can be removed","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Method B: nova-compute service on each Hyper-V Cluster Node."},{"line_number":70,"context_line":"  Advantages:"},{"line_number":71,"context_line":"  * No single point of failure."},{"line_number":72,"context_line":"  * Correct memory and vCPU tracking."},{"line_number":73,"context_line":"  * nova-scheduler will properly schedule the instances in the Cluster."},{"line_number":74,"context_line":"  * No decrease in nova-compute service\u0027s performance."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_05c4a58e","line":71,"in_reply_to":"5afe65bd_a00db1e9","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":93,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Almost all the existing Hyper-V code in nova is reusable for the purpose of"},{"line_number":96,"context_line":"creating the Hyper-V Cluster Driver, though a few changes are necessary. Next,"},{"line_number":97,"context_line":"the changes will be detailed."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* Instances will have to added to be clustered after they are spawned."}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_40203d48","line":96,"updated":"2015-06-04 18:40:40.000000000","message":"specify for \"Option B\"","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":93,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Almost all the existing Hyper-V code in nova is reusable for the purpose of"},{"line_number":96,"context_line":"creating the Hyper-V Cluster Driver, though a few changes are necessary. Next,"},{"line_number":97,"context_line":"the changes will be detailed."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* Instances will have to added to be clustered after they are spawned."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_20754f63","line":96,"in_reply_to":"5afe65bd_40203d48","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":95,"context_line":"Almost all the existing Hyper-V code in nova is reusable for the purpose of"},{"line_number":96,"context_line":"creating the Hyper-V Cluster Driver, though a few changes are necessary. Next,"},{"line_number":97,"context_line":"the changes will be detailed."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* Instances will have to added to be clustered after they are spawned."},{"line_number":100,"context_line":"* Need to check before live migration if the new host is in the same Cluster."},{"line_number":101,"context_line":"  If it is in the same Cluster, cluster live migration will have to be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_e0d5e91b","line":98,"updated":"2015-06-04 18:40:40.000000000","message":"The Next,... can be omitted","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":95,"context_line":"Almost all the existing Hyper-V code in nova is reusable for the purpose of"},{"line_number":96,"context_line":"creating the Hyper-V Cluster Driver, though a few changes are necessary. Next,"},{"line_number":97,"context_line":"the changes will be detailed."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* Instances will have to added to be clustered after they are spawned."},{"line_number":100,"context_line":"* Need to check before live migration if the new host is in the same Cluster."},{"line_number":101,"context_line":"  If it is in the same Cluster, cluster live migration will have to be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_0072537b","line":98,"in_reply_to":"5afe65bd_e0d5e91b","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":96,"context_line":"creating the Hyper-V Cluster Driver, though a few changes are necessary. Next,"},{"line_number":97,"context_line":"the changes will be detailed."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* Instances will have to added to be clustered after they are spawned."},{"line_number":100,"context_line":"* Need to check before live migration if the new host is in the same Cluster."},{"line_number":101,"context_line":"  If it is in the same Cluster, cluster live migration will have to be"},{"line_number":102,"context_line":"  performed, otherwise, the instance will have to unclustered before doing a"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_40e71d11","line":99,"updated":"2015-06-04 18:40:40.000000000","message":"s/after/when/","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":96,"context_line":"creating the Hyper-V Cluster Driver, though a few changes are necessary. Next,"},{"line_number":97,"context_line":"the changes will be detailed."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* Instances will have to added to be clustered after they are spawned."},{"line_number":100,"context_line":"* Need to check before live migration if the new host is in the same Cluster."},{"line_number":101,"context_line":"  If it is in the same Cluster, cluster live migration will have to be"},{"line_number":102,"context_line":"  performed, otherwise, the instance will have to unclustered before doing a"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_e0b73738","line":99,"in_reply_to":"5afe65bd_40e71d11","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":107,"context_line":"* Develop method to query free / available disk space for a Cluster Shared"},{"line_number":108,"context_line":"  Storage, which will be reported to the Resource Tracker."},{"line_number":109,"context_line":"* Hyper-V Cluster Driver won\u0027t function properly if the Cluster is not properly"},{"line_number":110,"context_line":"  setup. Perform validation when the driver is instantiated."},{"line_number":111,"context_line":"* Temporary WMI module fix. The WMI namespace for the Hyper-V Cluster is"},{"line_number":112,"context_line":"  \u0027/root/MSCluster\u0027. When using that namespace, the driver will fail to start"},{"line_number":113,"context_line":"  due to stack overflow exception while instantiating the namespace. This is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5afe65bd_20c78165","line":110,"updated":"2015-06-04 18:40:40.000000000","message":"This is a task for the deployer, not for the driver","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":107,"context_line":"* Develop method to query free / available disk space for a Cluster Shared"},{"line_number":108,"context_line":"  Storage, which will be reported to the Resource Tracker."},{"line_number":109,"context_line":"* Hyper-V Cluster Driver won\u0027t function properly if the Cluster is not properly"},{"line_number":110,"context_line":"  setup. Perform validation when the driver is instantiated."},{"line_number":111,"context_line":"* Temporary WMI module fix. The WMI namespace for the Hyper-V Cluster is"},{"line_number":112,"context_line":"  \u0027/root/MSCluster\u0027. When using that namespace, the driver will fail to start"},{"line_number":113,"context_line":"  due to stack overflow exception while instantiating the namespace. This is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_29af7be3","line":110,"in_reply_to":"5afe65bd_20c78165","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":112,"context_line":"  \u0027/root/MSCluster\u0027. When using that namespace, the driver will fail to start"},{"line_number":113,"context_line":"  due to stack overflow exception while instantiating the namespace. This is"},{"line_number":114,"context_line":"  happens because of a missing magic method in the WMI module (__nonzero__)."},{"line_number":115,"context_line":"  Adding that method will fix the issue."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"Alternatives"},{"line_number":118,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_c403be0c","line":115,"updated":"2015-06-04 18:40:40.000000000","message":"This needs to be fixed in the wmi module project, so the \"Temporary workaround\" point can be remover here and the comment moved to \"Other deployer impact\"","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":112,"context_line":"  \u0027/root/MSCluster\u0027. When using that namespace, the driver will fail to start"},{"line_number":113,"context_line":"  due to stack overflow exception while instantiating the namespace. This is"},{"line_number":114,"context_line":"  happens because of a missing magic method in the WMI module (__nonzero__)."},{"line_number":115,"context_line":"  Adding that method will fix the issue."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"Alternatives"},{"line_number":118,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_0cb84d29","line":115,"in_reply_to":"3afb71cf_c403be0c","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"bad9ac02efce9aca69c49fa5345cf117222b8f74","unresolved":false,"context_lines":[{"line_number":208,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"* Unit tests."},{"line_number":211,"context_line":"* Tempest tests will be able to validate this feature."},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"Documentation Impact"},{"line_number":214,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_c4517e10","line":211,"updated":"2015-06-04 18:40:40.000000000","message":"add: tests will run as part of the Hyper-V CI","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"1a2a20a450e5e13f884a456cc3708d8c76572beb","unresolved":false,"context_lines":[{"line_number":208,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"* Unit tests."},{"line_number":211,"context_line":"* Tempest tests will be able to validate this feature."},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"Documentation Impact"},{"line_number":214,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3afb71cf_60db4750","line":211,"in_reply_to":"3afb71cf_c4517e10","updated":"2015-06-09 14:13:03.000000000","message":"Done","commit_id":"563b19a2b96ce7ff7ba016cc00778d661ea300ed"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, there is no support for Hyper-V Clusters in Openstack. This"},{"line_number":21,"context_line":"blueprint is addressing this issue and adds an implementation."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Use Cases"},{"line_number":24,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_8bf2206e","line":21,"updated":"2015-06-16 18:14:26.000000000","message":"Please talk about why this is useful.\n\nWe want to allow admins to use the highly available VM feature, and get faster live migrations, so we are adding this support.\n\nOr something like that?","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, there is no support for Hyper-V Clusters in Openstack. This"},{"line_number":21,"context_line":"blueprint is addressing this issue and adds an implementation."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Use Cases"},{"line_number":24,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_0076c905","line":21,"in_reply_to":"fa32b979_8bf2206e","updated":"2015-06-17 14:25:40.000000000","message":"Good point.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* Option A. Hyper-V Cluster controlled by a single nova-compute service. This"},{"line_number":33,"context_line":"  means that the nova-compute service will run on a single Hyper-V Node in a"},{"line_number":34,"context_line":"  Cluster and can manipulate WMI objects remotely on all the Cluster Nodes."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"  Advantages:"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_2b8434d2","line":34,"updated":"2015-06-16 18:14:26.000000000","message":"please move this to the Alternatives section.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* Option A. Hyper-V Cluster controlled by a single nova-compute service. This"},{"line_number":33,"context_line":"  means that the nova-compute service will run on a single Hyper-V Node in a"},{"line_number":34,"context_line":"  Cluster and can manipulate WMI objects remotely on all the Cluster Nodes."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"  Advantages:"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_56681bb9","line":34,"in_reply_to":"fa32b979_2b8434d2","updated":"2015-06-17 14:25:40.000000000","message":"Well, the point of the Option A / Option B comparasion was to present the advantages / disadvantages to each, to motivate the reason why we will implement Option B. Option A will not be usable, as it will require additional commits, it order to make it work.\n\nAlthough, the Use Cases section isn\u0027t a good choice for this either. Should be in Proposed Change.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    storage and 2 instances with 200 GB used storage each on a single node in"},{"line_number":92,"context_line":"    the cluster, that node will report having 100 GB free storage space, while"},{"line_number":93,"context_line":"    other nodes, with no instances, will report as having 500 GB free. Trying"},{"line_number":94,"context_line":"    to deploy another 200 GB instance would fail. (WIP)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"This blueprint will address Option B, as its value far outweighs Option A."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_8b678024","line":94,"updated":"2015-06-16 18:14:26.000000000","message":"This is similar to libvirt and using shared storage for the \"local\" disks nova creates, I believe. its worthing looking how that deals with this issue. I think its a direct match here, unless I am missing something. Danp should be able to tell you.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    storage and 2 instances with 200 GB used storage each on a single node in"},{"line_number":92,"context_line":"    the cluster, that node will report having 100 GB free storage space, while"},{"line_number":93,"context_line":"    other nodes, with no instances, will report as having 500 GB free. Trying"},{"line_number":94,"context_line":"    to deploy another 200 GB instance would fail. (WIP)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"This blueprint will address Option B, as its value far outweighs Option A."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_d6898b76","line":94,"in_reply_to":"fa32b979_8b678024","updated":"2015-06-17 14:25:40.000000000","message":"Yeah, that is something I have to find out. Will talk to Danp about this.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"08e6fafade8c2cf04fab2327f60f68051ddb0f3b","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    storage and 2 instances with 200 GB used storage each on a single node in"},{"line_number":92,"context_line":"    the cluster, that node will report having 100 GB free storage space, while"},{"line_number":93,"context_line":"    other nodes, with no instances, will report as having 500 GB free. Trying"},{"line_number":94,"context_line":"    to deploy another 200 GB instance would fail. (WIP)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"This blueprint will address Option B, as its value far outweighs Option A."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_c9b42284","line":94,"in_reply_to":"fa32b979_d6898b76","updated":"2015-06-19 11:28:23.000000000","message":"I spoke with Dan about this. Unfortunately, there is nothing that deals with this and work for this should be done.\n\nWell, IMO, this is a bigger issue and it affects other clusters as well. I believe this deserves a blueprint on its own and this should not block this blueprint.\n\nI have been thinking about this. Most of my ideas were basically hacks, that could fix this issue but sacrificing other things for this (performance mostly). But I currently have 2 ideas that might have a little bit more value than just hacks.\n\n1. Storage aggregates. What I mean by this, is that hosts with shared storage should be added to the same aggregate and the storage consumption should be computed per aggregate. For this, we have again 2 options:\n\na. Computed by each compute node. Basically, during resource tracking phase in ComputeManager, get all the instances from the aggregate and compute storage consumption.\n\nb. Computed by another service (scheduler, maybe?). Get all the isntances from the aggregate, compute storage consumption.\n\nOption b. is better, the operation is done only once, instead of N x compute nodes.\n\n2. Each compute node should know that it runs on a shared storage. It should assign / have assigned an ID to the storage. Compute nodes on the same shared storage should report the same ID. Next, storage consumption will be computed by another service (scheduler, maybe?), the same as 1.a. The main difference would be the fact that the admin will not have to create aggregates for this and it can potentially be automagically done.\n\nI opt for for the first suggestion, since host aggregates are necessary (e.g. ensure that the scheduler will opt to cold migrate to the same cluster - see next patchset - Deployer impact).\n\nAt this point, I\u0027m really wondering why even bother with tracking \"available\" resources on the compute nodes, querying the drivers for them, because, last time I checked, the \"available\" resources were overwritten with maximum resources are reserved (for example, creating instance with 100 GB storage, only  10 GB are used, but the resource tracker still reports 100 GB are used).\n\nIn my opinion, ResourceTracker should probably only report Host Maximum Resources and compute the available resources in another service (scheduler, maybe? but since there could be quite a lot of resources to be computed / tracked, maybe a new service?).","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":111,"context_line":"* Need to check before live migration if the new host is in the same Cluster."},{"line_number":112,"context_line":"  If it is in the same Cluster, cluster live migration will have to be"},{"line_number":113,"context_line":"  performed, otherwise, the instance will have to unclustered before doing a"},{"line_number":114,"context_line":"  classic live migration. Same for cold migration."},{"line_number":115,"context_line":"* When new instance is added to the Cluster via live migration or cold"},{"line_number":116,"context_line":"  migration from a non-clustered Windows / Hyper-V Server or from another"},{"line_number":117,"context_line":"  Cluster, the instance will have to be clustered."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_8b4ea094","line":114,"updated":"2015-06-16 18:14:26.000000000","message":"Same for cold migration? do you mean cold migration can happen to a clustered instance? Or is it just a stop and then a start on a new member of the cluster?","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":111,"context_line":"* Need to check before live migration if the new host is in the same Cluster."},{"line_number":112,"context_line":"  If it is in the same Cluster, cluster live migration will have to be"},{"line_number":113,"context_line":"  performed, otherwise, the instance will have to unclustered before doing a"},{"line_number":114,"context_line":"  classic live migration. Same for cold migration."},{"line_number":115,"context_line":"* When new instance is added to the Cluster via live migration or cold"},{"line_number":116,"context_line":"  migration from a non-clustered Windows / Hyper-V Server or from another"},{"line_number":117,"context_line":"  Cluster, the instance will have to be clustered."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_915b0df6","line":114,"in_reply_to":"fa32b979_8b4ea094","updated":"2015-06-17 14:25:40.000000000","message":"Yes. Cold migration can be performed on a clustered instance. If the destination host is in the same cluster, no change is necessary to the instance. If the destination is not in the same cluster, the instance must be unclustered first.\n\nThis actually raises an interesting problem for cold migration / cold resize. You cannot specify to which host to migrate, meaning a destination outside the clustered can be scheduled, which can be undesirable.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":113,"context_line":"  performed, otherwise, the instance will have to unclustered before doing a"},{"line_number":114,"context_line":"  classic live migration. Same for cold migration."},{"line_number":115,"context_line":"* When new instance is added to the Cluster via live migration or cold"},{"line_number":116,"context_line":"  migration from a non-clustered Windows / Hyper-V Server or from another"},{"line_number":117,"context_line":"  Cluster, the instance will have to be clustered."},{"line_number":118,"context_line":"* Develop method to query free / available disk space for a Cluster Shared"},{"line_number":119,"context_line":"  Storage, which will be reported to the Resource Tracker."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_0b2290b9","line":116,"updated":"2015-06-16 18:14:26.000000000","message":"I think its easier if you:\n\ns/Windows//","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":113,"context_line":"  performed, otherwise, the instance will have to unclustered before doing a"},{"line_number":114,"context_line":"  classic live migration. Same for cold migration."},{"line_number":115,"context_line":"* When new instance is added to the Cluster via live migration or cold"},{"line_number":116,"context_line":"  migration from a non-clustered Windows / Hyper-V Server or from another"},{"line_number":117,"context_line":"  Cluster, the instance will have to be clustered."},{"line_number":118,"context_line":"* Develop method to query free / available disk space for a Cluster Shared"},{"line_number":119,"context_line":"  Storage, which will be reported to the Resource Tracker."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_31756163","line":116,"in_reply_to":"fa32b979_0b2290b9","updated":"2015-06-17 14:25:40.000000000","message":"Done","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":117,"context_line":"  Cluster, the instance will have to be clustered."},{"line_number":118,"context_line":"* Develop method to query free / available disk space for a Cluster Shared"},{"line_number":119,"context_line":"  Storage, which will be reported to the Resource Tracker."},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"Alternatives"},{"line_number":122,"context_line":"------------"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_ee3bbacf","line":120,"updated":"2015-06-16 18:14:26.000000000","message":"I think you should discuss limitations here, like currently if you do HA VMs, Nova would just get confused.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"08e6fafade8c2cf04fab2327f60f68051ddb0f3b","unresolved":false,"context_lines":[{"line_number":117,"context_line":"  Cluster, the instance will have to be clustered."},{"line_number":118,"context_line":"* Develop method to query free / available disk space for a Cluster Shared"},{"line_number":119,"context_line":"  Storage, which will be reported to the Resource Tracker."},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"Alternatives"},{"line_number":122,"context_line":"------------"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_c96bc2f0","line":120,"in_reply_to":"fa32b979_ee3bbacf","updated":"2015-06-19 11:28:23.000000000","message":"You mean, if a VM is migrated for HA purposes, the instance will be on another node and nova will be confused about it?","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":155,"context_line":""},{"line_number":156,"context_line":"* Because of the cluster shared storage, the images will have to cached only"},{"line_number":157,"context_line":"  once per cluster, instead of once per node, resulting in less storage used"},{"line_number":158,"context_line":"  for caching and less time spent doing it."},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"* Because of the cluster shared storage, live migration and cold migration"},{"line_number":161,"context_line":"  duration is greatly reduced."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_8b1c6078","line":158,"updated":"2015-06-16 18:14:26.000000000","message":"I know there have been locking issues and races in vmware around that area, its worth taking a look at that.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":155,"context_line":""},{"line_number":156,"context_line":"* Because of the cluster shared storage, the images will have to cached only"},{"line_number":157,"context_line":"  once per cluster, instead of once per node, resulting in less storage used"},{"line_number":158,"context_line":"  for caching and less time spent doing it."},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"* Because of the cluster shared storage, live migration and cold migration"},{"line_number":161,"context_line":"  duration is greatly reduced."}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_f1f05993","line":158,"in_reply_to":"fa32b979_8b1c6078","updated":"2015-06-17 14:25:40.000000000","message":"Interesting point. Currently, the the synchronization is only done locally, in the same nova-compute service. This means that the image will not be fetched twice in the same nova-compute service, but since there will be multiple services over the same Shared Storage, this cannot be prevented as it is now. This won\u0027t cause major issues, but it will have to be taken care of. Thanks for info!","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":182,"context_line":"  instances_path\u003d\\\\SHARED_STORAGE\\OpenStack\\Instances"},{"line_number":183,"context_line":"* The compute_driver in compute nodes\u0027 nova.conf file will have to be set as"},{"line_number":184,"context_line":"  such:"},{"line_number":185,"context_line":"  compute_driver\u003dnova.virt.hyperv.cluster.driver.HyperVClusterDriver"},{"line_number":186,"context_line":"* The WMI namespace for the Hyper-V Cluster is \u0027/root/MSCluster\u0027. When using"},{"line_number":187,"context_line":"  that namespace, the driver will fail to start due to stack overflow exception"},{"line_number":188,"context_line":"  while instantiating the namespace. This is happens because of a missing magic"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_0e3e1eb8","line":185,"updated":"2015-06-16 18:14:26.000000000","message":"Please do an entry point version here, I think thats the default now?","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"8f67fb2a1b4fc6871ff376b75499a58e7fdf692e","unresolved":false,"context_lines":[{"line_number":182,"context_line":"  instances_path\u003d\\\\SHARED_STORAGE\\OpenStack\\Instances"},{"line_number":183,"context_line":"* The compute_driver in compute nodes\u0027 nova.conf file will have to be set as"},{"line_number":184,"context_line":"  such:"},{"line_number":185,"context_line":"  compute_driver\u003dnova.virt.hyperv.cluster.driver.HyperVClusterDriver"},{"line_number":186,"context_line":"* The WMI namespace for the Hyper-V Cluster is \u0027/root/MSCluster\u0027. When using"},{"line_number":187,"context_line":"  that namespace, the driver will fail to start due to stack overflow exception"},{"line_number":188,"context_line":"  while instantiating the namespace. This is happens because of a missing magic"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_9138ed3e","line":185,"in_reply_to":"fa32b979_0e3e1eb8","updated":"2015-06-17 14:25:40.000000000","message":"I\u0027m not sure I get what you mean...\n\nCurrently, the default for Hyper-V is:\n\n    compute_driver \u003d nova.virt.hyperv.driver.HyperVDriver","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0fbcf92070884d7c3c88563f175215ae75b0e28d","unresolved":false,"context_lines":[{"line_number":218,"context_line":""},{"line_number":219,"context_line":"* Unit tests."},{"line_number":220,"context_line":"* Tempest tests will be able to validate this feature and they will run as part"},{"line_number":221,"context_line":"  of the Hyper-V CI."},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"Documentation Impact"},{"line_number":224,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_ae6372db","line":221,"updated":"2015-06-16 18:14:26.000000000","message":"I think this means two hyper-v ci clusters, one for a cluster, one for no cluster, right?","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":3185,"name":"Alessandro Pilotti","email":"apilotti@cloudbasesolutions.com","username":"alexpilotti"},"change_message_id":"1910d8f257d408d7ef4da2de47938d2623d42668","unresolved":false,"context_lines":[{"line_number":218,"context_line":""},{"line_number":219,"context_line":"* Unit tests."},{"line_number":220,"context_line":"* Tempest tests will be able to validate this feature and they will run as part"},{"line_number":221,"context_line":"  of the Hyper-V CI."},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"Documentation Impact"},{"line_number":224,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa32b979_61757b96","line":221,"in_reply_to":"fa32b979_ae6372db","updated":"2015-06-16 18:32:05.000000000","message":"We will have two separate jobs, one for the current driver and one for cluster. We should have enough hardware (provided by Microsoft) to run both of them on each job.\n\nCurrently we already have 2 Hyper-V nodes allocated to each test for live migration tests. Cluster tests will also use two Hyper-V nodes.","commit_id":"cfd4bd18fef3c4b13a26f738f1cf3708af97df8a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"c3c05bb290aa18302ea978b8c56d0beb69796751","unresolved":false,"context_lines":[{"line_number":106,"context_line":"    storage and 2 instances with 200 GB used storage each on a single node in"},{"line_number":107,"context_line":"    the cluster, that node will report having 100 GB free storage space, while"},{"line_number":108,"context_line":"    other nodes, with no instances, will report as having 500 GB free. Trying"},{"line_number":109,"context_line":"    to deploy another 200 GB instance would fail. (WIP)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"This blueprint will address Option B, as its value far outweighs Option A."},{"line_number":112,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"fa32b979_61601b36","line":109,"updated":"2015-06-23 10:35:46.000000000","message":"This is true for shared storage with libvirt as well.","commit_id":"a5011cd1e150b04bfd26be1740756881a2861bcb"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"74cb4ca75abb6db2a82269e5bb6b0ca8bd06ca7b","unresolved":false,"context_lines":[{"line_number":106,"context_line":"    storage and 2 instances with 200 GB used storage each on a single node in"},{"line_number":107,"context_line":"    the cluster, that node will report having 100 GB free storage space, while"},{"line_number":108,"context_line":"    other nodes, with no instances, will report as having 500 GB free. Trying"},{"line_number":109,"context_line":"    to deploy another 200 GB instance would fail. (WIP)"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"This blueprint will address Option B, as its value far outweighs Option A."},{"line_number":112,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"fa32b979_21121363","line":109,"in_reply_to":"fa32b979_61601b36","updated":"2015-06-23 10:41:39.000000000","message":"+1 as per previous comments, it would be nice to add that in the spec, but we can do that later.","commit_id":"a5011cd1e150b04bfd26be1740756881a2861bcb"}]}
