)]}'
{"api-guide/source/general_info.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5186854980c4aca2f73105d5b8af595028001322","unresolved":false,"context_lines":[{"line_number":197,"context_line":""},{"line_number":198,"context_line":"     If you have a more extensive health monitoring system external to Nova,"},{"line_number":199,"context_line":"     and know that the service in question is dead (and disconnected from the"},{"line_number":200,"context_line":"     network), this can be used to tell the rest of nova it can trust that this"},{"line_number":201,"context_line":"     service is never coming back, and allow actions such as evacuate.  `(This"},{"line_number":202,"context_line":"     action is enabled in Microversion 2.11)`"},{"line_number":203,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"9f436f4f_ed037741","line":200,"range":{"start_line":200,"start_character":52,"end_line":200,"end_character":56},"updated":"2017-08-10 13:39:10.000000000","message":"Let\u0027s be consistent with naming, it\u0027s either Nova or nova.","commit_id":"26844eac7e6d11057c0b2c98cbff22da4992604e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5186854980c4aca2f73105d5b8af595028001322","unresolved":false,"context_lines":[{"line_number":198,"context_line":"     If you have a more extensive health monitoring system external to Nova,"},{"line_number":199,"context_line":"     and know that the service in question is dead (and disconnected from the"},{"line_number":200,"context_line":"     network), this can be used to tell the rest of nova it can trust that this"},{"line_number":201,"context_line":"     service is never coming back, and allow actions such as evacuate.  `(This"},{"line_number":202,"context_line":"     action is enabled in Microversion 2.11)`"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"     **WARNING**: this must *only* be used if you have fully fenced the service"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9f436f4f_8df86b49","line":201,"range":{"start_line":201,"start_character":16,"end_line":201,"end_character":33},"updated":"2017-08-10 13:39:10.000000000","message":"Not sure about this wording - it could come back, but in a different form - see more detailed comments in the api-ref for the same thing.","commit_id":"26844eac7e6d11057c0b2c98cbff22da4992604e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5186854980c4aca2f73105d5b8af595028001322","unresolved":false,"context_lines":[{"line_number":201,"context_line":"     service is never coming back, and allow actions such as evacuate.  `(This"},{"line_number":202,"context_line":"     action is enabled in Microversion 2.11)`"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"     **WARNING**: this must *only* be used if you have fully fenced the service"},{"line_number":205,"context_line":"     in question, and that it can never send updates to the rest of the"},{"line_number":206,"context_line":"     system. This can be done by powering off the node or completely isolating"},{"line_number":207,"context_line":"     it\u0027s networking. If you force-down a service that is not fenced you can"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9f436f4f_4d98431a","line":204,"range":{"start_line":204,"start_character":5,"end_line":204,"end_character":16},"updated":"2017-08-10 13:39:10.000000000","message":".. warning::","commit_id":"26844eac7e6d11057c0b2c98cbff22da4992604e"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"d813febcd9d28ed35f991720f8056b5cc394cb3f","unresolved":false,"context_lines":[{"line_number":203,"context_line":""},{"line_number":204,"context_line":"     .. warning::"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"        this must *only* be used if you have fully fenced the service in"},{"line_number":207,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":208,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":209,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f5c4f37_8493f74f","line":206,"range":{"start_line":206,"start_character":62,"end_line":206,"end_character":69},"updated":"2017-09-21 07:20:58.000000000","message":"Maybe we should just say this is just for the nova-compute service. Forced-down a nova-scheduler or nova-conductor sounds like useless?","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f44a9658b4f81a0f68e333ac2f08bc899f2a58f3","unresolved":false,"context_lines":[{"line_number":206,"context_line":"        this must *only* be used if you have fully fenced the service in"},{"line_number":207,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":208,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":209,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"},{"line_number":210,"context_line":"        fenced you can corrupt the VMs that were running on that host."},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"-  **Hosts**"}],"source_content_type":"text/x-rst","patch_set":2,"id":"7f515b1d_f0bb74c1","line":209,"range":{"start_line":209,"start_character":18,"end_line":209,"end_character":22},"updated":"2017-10-04 15:05:38.000000000","message":"its","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"b131354ebe753dcc2d3474a63ac0ef4999617c60","unresolved":false,"context_lines":[{"line_number":205,"context_line":""},{"line_number":206,"context_line":"        this must *only* be used if you have fully fenced the service in"},{"line_number":207,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":208,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":209,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"},{"line_number":210,"context_line":"        fenced you can corrupt the VMs that were running on that host."},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"-  **Hosts**"},{"line_number":213,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f436f4f_02ad6530","line":210,"range":{"start_line":208,"start_character":16,"end_line":210,"end_character":70},"updated":"2017-08-10 15:46:08.000000000","message":"Do we want to say anything about ensuring that nova-compute gets killed before allowing the host back on to the network if the node wasn\u0027t powered off?","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c4c3a5fc0e2dd33211b6ef1f58c9d9ed1100cba6","unresolved":false,"context_lines":[{"line_number":205,"context_line":""},{"line_number":206,"context_line":"        this must *only* be used if you have fully fenced the service in"},{"line_number":207,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":208,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":209,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"},{"line_number":210,"context_line":"        fenced you can corrupt the VMs that were running on that host."},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"-  **Hosts**"},{"line_number":213,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ff5d4b2f_a0d1435a","line":210,"range":{"start_line":208,"start_character":16,"end_line":210,"end_character":70},"in_reply_to":"9f436f4f_02ad6530","updated":"2017-09-19 13:09:44.000000000","message":"THis says \"powering off the node\" so I\u0027m not sure what you\u0027re asking for. Provide suggested wording if you have something.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"e6f826e026caba440089761524c0bbbd6629188a","unresolved":false,"context_lines":[{"line_number":205,"context_line":""},{"line_number":206,"context_line":"        this must *only* be used if you have fully fenced the service in"},{"line_number":207,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":208,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":209,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"},{"line_number":210,"context_line":"        fenced you can corrupt the VMs that were running on that host."},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"-  **Hosts**"},{"line_number":213,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ff5d4b2f_386c6b35","line":210,"range":{"start_line":208,"start_character":16,"end_line":210,"end_character":70},"in_reply_to":"ff5d4b2f_a0d1435a","updated":"2017-09-19 14:37:36.000000000","message":"The above gives two options, power off the node or isolate it on the network.  If the operator chooses the second option, they need to ensure that the nova-compute service gets restarted before allowing it back onto the network.  I think you\u0027d also want to shut down all the VMs for instances that were evacuated otherwise there\u0027d be a window where you could have two instances talking to the same cinder volume, for example.  Maybe it\u0027s simpler to talk about powering down the node, but that doesn\u0027t cover the case where one compute node represents multiple hosts.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"51d8d109525ddda6a5d3b88602a8b8a4339ead9b","unresolved":false,"context_lines":[{"line_number":196,"context_line":"     .. note::"},{"line_number":197,"context_line":"       This action is enabled in microversion 2.11."},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"     This action allows you set the state of service down immediately. Nova"},{"line_number":200,"context_line":"     only provides a very basic health monitor of service status, there isn\u0027t"},{"line_number":201,"context_line":"     any guarantee about health status of other parts of infrastructure, like"},{"line_number":202,"context_line":"     the health status of data network, storage network and other"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_6a81b84a","line":199,"range":{"start_line":199,"start_character":45,"end_line":199,"end_character":52},"updated":"2018-08-17 01:03:11.000000000","message":"**nova-compute** service\n\nThe os-services API PUT actions only work on compute services since it relies on host mappings and those only exist for compute services. So we should be clear it\u0027s just nova-compute, not stuff like conductor or scheduler.\n\nAlternatively, we could add a .. note under the **Services Actions** section header that these actions only apply to nova-compute services. Then we don\u0027t need to point it out throughout like I did below.","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"51d8d109525ddda6a5d3b88602a8b8a4339ead9b","unresolved":false,"context_lines":[{"line_number":203,"context_line":"     components."},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"     If you have a more extensive health monitoring system external to Nova,"},{"line_number":206,"context_line":"     and know that the service in question is dead (and disconnected from the"},{"line_number":207,"context_line":"     network), this can be used to tell the rest of Nova it can trust that this"},{"line_number":208,"context_line":"     service is never coming back, and allow actions such as evacuate."},{"line_number":209,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_0a960496","line":206,"range":{"start_line":206,"start_character":23,"end_line":206,"end_character":30},"updated":"2018-08-17 01:03:11.000000000","message":"compute service","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"51d8d109525ddda6a5d3b88602a8b8a4339ead9b","unresolved":false,"context_lines":[{"line_number":209,"context_line":""},{"line_number":210,"context_line":"     .. warning::"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"        This must *only* be used if you have fully fenced the service in"},{"line_number":213,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":214,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":215,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_ea8ce880","line":212,"range":{"start_line":212,"start_character":62,"end_line":212,"end_character":69},"updated":"2018-08-17 01:03:11.000000000","message":"compute service","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"51d8d109525ddda6a5d3b88602a8b8a4339ead9b","unresolved":false,"context_lines":[{"line_number":212,"context_line":"        This must *only* be used if you have fully fenced the service in"},{"line_number":213,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":214,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":215,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"},{"line_number":216,"context_line":"        fenced you can corrupt the VMs that were running on that host."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"-  **Hosts**"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_4af15c01","line":215,"range":{"start_line":215,"start_character":55,"end_line":215,"end_character":62},"updated":"2018-08-17 01:03:11.000000000","message":"compute service","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"51d8d109525ddda6a5d3b88602a8b8a4339ead9b","unresolved":false,"context_lines":[{"line_number":212,"context_line":"        This must *only* be used if you have fully fenced the service in"},{"line_number":213,"context_line":"        question, and that it can never send updates to the rest of the"},{"line_number":214,"context_line":"        system. This can be done by powering off the node or completely"},{"line_number":215,"context_line":"        isolating it\u0027s networking. If you force-down a service that is not"},{"line_number":216,"context_line":"        fenced you can corrupt the VMs that were running on that host."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":"-  **Hosts**"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_aaecb029","line":215,"range":{"start_line":215,"start_character":18,"end_line":215,"end_character":22},"updated":"2018-08-17 01:03:11.000000000","message":"its","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"}],"api-ref/source/os-services.inc":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5186854980c4aca2f73105d5b8af595028001322","unresolved":false,"context_lines":[{"line_number":197,"context_line":""},{"line_number":198,"context_line":"Set or unset ``forced_down`` flag for the service. ``forced_down`` is a manual"},{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged), and can"},{"line_number":201,"context_line":"never again communicate with the rest of the system. That signals that it is"},{"line_number":202,"context_line":"safe to proceed with ``evacuate`` or other operations that nova has safety"},{"line_number":203,"context_line":"checks to prevent for hosts that are up."},{"line_number":204,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":1,"id":"9f436f4f_edda57e7","line":201,"range":{"start_line":200,"start_character":69,"end_line":201,"end_character":51},"updated":"2017-08-10 13:39:10.000000000","message":"It can communicate again with the rest of the system after it\u0027s fixed and brought back up, right? But as noted in the bug, if the rest of the computes are upgraded, then when you try to bring this one back up it could fail with ServiceTooOld, so you\u0027d have to be sure to upgrade it too before bringing it back online.","commit_id":"26844eac7e6d11057c0b2c98cbff22da4992604e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5186854980c4aca2f73105d5b8af595028001322","unresolved":false,"context_lines":[{"line_number":211,"context_line":""},{"line_number":212,"context_line":"Specify the service by its host name and binary name."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":".. note:: Starting with microversion 2.53 this API is superseded by"},{"line_number":215,"context_line":"          ``PUT /os-services/{service_id}``."},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"Normal response codes: 200"},{"line_number":218,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":1,"id":"9f436f4f_ed55b751","line":215,"range":{"start_line":214,"start_character":0,"end_line":215,"end_character":44},"updated":"2017-08-10 13:39:10.000000000","message":"This API is deprecated, so you need to also handle this in the \"Update Compute Service\" docs. I\u0027d suggest updating the \"forced_down_2_53_in\" parameter description.","commit_id":"26844eac7e6d11057c0b2c98cbff22da4992604e"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"d813febcd9d28ed35f991720f8056b5cc394cb3f","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":".. rest_method:: PUT /os-services/force-down"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"Set or unset ``forced_down`` flag for the service. ``forced_down`` is a manual"},{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"9f5c4f37_64ffe367","line":198,"updated":"2017-09-21 07:20:58.000000000","message":"maybe we should mention that the forced_down only useful for nova-compute service","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"b131354ebe753dcc2d3474a63ac0ef4999617c60","unresolved":false,"context_lines":[{"line_number":196,"context_line":".. rest_method:: PUT /os-services/force-down"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"Set or unset ``forced_down`` flag for the service. ``forced_down`` is a manual"},{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"},{"line_number":202,"context_line":"nova has safety checks to prevent for hosts that are up."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"9f436f4f_e2ab811a","line":199,"range":{"start_line":199,"start_character":67,"end_line":199,"end_character":75},"updated":"2017-08-10 15:46:08.000000000","message":"not sure we need \"manually\", it could by done by automation.  Also down at line 261.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c4c3a5fc0e2dd33211b6ef1f58c9d9ed1100cba6","unresolved":false,"context_lines":[{"line_number":196,"context_line":".. rest_method:: PUT /os-services/force-down"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"Set or unset ``forced_down`` flag for the service. ``forced_down`` is a manual"},{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"},{"line_number":202,"context_line":"nova has safety checks to prevent for hosts that are up."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"ff5d4b2f_4045e716","line":199,"range":{"start_line":199,"start_character":67,"end_line":199,"end_character":75},"in_reply_to":"9f436f4f_e2ab811a","updated":"2017-09-19 13:09:44.000000000","message":"I think \"manually\" here means by something external to nova, be that an operator manually running a CLI or some automated tooling that\u0027s doing it, but the point of manually vs automated is that Nova doesn\u0027t auto-force-down the service.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"e6f826e026caba440089761524c0bbbd6629188a","unresolved":false,"context_lines":[{"line_number":196,"context_line":".. rest_method:: PUT /os-services/force-down"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"Set or unset ``forced_down`` flag for the service. ``forced_down`` is a manual"},{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"},{"line_number":202,"context_line":"nova has safety checks to prevent for hosts that are up."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"ff5d4b2f_18cd275d","line":199,"range":{"start_line":199,"start_character":67,"end_line":199,"end_character":75},"in_reply_to":"ff5d4b2f_4045e716","updated":"2017-09-19 14:37:36.000000000","message":"Yeah, fair enough.  It should be noted that fencing the service isn\u0027t enough, you also need to fence the running instances to avoid having multiple identical instances running (since presumably you\u0027re forcing down in order to trigger evacuation of all the instances).\n\nIn the case of libvirt/qemu it\u0027s easy, you can just fence the whole compute node.  In the case where one compute node manages many hosts, things get a bit trickier.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"7f221cbcb772e2d644c9781106de95f4445b4445","unresolved":false,"context_lines":[{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"},{"line_number":202,"context_line":"nova has safety checks to prevent for hosts that are up."},{"line_number":203,"context_line":""},{"line_number":204,"context_line":".. warning::"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"9f436f4f_082b4930","line":202,"updated":"2017-08-10 13:58:56.000000000","message":"TBC, force-down was designed for non-human actionable queries since the intent was to reduce the time between the host was down and the time Nova would take to notice it. As a consequence, the idea was to allow a specific \"hook\" to be called by a 3rd-party tool responsible for healthness checks in order to mark it down *before* the Nova ServiceGroup API was noticing it (so, less than the DB polling period if you use the DB driver).\n\nI\u0027d honestly just make it super explicit here that this specfic REST action should *NEVER* be called by an human for forcing a host down, while forcing the host back up should *ALWAYS* be a human thing.\n\nProduction rules in general, you can automate putting a host out of rotation in general, but you always do pre-flight checks before putting it back in rotation.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"b131354ebe753dcc2d3474a63ac0ef4999617c60","unresolved":false,"context_lines":[{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"},{"line_number":202,"context_line":"nova has safety checks to prevent for hosts that are up."},{"line_number":203,"context_line":""},{"line_number":204,"context_line":".. warning::"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"9f436f4f_42700ddd","line":202,"in_reply_to":"9f436f4f_081109ad","updated":"2017-08-10 15:46:08.000000000","message":"I agree with Sean here, though I\u0027d expect it to be more commonly done by automated tools.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"1eb7e2699ee3fc3773c113c8bbaee312b5220dd4","unresolved":false,"context_lines":[{"line_number":199,"context_line":"override to tell nova that the service in question has been fenced manually by"},{"line_number":200,"context_line":"the operations team (either hard powered off, or network unplugged). That"},{"line_number":201,"context_line":"signals that it is safe to proceed with ``evacuate`` or other operations that"},{"line_number":202,"context_line":"nova has safety checks to prevent for hosts that are up."},{"line_number":203,"context_line":""},{"line_number":204,"context_line":".. warning::"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"9f436f4f_081109ad","line":202,"in_reply_to":"9f436f4f_082b4930","updated":"2017-08-10 14:03:35.000000000","message":"it\u0027s fine for a human to call this, as long as they\u0027ve fenced the node, not everyone has automation here. They might be doing a live incident issue.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0bbeefda85a996702e135e97208072daadb0d9a9","unresolved":false,"context_lines":[{"line_number":257,"context_line":"reason why a compute service was disabled from scheduling. Set or unset the"},{"line_number":258,"context_line":"``forced_down`` flag for the service."},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"``forced_down`` is a manual override to tell nova that the service in question"},{"line_number":261,"context_line":"has been fenced manually by the operations team (either hard powered off, or"},{"line_number":262,"context_line":"network unplugged). That signals that it is safe to proceed with ``evacuate``"},{"line_number":263,"context_line":"or other operations that nova has safety checks to prevent for hosts that are"},{"line_number":264,"context_line":"up."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":".. warning::"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"   Setting a service forced down without completely fencing it will likely"},{"line_number":269,"context_line":"   result in the corruption of VMs on that host."},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"This API is available starting with microversion 2.53."},{"line_number":272,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":3,"id":"3f79a3b5_eafdc8b1","line":269,"range":{"start_line":260,"start_character":0,"end_line":269,"end_character":48},"updated":"2018-08-17 01:14:07.000000000","message":"Since this API is more generic than just the forced down parameter, which is optional here, I wonder if this should be moved into the forced_down_2_53_in parameter description itself.","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5fc66edecf50a50b5dad5900438e49d9f36676e0","unresolved":false,"context_lines":[{"line_number":257,"context_line":"reason why a compute service was disabled from scheduling. Set or unset the"},{"line_number":258,"context_line":"``forced_down`` flag for the service."},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"``forced_down`` is a manual override to tell nova that the service in question"},{"line_number":261,"context_line":"has been fenced manually by the operations team (either hard powered off, or"},{"line_number":262,"context_line":"network unplugged). That signals that it is safe to proceed with ``evacuate``"},{"line_number":263,"context_line":"or other operations that nova has safety checks to prevent for hosts that are"},{"line_number":264,"context_line":"up."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":".. warning::"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"   Setting a service forced down without completely fencing it will likely"},{"line_number":269,"context_line":"   result in the corruption of VMs on that host."},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"This API is available starting with microversion 2.53."},{"line_number":272,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":3,"id":"3f79a3b5_e5173945","line":269,"range":{"start_line":260,"start_character":0,"end_line":269,"end_character":48},"in_reply_to":"3f79a3b5_6a70d8dd","updated":"2018-08-17 01:39:25.000000000","message":"Nevermind, right after I posted this, I see another parameter using formatting.","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ba333cbeee060ea0aff10225c3b2a3d143e9bc00","unresolved":false,"context_lines":[{"line_number":257,"context_line":"reason why a compute service was disabled from scheduling. Set or unset the"},{"line_number":258,"context_line":"``forced_down`` flag for the service."},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"``forced_down`` is a manual override to tell nova that the service in question"},{"line_number":261,"context_line":"has been fenced manually by the operations team (either hard powered off, or"},{"line_number":262,"context_line":"network unplugged). That signals that it is safe to proceed with ``evacuate``"},{"line_number":263,"context_line":"or other operations that nova has safety checks to prevent for hosts that are"},{"line_number":264,"context_line":"up."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":".. warning::"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"   Setting a service forced down without completely fencing it will likely"},{"line_number":269,"context_line":"   result in the corruption of VMs on that host."},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"This API is available starting with microversion 2.53."},{"line_number":272,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":3,"id":"3f79a3b5_6a70d8dd","line":269,"range":{"start_line":260,"start_character":0,"end_line":269,"end_character":48},"in_reply_to":"3f79a3b5_ead5c8e6","updated":"2018-08-17 01:37:29.000000000","message":"But, the parameters file is just YAML and I\u0027m not sure this formatting will work. And the description will be large.","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7595c0d9adaedecdedb924d5a35f9821f5a25bf0","unresolved":false,"context_lines":[{"line_number":257,"context_line":"reason why a compute service was disabled from scheduling. Set or unset the"},{"line_number":258,"context_line":"``forced_down`` flag for the service."},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"``forced_down`` is a manual override to tell nova that the service in question"},{"line_number":261,"context_line":"has been fenced manually by the operations team (either hard powered off, or"},{"line_number":262,"context_line":"network unplugged). That signals that it is safe to proceed with ``evacuate``"},{"line_number":263,"context_line":"or other operations that nova has safety checks to prevent for hosts that are"},{"line_number":264,"context_line":"up."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":".. warning::"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"   Setting a service forced down without completely fencing it will likely"},{"line_number":269,"context_line":"   result in the corruption of VMs on that host."},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"This API is available starting with microversion 2.53."},{"line_number":272,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":3,"id":"3f79a3b5_ead5c8e6","line":269,"range":{"start_line":260,"start_character":0,"end_line":269,"end_character":48},"in_reply_to":"3f79a3b5_eafdc8b1","updated":"2018-08-17 01:27:23.000000000","message":"Looking at the rendering [1], I agree it seems it would be more appropriate in the parameter details.\n\n[1] http://logs.openstack.org/33/492533/3/check/build-openstack-api-ref/313689c/html/#update-compute-service","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"b131354ebe753dcc2d3474a63ac0ef4999617c60","unresolved":false,"context_lines":[{"line_number":2721,"context_line":"forced_down_2_53_in:"},{"line_number":2722,"context_line":"  description: |"},{"line_number":2723,"context_line":"    Whether or not this service was forced down manually by an"},{"line_number":2724,"context_line":"    administrator after the service was fenced. This value is useful"},{"line_number":2725,"context_line":"    to know that some 3rd party has verified the service should be"},{"line_number":2726,"context_line":"    marked down."},{"line_number":2727,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"9f436f4f_a54d8373","line":2724,"range":{"start_line":2724,"start_character":28,"end_line":2724,"end_character":46},"updated":"2017-08-10 15:46:08.000000000","message":"It\u0027s not quite accurate to say that just the service needs to be fenced...we may also need to fence any VMs that were managed by this nova-compute service.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c4c3a5fc0e2dd33211b6ef1f58c9d9ed1100cba6","unresolved":false,"context_lines":[{"line_number":2721,"context_line":"forced_down_2_53_in:"},{"line_number":2722,"context_line":"  description: |"},{"line_number":2723,"context_line":"    Whether or not this service was forced down manually by an"},{"line_number":2724,"context_line":"    administrator after the service was fenced. This value is useful"},{"line_number":2725,"context_line":"    to know that some 3rd party has verified the service should be"},{"line_number":2726,"context_line":"    marked down."},{"line_number":2727,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"ff5d4b2f_405e07e7","line":2724,"range":{"start_line":2724,"start_character":28,"end_line":2724,"end_character":46},"in_reply_to":"9f436f4f_a54d8373","updated":"2017-09-19 13:09:44.000000000","message":"Can you provide more detail or alternate wording?","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"e6f826e026caba440089761524c0bbbd6629188a","unresolved":false,"context_lines":[{"line_number":2721,"context_line":"forced_down_2_53_in:"},{"line_number":2722,"context_line":"  description: |"},{"line_number":2723,"context_line":"    Whether or not this service was forced down manually by an"},{"line_number":2724,"context_line":"    administrator after the service was fenced. This value is useful"},{"line_number":2725,"context_line":"    to know that some 3rd party has verified the service should be"},{"line_number":2726,"context_line":"    marked down."},{"line_number":2727,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"ff5d4b2f_78278366","line":2724,"range":{"start_line":2724,"start_character":28,"end_line":2724,"end_character":46},"in_reply_to":"ff5d4b2f_405e07e7","updated":"2017-09-19 14:37:36.000000000","message":"It\u0027s not enough to fence just the nova-compute service.  If you have an instance with an attached cinder volume, you want to fence the running instance such that it cannot contact the volume storage before evacuating that instance to another compute node.  Otherwise you could end up with multiple instances talking to the same volume.","commit_id":"81e43d133d324a9fa8e8a44f3b4e2002d899262c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0bbeefda85a996702e135e97208072daadb0d9a9","unresolved":false,"context_lines":[{"line_number":3082,"context_line":"  type: boolean"},{"line_number":3083,"context_line":"# This is both the request and response parameter for"},{"line_number":3084,"context_line":"# PUT /os-services/force-down which was added in 2.11."},{"line_number":3085,"context_line":"forced_down_2_11:"},{"line_number":3086,"context_line":"  description: |"},{"line_number":3087,"context_line":"    Whether or not this service was forced down manually by an"},{"line_number":3088,"context_line":"    administrator. This value is useful to know that some 3rd party has"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"3f79a3b5_4a263c6b","line":3085,"range":{"start_line":3085,"start_character":0,"end_line":3085,"end_character":16},"updated":"2018-08-17 01:14:07.000000000","message":"Wouldn\u0027t you want the same description change here?","commit_id":"038a56c0007fceaca3241175fccab84ae42f033f"}]}
