)]}'
{"doc/source/contributor/design/l3_ha_rescheduling.rst":[{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":1,"context_line":"L3 HA Scheduling of Gateway Chassis"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"Introduction"},{"line_number":5,"context_line":"------------"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Currently if a single network node is active in the system, gateway chassis"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_7b4afd80","line":4,"range":{"start_line":4,"start_character":0,"end_line":4,"end_character":12},"updated":"2019-04-22 11:04:47.000000000","message":"nit: s / Problem description ?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":1,"context_line":"L3 HA Scheduling of Gateway Chassis"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"Introduction"},{"line_number":5,"context_line":"------------"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Currently if a single network node is active in the system, gateway chassis"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_f4ffbe64","line":4,"range":{"start_line":4,"start_character":0,"end_line":4,"end_character":12},"in_reply_to":"ffb9cba7_4d8886c5","updated":"2019-04-24 05:18:55.000000000","message":"Will fix it","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":1,"context_line":"L3 HA Scheduling of Gateway Chassis"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"Introduction"},{"line_number":5,"context_line":"------------"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Currently if a single network node is active in the system, gateway chassis"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_4d8886c5","line":4,"range":{"start_line":4,"start_character":0,"end_line":4,"end_character":12},"in_reply_to":"ffb9cba7_7b4afd80","updated":"2019-04-23 08:46:00.000000000","message":"nit +1 :)","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":1,"context_line":"L3 HA Scheduling of Gateway Chassis"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"Introduction"},{"line_number":5,"context_line":"------------"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Currently if a single network node is active in the system, gateway chassis"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_c0df0238","line":4,"range":{"start_line":4,"start_character":0,"end_line":4,"end_character":12},"in_reply_to":"ffb9cba7_f4ffbe64","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_4db1668f","line":14,"range":{"start_line":14,"start_character":73,"end_line":14,"end_character":74},"updated":"2019-04-23 08:46:00.000000000","message":"nit, that comma does not need to be there.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_60e896e1","line":14,"range":{"start_line":14,"start_character":73,"end_line":14,"end_character":74},"in_reply_to":"ffb9cba7_1405b277","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_1405b277","line":14,"range":{"start_line":14,"start_character":73,"end_line":14,"end_character":74},"in_reply_to":"ffb9cba7_4db1668f","updated":"2019-04-24 05:18:55.000000000","message":"oh right","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_ed67fa24","line":15,"range":{"start_line":15,"start_character":37,"end_line":15,"end_character":38},"updated":"2019-04-23 08:46:00.000000000","message":"nit ditto","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_80e58a0b","line":15,"range":{"start_line":15,"start_character":37,"end_line":15,"end_character":38},"in_reply_to":"ffb9cba7_b4f94681","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_b4f94681","line":15,"range":{"start_line":15,"start_character":37,"end_line":15,"end_character":38},"in_reply_to":"ffb9cba7_ed67fa24","updated":"2019-04-24 05:18:55.000000000","message":"ok","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"dae407b9208bc6fc797dc1a79c2e746218db9600","unresolved":false,"context_lines":[{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"},{"line_number":19,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_2351a1d9","line":16,"updated":"2019-04-23 09:41:00.000000000","message":"Syntax:\n\nUse \"*\" as bullet points, otherwise it won\u0027t be rendered correctly, see: http://logs.openstack.org/18/653718/1/check/openstack-tox-docs/38e4843/html/contributor/design/l3_ha_rescheduling.html#introduction","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"},{"line_number":19,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_54300a57","line":16,"in_reply_to":"ffb9cba7_2351a1d9","updated":"2019-04-24 05:18:55.000000000","message":"ok","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":13,"context_line":"- Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"- If the active node, where the gateway chassis for a router is scheduled,"},{"line_number":15,"context_line":"goes down, then because of lack of HA, the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"},{"line_number":19,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_20ee1eed","line":16,"in_reply_to":"ffb9cba7_54300a57","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"dae407b9208bc6fc797dc1a79c2e746218db9600","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Earlier, there was no balancing operation, because of which, gateways were"},{"line_number":22,"context_line":"always scheduled on the same node. While this operation was fixed in [2],"},{"line_number":23,"context_line":"rebalancing/rescheduling was not a part of that solution."},{"line_number":24,"context_line":"In order to provide proper rescheduling of the gateway ports during addition/"},{"line_number":25,"context_line":"deletion of the chassis, following approach can be considered:"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_a313510d","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":24},"updated":"2019-04-23 09:41:00.000000000","message":"nit: I think it\u0027s redundant to use synonyms here. Just pick one.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Earlier, there was no balancing operation, because of which, gateways were"},{"line_number":22,"context_line":"always scheduled on the same node. While this operation was fixed in [2],"},{"line_number":23,"context_line":"rebalancing/rescheduling was not a part of that solution."},{"line_number":24,"context_line":"In order to provide proper rescheduling of the gateway ports during addition/"},{"line_number":25,"context_line":"deletion of the chassis, following approach can be considered:"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_40eb12db","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":24},"in_reply_to":"ffb9cba7_143a9235","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Earlier, there was no balancing operation, because of which, gateways were"},{"line_number":22,"context_line":"always scheduled on the same node. While this operation was fixed in [2],"},{"line_number":23,"context_line":"rebalancing/rescheduling was not a part of that solution."},{"line_number":24,"context_line":"In order to provide proper rescheduling of the gateway ports during addition/"},{"line_number":25,"context_line":"deletion of the chassis, following approach can be considered:"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_143a9235","line":23,"range":{"start_line":23,"start_character":0,"end_line":23,"end_character":24},"in_reply_to":"ffb9cba7_a313510d","updated":"2019-04-24 05:18:55.000000000","message":"ok","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"dae407b9208bc6fc797dc1a79c2e746218db9600","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"*MAX_GW_CHASSIS* is defined in [0]"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_03f01dc9","line":31,"range":{"start_line":31,"start_character":31,"end_line":31,"end_character":34},"updated":"2019-04-23 09:41:00.000000000","message":"Syntax: Since it\u0027s an .rst file, we can make those indexable. For example:\n\n`[0]`_\n\n_`[0]`:  http://google.com\n\n\n(The same apply for other [0-9] in the rest of the document)","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"*MAX_GW_CHASSIS* is defined in [0]"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_944522b6","line":31,"range":{"start_line":31,"start_character":31,"end_line":31,"end_character":34},"in_reply_to":"ffb9cba7_03f01dc9","updated":"2019-04-24 05:18:55.000000000","message":"Ok","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"*MAX_GW_CHASSIS* is defined in [0]"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_e0bd66d8","line":31,"range":{"start_line":31,"start_character":31,"end_line":31,"end_character":34},"in_reply_to":"ffb9cba7_944522b6","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":35,"context_line":"Downtime can occur during rescheduling, however, it can be done based on"},{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_bb35d5f9","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":9},"updated":"2019-04-22 11:04:47.000000000","message":"Are you proposing something to avoid downtime?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":35,"context_line":"Downtime can occur during rescheduling, however, it can be done based on"},{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_00c3da5e","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":9},"in_reply_to":"ffb9cba7_5419ead4","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":35,"context_line":"Downtime can occur during rescheduling, however, it can be done based on"},{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_cd30f60a","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":9},"in_reply_to":"ffb9cba7_bb35d5f9","updated":"2019-04-23 08:46:00.000000000","message":"Let\u0027s explain the algorithm to avoid downtime. I believe it\u0027s an important part of the solution.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"dae407b9208bc6fc797dc1a79c2e746218db9600","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":35,"context_line":"Downtime can occur during rescheduling, however, it can be done based on"},{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_a39d915a","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":9},"in_reply_to":"ffb9cba7_cd30f60a","updated":"2019-04-23 09:41:00.000000000","message":"++","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":35,"context_line":"Downtime can occur during rescheduling, however, it can be done based on"},{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_5419ead4","line":36,"range":{"start_line":35,"start_character":0,"end_line":36,"end_character":9},"in_reply_to":"ffb9cba7_cd30f60a","updated":"2019-04-24 05:18:55.000000000","message":"I am not sure if downtime can be absolutely avoided, unless we reschedule the gateway routers which are on the non-master nodes. In my current understanding, that is the only situation where downtime can be avoided. Is there any other scenario I am missing?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"},{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_dbabe972","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":36},"updated":"2019-04-22 11:04:47.000000000","message":"There\u0027s more schedulers [0] that need to be considered upon addition/removal of chassises.\n \n[0] https://github.com/openstack/networking-ovn/blob/6.0.0.0rc1/networking_ovn/l3/l3_ovn_scheduler.py#L82","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"4de55f4249edd0d2290bca514ea854c4a3495449","unresolved":false,"context_lines":[{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"},{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_a1bc90dc","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":36},"in_reply_to":"ffb9cba7_744f4ebd","updated":"2019-04-24 09:37:54.000000000","message":"If we\u0027re not using it let\u0027s drop it. As long as it\u0027s in the code I think we should support it. On the other hand, I think that the random scheduler may achieve in some cases a better distribution of the load as even if you have the gateway ports evenly distributed across the chassises, it doesn\u0027t mean that the traffic is evenly distributed.\nMy opinion is that we should keep it and that it should be easier to reschedule on the random one.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"},{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_c0b862e6","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":36},"in_reply_to":"ffb9cba7_a1bc90dc","updated":"2019-04-27 00:54:41.000000000","message":"I am not sure if we are going to drop it or not, but for now I have added the support in the design","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":36,"context_line":"priority. Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":37,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Rescheduling will consider the least loaded chassis to identify where the"},{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_744f4ebd","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":36},"in_reply_to":"ffb9cba7_dbabe972","updated":"2019-04-24 05:18:55.000000000","message":"I dont have the logs but I do remember that somewhere we discussed that the ChanceScheduler is not used. We can definitely consider the ChanceScheduler, but want to be sure if we are using it.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":44,"context_line":"excluded in this operation."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Few points to consider for the design:"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_cd19d688","line":44,"range":{"start_line":43,"start_character":38,"end_line":44,"end_character":27},"updated":"2019-04-23 08:46:00.000000000","message":"I would explain why (because the association on the DB is made through the gateway ports) -just to let people understand why when they read this doc-","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":44,"context_line":"excluded in this operation."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Few points to consider for the design:"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_60d17623","line":44,"range":{"start_line":43,"start_character":38,"end_line":44,"end_character":27},"in_reply_to":"ffb9cba7_54cc8a34","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":40,"context_line":"router\u0027s gateways can be rescheduled. This identification is an event triggered"},{"line_number":41,"context_line":"operation which will occur whenever a chassis is added/removed."},{"line_number":42,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` [1] will be"},{"line_number":43,"context_line":"called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":44,"context_line":"excluded in this operation."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Few points to consider for the design:"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_54cc8a34","line":44,"range":{"start_line":43,"start_character":38,"end_line":44,"end_character":27},"in_reply_to":"ffb9cba7_cd19d688","updated":"2019-04-24 05:18:55.000000000","message":"okay","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Few points to consider for the design:"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_373798b3","line":49,"range":{"start_line":49,"start_character":52,"end_line":49,"end_character":53},"updated":"2019-04-24 05:18:55.000000000","message":"be","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Few points to consider for the design:"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_80ceea7f","line":49,"range":{"start_line":49,"start_character":52,"end_line":49,"end_character":53},"in_reply_to":"ffb9cba7_373798b3","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_1b03c144","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"updated":"2019-04-22 11:04:47.000000000","message":"Rescheduling also means adding a new priority so if you have C1 and C2, and C3 is added, you\u0027ll have to reschedule routers with a third priority also on C2 and C3 right? You probably mean that if R1 with priority 2 is scheduled on C1, it will not be moved with priority 2 as well to C2? This won\u0027t cause any dataplane disruption so can you clarify in the doc why this should be avoided?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"487acb4b57d2a2bffe53c580921f7cc5eb691e56","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_903a15e5","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_0d07ee1e","updated":"2019-04-23 09:15:18.000000000","message":"Good point. Theoretically if a chassis is down, due to the schema, the gw chassis row would go away as well right? Do you suggest querying the SB database to see where the gw port is bound at that specific moment?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_0d07ee1e","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_1b03c144","updated":"2019-04-23 08:46:00.000000000","message":"Exactly, only reschedule *non-master* schedulings  to avoid dataplane disruptions.\n\nWe should check which one of the schedulings is master, and only fiddle with the others (only checking lower priority is not fine because, if one of the higher priority chassis is down... the active will be the next, or the next...)","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_b7f868c4","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_1b03c144","updated":"2019-04-24 05:18:55.000000000","message":"Ok, let me play out a scenario so that I understand it better.\nWe have 3 Routers, R1, R2 and R3, and 2 Chassis, C1 and C2.\nWe have R1 and R2 are master on C1 and R3 is master on C2.\nWhen we add the new chassis C3, all three routers should be scheduled on C3, with the lowest priority, isnt it?\nAnd right, we should not move R1 and R2 to C2/C3, since C1 is the Master for R1 and R2.\nAnd as Miguel stated, we need to check both Priority and the Master node for the gateway","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_e0a246ae","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_512b0d2f","updated":"2019-04-27 00:54:41.000000000","message":"Ok, so I have created a table of sorts, I would like everyone\u0027s opinion on it, that is the way I am planning to rebalance. I know it requires continuous movement of routers whenever a new chassis is added, contributing to downtime which conflicts with one of the above points, but without rebalancing, the whole structure looks weak/solely dependent on some chassis.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"772fe3461201081e172ae87caf52c33d14be9a74","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_633d59ba","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_903a15e5","updated":"2019-04-23 09:20:37.000000000","message":"After IRC discussion with ajo, please forget the \u0027schema\u0027 part. The reference won\u0027t go away for very good reasons: if one controller is rebooted, the gw port remains scheduled on it, otherwise it\u0027ll be lost.\n\nMiguel\u0027s point is very good, let\u0027s take into account where the port is actually bound to instead of relying just on the priorities.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"4de55f4249edd0d2290bca514ea854c4a3495449","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_e1760807","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_b7f868c4","updated":"2019-04-24 09:37:54.000000000","message":"Let me extend your scenario with a more extreme example:\n\n* 100 routers. C1 and C2 (let\u0027s say that C1 hosts 50 masters and C2 the other 50)\n* You add 3 more chassis (C3, C4, C5).\n* Based on your comment, when C3 is added, all 100 routers will be scheduled with lowest prio there. The same goes for C4 and C5. This means that C3 will have all the routers with the same priority. The same goes for C4 and C5.\n* Now C1 and C2 goes down.\n* You end up having all 100 routers being master on C3.\n\nIdeally, what you should have is 33 on C3, 33 on C4 and 33 on C5 (the remaining one, wherever it falls :) for the LeastLoaded scheduler. For the Chance, you can\u0027t guarantee it but I wouldn\u0027t expect to have 100% 0% 0% with a \u0027big\u0027 number of gateway ports.\n\nAs for minimizing the downtime, this document should cover the approach taken. Some possibilities could be:\n\n- *not move* the master gateway ports at all (As Miguel wisely pointed out, master gateway ports at any given moment are not necessarily highest priority ones)\n- do it only when the unbalance ratio is above a threshold (not configurable I\u0027d say): for example, if there\u0027s more than N gateway ports on a chassis and the cloud unbalance factor is \u003e75%, then let\u0027s move masters around.   N and 75% are arbitrary, we can define whatever in this document and later in your implementation come up with concrete values based on your testing, failover times, feedback, ...\n- ....","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"bfeebda49648a29280ae83fda5c7167aa4132751","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"* If there are 2 Chassis C1 and C2, where the routers are already balanced,"},{"line_number":49,"context_line":"  and a new chassis C3 is added, then routers should rescheduled only from"},{"line_number":50,"context_line":"  C1 to C3 and C2 to C3. C1 to C2 rescheduling should not be allowed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_512b0d2f","line":50,"range":{"start_line":50,"start_character":25,"end_line":50,"end_character":68},"in_reply_to":"ffb9cba7_e1760807","updated":"2019-04-25 09:13:50.000000000","message":"That\u0027s a good point, if we don\u0027t provide any means to rebalance, keeping the masters as master will make the extra network node provide no traffic handling.\n\nMay be we could provide a cmdline tool to let the admin rebalance? (or other maintenance tasks related to networking-ovn?)","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_9b9491ea","line":54,"updated":"2019-04-22 11:04:47.000000000","message":".. to avoid dataplane disruption","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_b7e62816","line":54,"in_reply_to":"ffb9cba7_5069fdbb","updated":"2019-04-24 05:18:55.000000000","message":"Fair enough, considered in the above comment as well.\nThanks a lot for your inputs.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_5069fdbb","line":54,"in_reply_to":"ffb9cba7_9b9491ea","updated":"2019-04-23 08:46:00.000000000","message":"-1 You should check the chasis redirect port binding to figure out which one is the real *master* not only look at the priority.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_c0adc29b","line":54,"in_reply_to":"ffb9cba7_b7e62816","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_bbc2b5e8","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":49},"updated":"2019-04-22 11:04:47.000000000","message":"How\u0027re you planning to handle this?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"dae407b9208bc6fc797dc1a79c2e746218db9600","unresolved":false,"context_lines":[{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_23744135","line":56,"range":{"start_line":56,"start_character":9,"end_line":56,"end_character":15},"updated":"2019-04-23 09:41:00.000000000","message":"second","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_80934a5b","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":49},"in_reply_to":"ffb9cba7_978e8476","updated":"2019-04-27 00:54:41.000000000","message":"Selection is still not answered in the next patch, I am still not sure how to exactly identify the routers without data plane information","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_978e8476","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":49},"in_reply_to":"ffb9cba7_bbc2b5e8","updated":"2019-04-24 05:18:55.000000000","message":"I wanted more discussion on this actually :)\n\nSelection based on the bandwidth/active connections is difficult.But that would be the most obvious choice.\nWhat I was thinking was more in line of connection tracking, but thats more of a dataplane consideration. Though connection tracking will help in understanding which of the gateways are currently used, so that we can identify and move the currently less used routers onto the other chassis.\n\nFrom simply the control plane point of view, I dont think we would be able to prioritize the routers, considering all of them are in the same gateway chassis , therefore having the same chassis as master.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":53,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_306009cf","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":49},"in_reply_to":"ffb9cba7_bbc2b5e8","updated":"2019-04-23 08:46:00.000000000","message":"ditto.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"8fabdcf6d99899a9001360c3dee31f97aae63f17","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_a3d591bb","line":57,"updated":"2019-04-23 09:50:23.000000000","message":"Off the top of my head and I understand this may be a corner case. But, does core OVN accept negative numbers as a priority level ?\n\nI\u0027m wondering about the case where the master chassis has the priority of 0 (zero) and a new chassis is then added. From what I understood from the this doc the new chassis will now have a lower priority than the master.\n\nI think we can test it out and if negative numbers are not allowed we can think about a way to avoid such problem (e.g when rescheduling, update the master priority to something higher)","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_f7b580ef","line":57,"in_reply_to":"ffb9cba7_a3d591bb","updated":"2019-04-24 05:18:55.000000000","message":"AFAIK, it doesnt, we may not modify the master but maybe we can update the priority of the router in the master node?\nWould that cause Dataplane disruption?\nI will try that out.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":55,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":56,"context_line":"  of the sceond gateway chassis should *ideally* select some of the routers"},{"line_number":57,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_4099d276","line":57,"in_reply_to":"ffb9cba7_a3d591bb","updated":"2019-04-27 00:54:41.000000000","message":"Man page says it doesnt","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_3b7325ea","line":63,"range":{"start_line":62,"start_character":2,"end_line":63,"end_character":65},"updated":"2019-04-22 11:04:47.000000000","message":"I\u0027m against introducing this kind of configuration options as they can cause confusion for operators. Can you please explain how would you plan to measure \u0027the number of unscheduled routers\u0027?\n\nIf a router is scheduled only on C1 but C2 and C3 are also present in the system, will it be considered \u0027unscheduled\u0027?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_bb671526","line":63,"updated":"2019-04-22 11:04:47.000000000","message":"missing whitespace","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7ed250d428509012df95b475bc3ac41b3a024091","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_b082b94e","line":63,"range":{"start_line":62,"start_character":2,"end_line":63,"end_character":65},"in_reply_to":"ffb9cba7_3b7325ea","updated":"2019-04-23 08:46:00.000000000","message":"I agree, let\u0027s avoid extra settings unless there´s very very good reason.","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_d7c87c56","line":63,"range":{"start_line":62,"start_character":2,"end_line":63,"end_character":65},"in_reply_to":"ffb9cba7_3b7325ea","updated":"2019-04-24 05:18:55.000000000","message":"Yes, IMO it should be considered Unscheduled if the other chassis with gateway support are available.\n\nI thought it would be good if instead of moving exactly 50% of the routers( or the floor value if the number is Odd ), it would be advisable to move some routers, which can be a percentage of the total unscheduled routers. Is that an ambiguous design?","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_310e998d","line":63,"range":{"start_line":62,"start_character":2,"end_line":63,"end_character":65},"in_reply_to":"ffb9cba7_71d3b139","updated":"2019-04-27 00:54:41.000000000","message":"Not sure about that","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b26ed8bc1cc617306b32099ac0b3b85fbd31e926","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_80cfca54","line":63,"in_reply_to":"ffb9cba7_a081aefd","updated":"2019-04-30 07:10:25.000000000","message":"Actually, since we are already considering it here","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a05a6a9da742857539298c453af4e0ddde5dff81","unresolved":false,"context_lines":[{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_a081aefd","line":63,"in_reply_to":"ffb9cba7_bb671526","updated":"2019-04-27 00:54:41.000000000","message":"Done","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"bfeebda49648a29280ae83fda5c7167aa4132751","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Future Enhancements"},{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_71d3b139","line":63,"range":{"start_line":62,"start_character":2,"end_line":63,"end_character":65},"in_reply_to":"ffb9cba7_d7c87c56","updated":"2019-04-25 09:13:50.000000000","message":"What about a cmdline tool to help us manage networking-ovn? ...","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"5fafc0551a82aac06d5e83b5b5ca070683cf04b1","unresolved":false,"context_lines":[{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_9b625116","line":64,"range":{"start_line":64,"start_character":35,"end_line":64,"end_character":59},"updated":"2019-04-22 11:04:47.000000000","message":"extra whitespaces around parens","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"b4fb307ae17b8774b7e6fbb3d438c9e592539e32","unresolved":false,"context_lines":[{"line_number":61,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":62,"context_line":"* It is advisable to reschedule when the number of unscheduled routers have"},{"line_number":63,"context_line":"  reached a threshold value, which will be a configurable options.Threshold"},{"line_number":64,"context_line":"  will define the normalized value ( between 0.00 to 1.00 ) of unscheduled"},{"line_number":65,"context_line":"  routers over total routers on each chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ffb9cba7_147292e6","line":64,"range":{"start_line":64,"start_character":35,"end_line":64,"end_character":59},"in_reply_to":"ffb9cba7_9b625116","updated":"2019-04-24 05:18:55.000000000","message":"Will fix","commit_id":"690819e947b2fa8c35676d48fdca8cd78165e54e"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":9,"context_line":"new node is added to the system, rescheduling does not automatically occur."},{"line_number":10,"context_line":"This makes the router created on the first node to be not in the HA mode."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"* Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"* If the active node, where the gateway chassis for a router is scheduled"},{"line_number":15,"context_line":"goes down, then because of lack of HA the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"},{"line_number":19,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_21c3c7ef","line":16,"range":{"start_line":12,"start_character":0,"end_line":16,"end_character":24},"updated":"2019-05-07 13:13:46.000000000","message":"[syntax]\n\nThis is not being rendered correctly as all bullet points are in the same line, see:\n\nhttp://logs.openstack.org/18/653718/4/check/openstack-tox-docs/56c8815/html/contributor/design/l3_ha_rescheduling.html#problem-description","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":9,"context_line":"new node is added to the system, rescheduling does not automatically occur."},{"line_number":10,"context_line":"This makes the router created on the first node to be not in the HA mode."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Side-effects of this behavior include:"},{"line_number":13,"context_line":"* Skewed up load on different network nodes due to lack of router rescheduling."},{"line_number":14,"context_line":"* If the active node, where the gateway chassis for a router is scheduled"},{"line_number":15,"context_line":"goes down, then because of lack of HA the North-South traffic from that"},{"line_number":16,"context_line":"router will be hampered."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Overview of Proposed Approach"},{"line_number":19,"context_line":"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_c7c35a88","line":16,"range":{"start_line":12,"start_character":0,"end_line":16,"end_character":24},"in_reply_to":"dfbec78f_21c3c7ef","updated":"2019-05-15 07:57:37.000000000","message":"Done","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"ac271394182f6ace017fba646174bb3dac06cf2a","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"* Identify the number of chassis in which each router has been scheduled"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"*MAX_GW_CHASSIS* is defined in _`[0]`"},{"line_number":32,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_c2043f7e","line":29,"updated":"2019-05-06 08:49:55.000000000","message":"Please note that a chassis could be scheduled, but at the same time:\n\n* Could not exist anymore (since the reference is just a string)\n* Could be down (I wonder if we could use the agent status API here)","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"057b3a22ea32f6de2aacc21ed666c9ee3808210f","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"* Identify the number of chassis in which each router has been scheduled"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"*MAX_GW_CHASSIS* is defined in _`[0]`"},{"line_number":32,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_736d2697","line":29,"in_reply_to":"dfbec78f_c2043f7e","updated":"2019-05-06 13:45:08.000000000","message":"That is being checked by [1], so I think it should work?\n[1]: https://review.opendev.org/#/c/591461/21/networking_ovn/ovsdb/impl_idl_ovn.py@451","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":34,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":35,"context_line":"Downtime can occur during rescheduling, however, it eventually depends on the"},{"line_number":36,"context_line":"scenario being handled. Rescheduling a router ultimately depends on 2"},{"line_number":37,"context_line":"decisions:"},{"line_number":38,"context_line":"* If the current chassis has the highest priority"},{"line_number":39,"context_line":"* If the current chassis is the master"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":42,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_014c839c","line":39,"range":{"start_line":37,"start_character":0,"end_line":39,"end_character":38},"updated":"2019-05-07 13:13:46.000000000","message":"Maybe it\u0027s a silly question but, what\u0027s the difference between having the highest priority and being the master ?\n\nIs it possible that a Chassis with a lower priority is considered master ?\n\n(Also, syntax, the bullet points are not being rendered correctly)","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"ac271394182f6ace017fba646174bb3dac06cf2a","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  C1 to C3 and C2 to C3. Rescheduling from C1 to C2 and vice-versa should not"},{"line_number":58,"context_line":"  be allowed."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_82d727c0","line":61,"range":{"start_line":60,"start_character":2,"end_line":61,"end_character":72},"updated":"2019-05-06 08:49:55.000000000","message":"In order to rebalance the router\u0027s chassis the``master``chassis for a router gateway port may be left untouched.","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  C1 to C3 and C2 to C3. Rescheduling from C1 to C2 and vice-versa should not"},{"line_number":58,"context_line":"  be allowed."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_a42744ca","line":61,"range":{"start_line":60,"start_character":2,"end_line":61,"end_character":72},"in_reply_to":"dfbec78f_82d727c0","updated":"2019-05-15 07:57:37.000000000","message":"Done","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"057b3a22ea32f6de2aacc21ed666c9ee3808210f","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  C1 to C3 and C2 to C3. Rescheduling from C1 to C2 and vice-versa should not"},{"line_number":58,"context_line":"  be allowed."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_936a1a7e","line":61,"range":{"start_line":60,"start_character":2,"end_line":61,"end_character":72},"in_reply_to":"dfbec78f_82d727c0","updated":"2019-05-06 13:45:08.000000000","message":"Ok, I would reword it like that","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"ac271394182f6ace017fba646174bb3dac06cf2a","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"},{"line_number":65,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_42e12f9a","line":65,"range":{"start_line":62,"start_character":34,"end_line":65,"end_character":65},"updated":"2019-05-06 08:49:55.000000000","message":"I still believe we should leave this kind of rebalancing decision to the admin, via a CLI tool (which could may be trigger it through API..)","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":23804,"name":"Daniel Alvarez","email":"dalvarez@redhat.com","username":"dalvarez"},"change_message_id":"9dd40812359f86b500d99986b05d356f4f4567f0","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"},{"line_number":65,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_b6406c37","line":65,"range":{"start_line":62,"start_character":34,"end_line":65,"end_character":65},"in_reply_to":"dfbec78f_42e12f9a","updated":"2019-05-06 14:30:03.000000000","message":"@Miguel, what do you think about: https://developer.openstack.org/api-ref/network/v2/index.html#l3-agent-scheduler\n\nWe have ovn-controllers listed as agents so it\u0027s technically possible to do it. networking-ovn can decide if a host is eligible to schedule a gateway port based on the bridge-mappings and cms-options.\n\nIt\u0027ll be important to document this properly but looks to me like a good option and low intrusive.","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"057b3a22ea32f6de2aacc21ed666c9ee3808210f","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"},{"line_number":65,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_1314eaf4","line":65,"range":{"start_line":62,"start_character":34,"end_line":65,"end_character":65},"in_reply_to":"dfbec78f_42e12f9a","updated":"2019-05-06 13:45:08.000000000","message":"Exposing this as a CLI via OpenstackClient is not impossible.\nWaiting to hear what would others have to say about it?","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"},{"line_number":65,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_91bc44dd","line":65,"range":{"start_line":62,"start_character":34,"end_line":65,"end_character":65},"in_reply_to":"dfbec78f_8bdc1275","updated":"2019-05-07 13:13:46.000000000","message":"As much as I would love things to happen automatically I can understand that having downtime as someone add new things to cloud (new gateways) is considered bad.\n\nThe idea of the CLI tool would be so that operators can run the rebalancing at their own time, avoiding downtime at busy hours right ?\n\nI can understand that.","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"},{"line_number":65,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_c42278b9","line":65,"range":{"start_line":62,"start_character":34,"end_line":65,"end_character":65},"in_reply_to":"dfbec78f_91bc44dd","updated":"2019-05-15 07:57:37.000000000","message":"Done","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"d341c7d4028d0c6c1e8f3e5233bb0b3f76204a53","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* In order to rebalance the router\u0027s chassis, the chassis having the highest"},{"line_number":61,"context_line":"  priority for a router\u0027s gateway can be skipped, which is the ``master``"},{"line_number":62,"context_line":"  chassis for the gateway router. However, for the scenario where all routers"},{"line_number":63,"context_line":"  are loaded in only one chassis which is available as gateway, the addition"},{"line_number":64,"context_line":"  of the second gateway chassis should *ideally* select some of the routers"},{"line_number":65,"context_line":"  which have to be moved to a higher priority in the new chassis."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_8bdc1275","line":65,"range":{"start_line":62,"start_character":34,"end_line":65,"end_character":65},"in_reply_to":"dfbec78f_b6406c37","updated":"2019-05-07 09:43:58.000000000","message":"It could be a nice idea, would give more visibiliy to admins on scheduling (we even had an RFE for that I believe), \n\nThe only issue with that is that scheduling is very slow (lots of API calls) but may be we could include an \"extra\" extension at some point to trigger rescheduling.\n\n@Lucas \u0026 Jlibosva, what do you guys think?","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":69,"context_line":"* Case #1:"},{"line_number":70,"context_line":"    - System has only one chassis C1 and all router gateway ports are scheduled"},{"line_number":71,"context_line":"      on it. We add a new chassis C2."},{"line_number":72,"context_line":"    - Behavior: In this case 25% of the routers which are hosted on C1 would"},{"line_number":73,"context_line":"      now have a new master C2 and would be rescheduled on C2, with their"},{"line_number":74,"context_line":"      priority for C1 being lowered. Note that we do not have the dataplane"},{"line_number":75,"context_line":"      information, which can be used in future scenarios to make the decision"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_918a0419","line":72,"range":{"start_line":72,"start_character":29,"end_line":72,"end_character":32},"updated":"2019-05-07 13:13:46.000000000","message":"Just wondering, why 25% and not 50% (which is more balanced). To minimize downtime ?","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":69,"context_line":"* Case #1:"},{"line_number":70,"context_line":"    - System has only one chassis C1 and all router gateway ports are scheduled"},{"line_number":71,"context_line":"      on it. We add a new chassis C2."},{"line_number":72,"context_line":"    - Behavior: In this case 25% of the routers which are hosted on C1 would"},{"line_number":73,"context_line":"      now have a new master C2 and would be rescheduled on C2, with their"},{"line_number":74,"context_line":"      priority for C1 being lowered. Note that we do not have the dataplane"},{"line_number":75,"context_line":"      information, which can be used in future scenarios to make the decision"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_241d9473","line":72,"range":{"start_line":72,"start_character":29,"end_line":72,"end_character":32},"in_reply_to":"dfbec78f_918a0419","updated":"2019-05-15 07:57:37.000000000","message":"Removed( added the logic to the Rebalancing code, since this is the scheduling part)","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."},{"line_number":84,"context_line":"    - Behavior: In this case, all routers would be rescheduled to C2. In this"},{"line_number":85,"context_line":"      scenario, since C1 has gone down and is not operating properly, priority"},{"line_number":86,"context_line":"      of the routers would be changed to C2. Once C1 is back up, rescheduling"},{"line_number":87,"context_line":"      can be done again."},{"line_number":88,"context_line":"* Case #4:"},{"line_number":89,"context_line":"    - System has 2 chassis C1 and C2 during installation. C3 is added to it."},{"line_number":90,"context_line":"    - Behavior: In this case, routers would not move their master chassis"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_11a374a0","line":87,"range":{"start_line":86,"start_character":45,"end_line":87,"end_character":24},"updated":"2019-05-07 13:13:46.000000000","message":"In this case, this will become Case #1 right ? So 25% of the routers in C2 will now move to C1.\n\nIs that correct or as soon as C1 comes back up again (assuming it had a high prio before) all routers that once where on C1 will go back there ?","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."},{"line_number":84,"context_line":"    - Behavior: In this case, all routers would be rescheduled to C2. In this"},{"line_number":85,"context_line":"      scenario, since C1 has gone down and is not operating properly, priority"},{"line_number":86,"context_line":"      of the routers would be changed to C2. Once C1 is back up, rescheduling"},{"line_number":87,"context_line":"      can be done again."},{"line_number":88,"context_line":"* Case #4:"},{"line_number":89,"context_line":"    - System has 2 chassis C1 and C2 during installation. C3 is added to it."},{"line_number":90,"context_line":"    - Behavior: In this case, routers would not move their master chassis"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_070bb223","line":87,"range":{"start_line":86,"start_character":45,"end_line":87,"end_character":24},"in_reply_to":"dfbec78f_11a374a0","updated":"2019-05-15 07:57:37.000000000","message":"Removed from the new doc","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":90,"context_line":"    - Behavior: In this case, routers would not move their master chassis"},{"line_number":91,"context_line":"      associations in the current patch. Chassis 3 would have a lower priority"},{"line_number":92,"context_line":"      than others. If C1 goes down and C2 becomes master, then as described in"},{"line_number":93,"context_line":"      Case #3, C2 would now have the highest priority. C3 and C1\u0027s priority"},{"line_number":94,"context_line":"      would depend on the type of scheduler chosen."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"Since the maximum chassis limit is 5, we cannot add more than 5 Gateway"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_d1dabc15","line":93,"range":{"start_line":93,"start_character":15,"end_line":93,"end_character":53},"updated":"2019-05-07 13:13:46.000000000","message":"So in this case, all routers will go to C2 and C3 will host no routers (or only routers that where scheduled after C3 became available). Is that correct ?\n\nOr we are also going to detect that we have only two gateways available now and it will again be a Case #1 where 25% of the routers in C2 (now the master) will be moved to C3 ?","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":90,"context_line":"    - Behavior: In this case, routers would not move their master chassis"},{"line_number":91,"context_line":"      associations in the current patch. Chassis 3 would have a lower priority"},{"line_number":92,"context_line":"      than others. If C1 goes down and C2 becomes master, then as described in"},{"line_number":93,"context_line":"      Case #3, C2 would now have the highest priority. C3 and C1\u0027s priority"},{"line_number":94,"context_line":"      would depend on the type of scheduler chosen."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"Since the maximum chassis limit is 5, we cannot add more than 5 Gateway"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_a7b18649","line":93,"range":{"start_line":93,"start_character":15,"end_line":93,"end_character":53},"in_reply_to":"dfbec78f_d1dabc15","updated":"2019-05-15 07:57:37.000000000","message":"Have updated the document, so the process may change.","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"a1b9d30c131589bc55095a681a742d83d1267e13","unresolved":false,"context_lines":[{"line_number":93,"context_line":"      Case #3, C2 would now have the highest priority. C3 and C1\u0027s priority"},{"line_number":94,"context_line":"      would depend on the type of scheduler chosen."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"Since the maximum chassis limit is 5, we cannot add more than 5 Gateway"},{"line_number":97,"context_line":"chassis. The following cases can be expanded to other similar scenarios( i.e.,"},{"line_number":98,"context_line":"starting with 3 chassis )."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Future Enhancements"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_313a3834","line":97,"range":{"start_line":96,"start_character":38,"end_line":97,"end_character":7},"updated":"2019-05-07 13:13:46.000000000","message":"Hmm this sounds like ovn/networking-ovn won\u0027t allow having more than 5 gateway chassis ? Not sure if that\u0027s true.\n\nOr does it mean that, a given router will be scheduled in no more than 5 gateway chassis ?","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":93,"context_line":"      Case #3, C2 would now have the highest priority. C3 and C1\u0027s priority"},{"line_number":94,"context_line":"      would depend on the type of scheduler chosen."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"Since the maximum chassis limit is 5, we cannot add more than 5 Gateway"},{"line_number":97,"context_line":"chassis. The following cases can be expanded to other similar scenarios( i.e.,"},{"line_number":98,"context_line":"starting with 3 chassis )."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Future Enhancements"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_a7c8a6a5","line":97,"range":{"start_line":96,"start_character":38,"end_line":97,"end_character":7},"in_reply_to":"dfbec78f_313a3834","updated":"2019-05-15 07:57:37.000000000","message":"Done","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"df04f29a49f82e90eb14749f9d432399eb53c639","unresolved":false,"context_lines":[{"line_number":111,"context_line":""},{"line_number":112,"context_line":"[0]: http://git.openstack.org/cgit/openstack/networking-ovn/tree/networking_ovn/l3/l3_ovn_scheduler.py?id\u003dd40470a51314fc0c60353c9882e0d2d44c9d2aa5#n31"},{"line_number":113,"context_line":"[1]: http://git.openstack.org/cgit/openstack/networking-ovn/tree/networking_ovn/l3/l3_ovn.py#n313"},{"line_number":114,"context_line":"[2]: https://bugs.launchpad.net/networking-ovn/+bug/1762694"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_711190ac","line":114,"updated":"2019-05-07 13:14:22.000000000","message":"[syntax]\n\nalso not being rendered correctly: http://logs.openstack.org/18/653718/4/check/openstack-tox-docs/56c8815/html/contributor/design/l3_ha_rescheduling.html#references","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"af4235696a487e1b2f0070570ba2d5e98fa11eb2","unresolved":false,"context_lines":[{"line_number":111,"context_line":""},{"line_number":112,"context_line":"[0]: http://git.openstack.org/cgit/openstack/networking-ovn/tree/networking_ovn/l3/l3_ovn_scheduler.py?id\u003dd40470a51314fc0c60353c9882e0d2d44c9d2aa5#n31"},{"line_number":113,"context_line":"[1]: http://git.openstack.org/cgit/openstack/networking-ovn/tree/networking_ovn/l3/l3_ovn.py#n313"},{"line_number":114,"context_line":"[2]: https://bugs.launchpad.net/networking-ovn/+bug/1762694"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dfbec78f_e7ca1e9f","line":114,"in_reply_to":"dfbec78f_711190ac","updated":"2019-05-15 07:57:37.000000000","message":"Done","commit_id":"cd38e823a6d200c6e54218503e995d6d766e5189"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3fa3d0e5620cf806ccd681b93c2210e7a94a4b74","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    - System has 2 chassis C1 and C2 during installation."},{"line_number":76,"context_line":"    - Behavior: Rescheduling wont take place in this case. The current behavior"},{"line_number":77,"context_line":"      should ideally continue. However, if the Chance scheduler is chosen and"},{"line_number":78,"context_line":"      it does not balance the routers properly, then balancing would be done."},{"line_number":79,"context_line":"* Case #3:"},{"line_number":80,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."},{"line_number":81,"context_line":"    - Behavior: In this case, all routers would be rescheduled to C2."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7faddb67_c38d0c32","line":78,"range":{"start_line":78,"start_character":48,"end_line":78,"end_character":77},"updated":"2019-07-09 09:26:39.000000000","message":"If there is no add/delete chassis gateway event, then the rescheduling will not occur?","commit_id":"accc32dde50f605e49e6f8c7b16c20436794810b"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"*MAX_GW_CHASSIS* is defined in `[0]`"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":35,"context_line":"southbound database table, would be the ones eligible for hosting the routers."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_6372bcaf","line":32,"range":{"start_line":32,"start_character":31,"end_line":32,"end_character":36},"updated":"2019-07-15 12:34:16.000000000","message":"Link is not working: http://logs.openstack.org/18/653718/7/check/openstack-tox-docs/8e39f76/html/contributor/design/l3_ha_rescheduling.html#overview-of-proposed-approach","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"  - Consider router for scheduling if no. of chassis \u003c *MAX_GW_CHASSIS*"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"*MAX_GW_CHASSIS* is defined in `[0]`"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":35,"context_line":"southbound database table, would be the ones eligible for hosting the routers."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_6ebaa36e","line":32,"range":{"start_line":32,"start_character":31,"end_line":32,"end_character":36},"in_reply_to":"7faddb67_6372bcaf","updated":"2019-07-15 14:37:43.000000000","message":"Done","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":35,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":36,"context_line":"Downtime can occur during rescheduling, however, it eventually depends on the"},{"line_number":37,"context_line":"scenario being handled. Rescheduling a router ultimately depends on 2"},{"line_number":38,"context_line":"decisions:"},{"line_number":39,"context_line":"* If the current chassis has the highest priority"},{"line_number":40,"context_line":"* If the current chassis is the master"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_03de686c","line":37,"range":{"start_line":36,"start_character":0,"end_line":37,"end_character":23},"updated":"2019-07-15 12:34:16.000000000","message":"Aren\u0027t we avoiding downtime by keeping the master nodes intact when rescheduling ?\n\nAnd for balancing we are creating a separated tool [0] which administrators can use on their own time because it\u0027s likely to cause some downtime.\n\n[0]: https://review.opendev.org/#/c/663046/","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Chassis which have the flag ``enable-chassis-as-gw`` enabled in their OVN"},{"line_number":35,"context_line":"southbound database table, would be the ones eligible for hosting the routers."},{"line_number":36,"context_line":"Downtime can occur during rescheduling, however, it eventually depends on the"},{"line_number":37,"context_line":"scenario being handled. Rescheduling a router ultimately depends on 2"},{"line_number":38,"context_line":"decisions:"},{"line_number":39,"context_line":"* If the current chassis has the highest priority"},{"line_number":40,"context_line":"* If the current chassis is the master"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_4eb5677d","line":37,"range":{"start_line":36,"start_character":0,"end_line":37,"end_character":23},"in_reply_to":"7faddb67_03de686c","updated":"2019-07-15 14:37:43.000000000","message":"Yep we\u0027re avoiding downtimes during rescheduling. Dropping this sentence.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":36,"context_line":"Downtime can occur during rescheduling, however, it eventually depends on the"},{"line_number":37,"context_line":"scenario being handled. Rescheduling a router ultimately depends on 2"},{"line_number":38,"context_line":"decisions:"},{"line_number":39,"context_line":"* If the current chassis has the highest priority"},{"line_number":40,"context_line":"* If the current chassis is the master"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":43,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_c3e37033","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":38},"updated":"2019-07-15 12:34:16.000000000","message":"Q: Aren\u0027t those the same ? The highest priority means its the active one ?","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":36,"context_line":"Downtime can occur during rescheduling, however, it eventually depends on the"},{"line_number":37,"context_line":"scenario being handled. Rescheduling a router ultimately depends on 2"},{"line_number":38,"context_line":"decisions:"},{"line_number":39,"context_line":"* If the current chassis has the highest priority"},{"line_number":40,"context_line":"* If the current chassis is the master"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":43,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_497b217a","line":40,"range":{"start_line":39,"start_character":0,"end_line":40,"end_character":38},"in_reply_to":"7faddb67_c3e37033","updated":"2019-07-15 14:37:43.000000000","message":"Yep, its the same. I changed this sentence.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":42,"context_line":"Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":43,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Rescheduling will consider the leastloaded/random scheduled chassis to identify"},{"line_number":46,"context_line":"where the router\u0027s gateways can be rescheduled. This identification is an event"},{"line_number":47,"context_line":"triggered operation which will occur whenever a chassis is added/removed."},{"line_number":48,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` `[1]` will"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_a33d1490","line":45,"range":{"start_line":45,"start_character":31,"end_line":45,"end_character":49},"updated":"2019-07-15 12:34:16.000000000","message":"Suggestion, maybe phrase it as:\n\nThere are two approaches for rescheduling supported by networking-ovn right now:\n\n* Least loaded: ...\n* Random: ...\n\nI think it would make things clear. When I read leastloadeded/random sounds like it\u0027s one approach that uses both things idk.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":42,"context_line":"Each chassis is given a specific priority for the router\u0027s gateway,"},{"line_number":43,"context_line":"and priority increases with increasing value ( i.e. 1 \u003c 2 \u003c 3 ...)."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Rescheduling will consider the leastloaded/random scheduled chassis to identify"},{"line_number":46,"context_line":"where the router\u0027s gateways can be rescheduled. This identification is an event"},{"line_number":47,"context_line":"triggered operation which will occur whenever a chassis is added/removed."},{"line_number":48,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` `[1]` will"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_29110553","line":45,"range":{"start_line":45,"start_character":31,"end_line":45,"end_character":49},"in_reply_to":"7faddb67_a33d1490","updated":"2019-07-15 14:37:43.000000000","message":"Done","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":45,"context_line":"Rescheduling will consider the leastloaded/random scheduled chassis to identify"},{"line_number":46,"context_line":"where the router\u0027s gateways can be rescheduled. This identification is an event"},{"line_number":47,"context_line":"triggered operation which will occur whenever a chassis is added/removed."},{"line_number":48,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` `[1]` will"},{"line_number":49,"context_line":"be called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":50,"context_line":"excluded in this operation because association on the OVN DB is made through"},{"line_number":51,"context_line":"the gateway ports. More information can be found from the ``gateway_chassis``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_23492430","line":48,"range":{"start_line":48,"start_character":66,"end_line":48,"end_character":71},"updated":"2019-07-15 12:34:16.000000000","message":"ditto: Link\u0027s not working","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":45,"context_line":"Rescheduling will consider the leastloaded/random scheduled chassis to identify"},{"line_number":46,"context_line":"where the router\u0027s gateways can be rescheduled. This identification is an event"},{"line_number":47,"context_line":"triggered operation which will occur whenever a chassis is added/removed."},{"line_number":48,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` `[1]` will"},{"line_number":49,"context_line":"be called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":50,"context_line":"excluded in this operation because association on the OVN DB is made through"},{"line_number":51,"context_line":"the gateway ports. More information can be found from the ``gateway_chassis``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_c919517a","line":48,"range":{"start_line":48,"start_character":66,"end_line":48,"end_character":71},"in_reply_to":"7faddb67_23492430","updated":"2019-07-15 14:37:43.000000000","message":"Done","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":48,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` `[1]` will"},{"line_number":49,"context_line":"be called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":50,"context_line":"excluded in this operation because association on the OVN DB is made through"},{"line_number":51,"context_line":"the gateway ports. More information can be found from the ``gateway_chassis``"},{"line_number":52,"context_line":"table in OVN NorthBound DB."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"Few points to consider for the design:"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_a36674c0","line":52,"range":{"start_line":51,"start_character":19,"end_line":52,"end_character":27},"updated":"2019-07-15 12:34:16.000000000","message":"Perhaps a link for the RFC here ?","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":48,"context_line":"When a chassis is added/removed, ``schedule_unhosted_gateways()`` `[1]` will"},{"line_number":49,"context_line":"be called to host the unhosted gateways. Routers without gateway ports are"},{"line_number":50,"context_line":"excluded in this operation because association on the OVN DB is made through"},{"line_number":51,"context_line":"the gateway ports. More information can be found from the ``gateway_chassis``"},{"line_number":52,"context_line":"table in OVN NorthBound DB."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"Few points to consider for the design:"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_69805d47","line":52,"range":{"start_line":51,"start_character":19,"end_line":52,"end_character":27},"in_reply_to":"7faddb67_a36674c0","updated":"2019-07-15 14:37:43.000000000","message":"Done.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":59,"context_line":"  be allowed."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"* In order to reschedule the router\u0027s chassis, the ``master`` chassis for a"},{"line_number":62,"context_line":"  gateway router may be left untouched. However, for the scenario where all"},{"line_number":63,"context_line":"  routers are shceduled in only one chassis which is available as gateway,"},{"line_number":64,"context_line":"  the addition of the second gateway chassis would schedule the router"},{"line_number":65,"context_line":"  gateway ports at a lower priority on the new chassis."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_2372847c","line":62,"range":{"start_line":62,"start_character":17,"end_line":62,"end_character":28},"updated":"2019-07-15 12:34:16.000000000","message":"may be or will be left ?\n\nI think \"will be left\" is the correct here right.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":59,"context_line":"  be allowed."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"* In order to reschedule the router\u0027s chassis, the ``master`` chassis for a"},{"line_number":62,"context_line":"  gateway router may be left untouched. However, for the scenario where all"},{"line_number":63,"context_line":"  routers are shceduled in only one chassis which is available as gateway,"},{"line_number":64,"context_line":"  the addition of the second gateway chassis would schedule the router"},{"line_number":65,"context_line":"  gateway ports at a lower priority on the new chassis."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_c918711f","line":62,"range":{"start_line":62,"start_character":17,"end_line":62,"end_character":28},"in_reply_to":"7faddb67_2372847c","updated":"2019-07-15 14:37:43.000000000","message":"Done","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":73,"context_line":"      with priority 1."},{"line_number":74,"context_line":"* Case #2:"},{"line_number":75,"context_line":"    - System has 2 chassis C1 and C2 during installation."},{"line_number":76,"context_line":"    - Behavior: Rescheduling wont take place in this case. The current behavior"},{"line_number":77,"context_line":"      should ideally continue. However, if the Chance scheduler is chosen and"},{"line_number":78,"context_line":"      it does not balance the routers properly, then balancing would be done."},{"line_number":79,"context_line":"* Case #3:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_63115c04","line":76,"range":{"start_line":76,"start_character":29,"end_line":76,"end_character":33},"updated":"2019-07-15 12:34:16.000000000","message":"nit: won\u0027t","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":74,"context_line":"* Case #2:"},{"line_number":75,"context_line":"    - System has 2 chassis C1 and C2 during installation."},{"line_number":76,"context_line":"    - Behavior: Rescheduling wont take place in this case. The current behavior"},{"line_number":77,"context_line":"      should ideally continue. However, if the Chance scheduler is chosen and"},{"line_number":78,"context_line":"      it does not balance the routers properly, then balancing would be done."},{"line_number":79,"context_line":"* Case #3:"},{"line_number":80,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_e3fc6cb6","line":77,"range":{"start_line":77,"start_character":47,"end_line":77,"end_character":53},"updated":"2019-07-15 12:34:16.000000000","message":"Let\u0027s call it random like we did in the rest of the text, otherwise it\u0027s a bit confusing and less consistent.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":74,"context_line":"* Case #2:"},{"line_number":75,"context_line":"    - System has 2 chassis C1 and C2 during installation."},{"line_number":76,"context_line":"    - Behavior: Rescheduling wont take place in this case. The current behavior"},{"line_number":77,"context_line":"      should ideally continue. However, if the Chance scheduler is chosen and"},{"line_number":78,"context_line":"      it does not balance the routers properly, then balancing would be done."},{"line_number":79,"context_line":"* Case #3:"},{"line_number":80,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_69adbd99","line":77,"range":{"start_line":77,"start_character":47,"end_line":77,"end_character":53},"in_reply_to":"7faddb67_e3fc6cb6","updated":"2019-07-15 14:37:43.000000000","message":"done","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    - System has 2 chassis C1 and C2 during installation."},{"line_number":76,"context_line":"    - Behavior: Rescheduling wont take place in this case. The current behavior"},{"line_number":77,"context_line":"      should ideally continue. However, if the Chance scheduler is chosen and"},{"line_number":78,"context_line":"      it does not balance the routers properly, then balancing would be done."},{"line_number":79,"context_line":"* Case #3:"},{"line_number":80,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."},{"line_number":81,"context_line":"    - Behavior: In this case, all routers would be rescheduled to C2."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_4325405b","line":78,"range":{"start_line":78,"start_character":48,"end_line":78,"end_character":76},"updated":"2019-07-15 12:34:16.000000000","message":"Ditto: This is not true anymore right ? The separated tool would do the rebalancing, not this spec.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    - System has 2 chassis C1 and C2 during installation."},{"line_number":76,"context_line":"    - Behavior: Rescheduling wont take place in this case. The current behavior"},{"line_number":77,"context_line":"      should ideally continue. However, if the Chance scheduler is chosen and"},{"line_number":78,"context_line":"      it does not balance the routers properly, then balancing would be done."},{"line_number":79,"context_line":"* Case #3:"},{"line_number":80,"context_line":"    - System has 2 chassis C1 and C2 during installation. C1 goes down."},{"line_number":81,"context_line":"    - Behavior: In this case, all routers would be rescheduled to C2."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_89bd99d9","line":78,"range":{"start_line":78,"start_character":48,"end_line":78,"end_character":76},"in_reply_to":"7faddb67_4325405b","updated":"2019-07-15 14:37:43.000000000","message":"Yes, the whole CASE #2 is not needed due recheduling occurs only on event. In this case there is no event so I\u0027ll drop this from spec...","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    - System has 2 chassis C1 and C2 during installation. C3 is added to it."},{"line_number":86,"context_line":"    - Behavior: In this case, routers would not move their master chassis"},{"line_number":87,"context_line":"      associations in the current patch. So routers which have their master"},{"line_number":88,"context_line":"      on C1, would remain there, and same for routers on C2. However, for"},{"line_number":89,"context_line":"      Priority 1 and Priority 2, routers would be scheduled on the chassis"},{"line_number":90,"context_line":"      C1, C2 and C3 depending on the type of scheduler(Chance/LeastLoaded)."},{"line_number":91,"context_line":"      If C1 goes down, then routers which have C2 as master would not have"},{"line_number":92,"context_line":"      their traffic affected."},{"line_number":93,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_23204448","line":90,"range":{"start_line":88,"start_character":61,"end_line":90,"end_character":75},"updated":"2019-07-15 12:34:16.000000000","message":"You mean for new routers ?","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":91,"context_line":"      If C1 goes down, then routers which have C2 as master would not have"},{"line_number":92,"context_line":"      their traffic affected."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Since the maximum chassis limit is 5, router gateway ports cannot be scheduled"},{"line_number":95,"context_line":"on more than 5 chassis."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Rebalancing is the second part of the design and it assigning a new master to"},{"line_number":98,"context_line":"already scheduled router gateway ports. Downtime is expected in this"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_a3d99457","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":23},"updated":"2019-07-15 12:34:16.000000000","message":"Duplicated with L30","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":101,"context_line":"The master chassis gateway could be moved only to other, previously scheduled"},{"line_number":102,"context_line":"gateway. Rebalancing of chassis takes occur only if number of scheduled master"},{"line_number":103,"context_line":"chassis ports per each provider network hosted by given chassis is higher than"},{"line_number":104,"context_line":"average number of hosted master gateway ports per chassis per provider network."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"This dependency is determined by formula:"},{"line_number":107,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_e3ea2cd6","line":104,"updated":"2019-07-15 12:34:16.000000000","message":"Maybe rebalancing requires a separated section for itself no ? Or even it\u0027s own spec to make it less confusing.\n\nThis is the first time the spec talks about the script for rebalancing but it has mentioned downtime a couple of times before.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":101,"context_line":"The master chassis gateway could be moved only to other, previously scheduled"},{"line_number":102,"context_line":"gateway. Rebalancing of chassis takes occur only if number of scheduled master"},{"line_number":103,"context_line":"chassis ports per each provider network hosted by given chassis is higher than"},{"line_number":104,"context_line":"average number of hosted master gateway ports per chassis per provider network."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"This dependency is determined by formula:"},{"line_number":107,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_09c76998","line":104,"in_reply_to":"7faddb67_e3ea2cd6","updated":"2019-07-15 14:37:43.000000000","message":"Done","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":150,"context_line":"Future Enhancements"},{"line_number":151,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":152,"context_line":"* Currently, the following design does not consider additional rebalance when"},{"line_number":153,"context_line":"  a chassis has gone down( i.e. in case 1, rebalancing routers from Chassis-1"},{"line_number":154,"context_line":"  to other chassis). It can be considered in the future releases."},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"References"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_63b87ce4","line":153,"range":{"start_line":153,"start_character":27,"end_line":153,"end_character":41},"updated":"2019-07-15 12:34:16.000000000","message":"Which case 1 ? The one above doesn\u0027t talk about chassis going down.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"3effef6e3f868d8d8f2b49fb0692d2e41e3f96e9","unresolved":false,"context_lines":[{"line_number":150,"context_line":"Future Enhancements"},{"line_number":151,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":152,"context_line":"* Currently, the following design does not consider additional rebalance when"},{"line_number":153,"context_line":"  a chassis has gone down( i.e. in case 1, rebalancing routers from Chassis-1"},{"line_number":154,"context_line":"  to other chassis). It can be considered in the future releases."},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"References"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_69437d14","line":153,"range":{"start_line":153,"start_character":27,"end_line":153,"end_character":41},"in_reply_to":"7faddb67_63b87ce4","updated":"2019-07-15 14:37:43.000000000","message":"This is already covered. I\u0027ll drop this section.","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"638007db80071fd99a0b355e19e2a2f7c9f38dba","unresolved":false,"context_lines":[{"line_number":151,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":152,"context_line":"* Currently, the following design does not consider additional rebalance when"},{"line_number":153,"context_line":"  a chassis has gone down( i.e. in case 1, rebalancing routers from Chassis-1"},{"line_number":154,"context_line":"  to other chassis). It can be considered in the future releases."},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"References"},{"line_number":157,"context_line":"~~~~~~~~~~"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_03d18823","line":154,"updated":"2019-07-15 12:34:16.000000000","message":"I think the spec would already cover this enhancement if we decide to keep the rebalancing tool as part of it (which I think we shouldn\u0027t to simplify things).","commit_id":"c7f52b38ed02f497620d9096329e7edab01c2821"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"5cd7651e5d5747a118694b95b2bf94c96fc252b7","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    - System has 2 chassis C1 and C2 during installation. C3 is added to it."},{"line_number":92,"context_line":"    - Behavior: In this case, routers would not move their master chassis"},{"line_number":93,"context_line":"      associations. So routers which have their master on C1, would remain"},{"line_number":94,"context_line":"      there, and same for routers on C2. However, lover proritized candidates"},{"line_number":95,"context_line":"      of existing gateways would be scheduled on the chassis C3, depending"},{"line_number":96,"context_line":"      on the type of used scheduler (Random or LeastLoaded)."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_9d30e9ea","line":94,"range":{"start_line":94,"start_character":50,"end_line":94,"end_character":55},"updated":"2019-10-21 19:54:57.000000000","message":"I don\u0027t think lovers should be prioritizing candidates. :D","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"2187e4f2a07e1467794888f0ef049336c5aa92b5","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    - System has 2 chassis C1 and C2 during installation. C3 is added to it."},{"line_number":92,"context_line":"    - Behavior: In this case, routers would not move their master chassis"},{"line_number":93,"context_line":"      associations. So routers which have their master on C1, would remain"},{"line_number":94,"context_line":"      there, and same for routers on C2. However, lover proritized candidates"},{"line_number":95,"context_line":"      of existing gateways would be scheduled on the chassis C3, depending"},{"line_number":96,"context_line":"      on the type of used scheduler (Random or LeastLoaded)."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_e16db3cc","line":94,"range":{"start_line":94,"start_character":50,"end_line":94,"end_character":55},"in_reply_to":"3fa7e38b_9d30e9ea","updated":"2019-10-22 07:46:11.000000000","message":"lol :D","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"5cd7651e5d5747a118694b95b2bf94c96fc252b7","unresolved":false,"context_lines":[{"line_number":104,"context_line":"operation. Rebalancing of routers can be achieved using external cli script."},{"line_number":105,"context_line":"Similar approach has been implemeneted for DHCP rescheduling `[4]`_."},{"line_number":106,"context_line":"The master chassis gateway could be moved only to other, previously scheduled"},{"line_number":107,"context_line":"gateway. Rebalancing of chassis takes occur only if number of scheduled master"},{"line_number":108,"context_line":"chassis ports per each provider network hosted by given chassis is higher than"},{"line_number":109,"context_line":"average number of hosted master gateway ports per chassis per provider network."},{"line_number":110,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_9d5ea910","line":107,"range":{"start_line":107,"start_character":32,"end_line":107,"end_character":43},"updated":"2019-10-21 19:54:57.000000000","message":"Rebalancing of a chassis occurs only if the number of scheduled master...","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"2187e4f2a07e1467794888f0ef049336c5aa92b5","unresolved":false,"context_lines":[{"line_number":104,"context_line":"operation. Rebalancing of routers can be achieved using external cli script."},{"line_number":105,"context_line":"Similar approach has been implemeneted for DHCP rescheduling `[4]`_."},{"line_number":106,"context_line":"The master chassis gateway could be moved only to other, previously scheduled"},{"line_number":107,"context_line":"gateway. Rebalancing of chassis takes occur only if number of scheduled master"},{"line_number":108,"context_line":"chassis ports per each provider network hosted by given chassis is higher than"},{"line_number":109,"context_line":"average number of hosted master gateway ports per chassis per provider network."},{"line_number":110,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_e1e4d3e2","line":107,"range":{"start_line":107,"start_character":32,"end_line":107,"end_character":43},"in_reply_to":"3fa7e38b_9d5ea910","updated":"2019-10-22 07:46:11.000000000","message":"Done","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"5cd7651e5d5747a118694b95b2bf94c96fc252b7","unresolved":false,"context_lines":[{"line_number":120,"context_line":"    - num_chassis_with_provider_net - number of chassis that has connectivity"},{"line_number":121,"context_line":"      to given provider network."},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"The rebalancing takes occur only if:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"num_gw_by_provider_net_by_chassis \u003e avg_gw_per_chassis"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_fd579dc9","line":123,"range":{"start_line":123,"start_character":16,"end_line":123,"end_character":27},"updated":"2019-10-21 19:54:57.000000000","message":"occurs","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"2187e4f2a07e1467794888f0ef049336c5aa92b5","unresolved":false,"context_lines":[{"line_number":120,"context_line":"    - num_chassis_with_provider_net - number of chassis that has connectivity"},{"line_number":121,"context_line":"      to given provider network."},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"The rebalancing takes occur only if:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"num_gw_by_provider_net_by_chassis \u003e avg_gw_per_chassis"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_01ea4fab","line":123,"range":{"start_line":123,"start_character":16,"end_line":123,"end_character":27},"in_reply_to":"3fa7e38b_fd579dc9","updated":"2019-10-22 07:46:11.000000000","message":"Done","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"5cd7651e5d5747a118694b95b2bf94c96fc252b7","unresolved":false,"context_lines":[{"line_number":134,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"* Case #1:"},{"line_number":137,"context_line":"    - System has only two chassiss C1 and C2. Chassis host the same number"},{"line_number":138,"context_line":"      of gateways."},{"line_number":139,"context_line":"    - Behavior: Rebalancing doesn\u0027t occur."},{"line_number":140,"context_line":"* Case #2:"}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_dd8f412c","line":137,"range":{"start_line":137,"start_character":26,"end_line":137,"end_character":34},"updated":"2019-10-21 19:54:57.000000000","message":"plural of chassis (chass-ee) is chassis (chass-eez), because that totally makes sense.","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"2187e4f2a07e1467794888f0ef049336c5aa92b5","unresolved":false,"context_lines":[{"line_number":134,"context_line":"Following scenarios are possible which have been considered in the design:"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"* Case #1:"},{"line_number":137,"context_line":"    - System has only two chassiss C1 and C2. Chassis host the same number"},{"line_number":138,"context_line":"      of gateways."},{"line_number":139,"context_line":"    - Behavior: Rebalancing doesn\u0027t occur."},{"line_number":140,"context_line":"* Case #2:"}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_21042b7e","line":137,"range":{"start_line":137,"start_character":26,"end_line":137,"end_character":34},"in_reply_to":"3fa7e38b_dd8f412c","updated":"2019-10-22 07:46:11.000000000","message":"Done","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":5756,"name":"Terry Wilson","email":"twilson@redhat.com","username":"otherwiseguy"},"change_message_id":"5cd7651e5d5747a118694b95b2bf94c96fc252b7","unresolved":false,"context_lines":[{"line_number":138,"context_line":"      of gateways."},{"line_number":139,"context_line":"    - Behavior: Rebalancing doesn\u0027t occur."},{"line_number":140,"context_line":"* Case #2:"},{"line_number":141,"context_line":"    - System has only two chassiss C1 and C2. C1 hosts 3 gateways."},{"line_number":142,"context_line":"      C2 hosts 2 gateways."},{"line_number":143,"context_line":"    - Behavior: Rebalancing doesn\u0027t occur to not continuously move gateways"},{"line_number":144,"context_line":"      between chassis in loop."}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_9d99c97a","line":141,"range":{"start_line":141,"start_character":26,"end_line":141,"end_character":34},"updated":"2019-10-21 19:54:57.000000000","message":"same","commit_id":"7be596a4a039cd454154188eacff3327223a046f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"2187e4f2a07e1467794888f0ef049336c5aa92b5","unresolved":false,"context_lines":[{"line_number":138,"context_line":"      of gateways."},{"line_number":139,"context_line":"    - Behavior: Rebalancing doesn\u0027t occur."},{"line_number":140,"context_line":"* Case #2:"},{"line_number":141,"context_line":"    - System has only two chassiss C1 and C2. C1 hosts 3 gateways."},{"line_number":142,"context_line":"      C2 hosts 2 gateways."},{"line_number":143,"context_line":"    - Behavior: Rebalancing doesn\u0027t occur to not continuously move gateways"},{"line_number":144,"context_line":"      between chassis in loop."}],"source_content_type":"text/x-rst","patch_set":8,"id":"3fa7e38b_41092793","line":141,"range":{"start_line":141,"start_character":26,"end_line":141,"end_character":34},"in_reply_to":"3fa7e38b_9d99c97a","updated":"2019-10-22 07:46:11.000000000","message":"Done","commit_id":"7be596a4a039cd454154188eacff3327223a046f"}]}
