)]}'
{"ansible_tools/playbooks/controllers-rolling-restart.yml":[{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"e7cbd03f1d15357400c377a6afc0780a2da1592e","unresolved":true,"context_lines":[{"line_number":39,"context_line":"      add_host:"},{"line_number":40,"context_line":"        name: \"{{ item }}\""},{"line_number":41,"context_line":"        groups: shared_infra_fixed"},{"line_number":42,"context_line":"      loop: \"{{ groups[\u0027keepalived_slaves\u0027] }}\" "},{"line_number":43,"context_line":"    - name: Add master at the end of the new group"},{"line_number":44,"context_line":"      add_host:"},{"line_number":45,"context_line":"        name: \"{{ item }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"e37cca30_2ca44c4e","line":42,"range":{"start_line":42,"start_character":47,"end_line":42,"end_character":48},"updated":"2021-09-01 14:17:57.000000000","message":"trailing whitespace","commit_id":"f12163dcab790b98867c49bb977f0a0f37d64945"},{"author":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"change_message_id":"ce767a8cedac694c294b1caec233575fe62a0bd0","unresolved":false,"context_lines":[{"line_number":39,"context_line":"      add_host:"},{"line_number":40,"context_line":"        name: \"{{ item }}\""},{"line_number":41,"context_line":"        groups: shared_infra_fixed"},{"line_number":42,"context_line":"      loop: \"{{ groups[\u0027keepalived_slaves\u0027] }}\" "},{"line_number":43,"context_line":"    - name: Add master at the end of the new group"},{"line_number":44,"context_line":"      add_host:"},{"line_number":45,"context_line":"        name: \"{{ item }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a662b925_5d4ebec3","line":42,"range":{"start_line":42,"start_character":47,"end_line":42,"end_character":48},"in_reply_to":"e37cca30_2ca44c4e","updated":"2021-09-01 15:01:11.000000000","message":"Done","commit_id":"f12163dcab790b98867c49bb977f0a0f37d64945"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"e7cbd03f1d15357400c377a6afc0780a2da1592e","unresolved":true,"context_lines":[{"line_number":67,"context_line":"        rabbitmq_running_nodes: \"{{ rabbitmq_cluster_status.stdout | from_json | json_query(\u0027running_nodes\u0027) | length }}\""},{"line_number":68,"context_line":"        rabbitmq_disk_nodes: \"{{ rabbitmq_cluster_status.stdout | from_json | json_query(\u0027disk_nodes\u0027) | length }}\""},{"line_number":69,"context_line":"      assert:"},{"line_number":70,"context_line":"        that: "},{"line_number":71,"context_line":"          - rabbitmq_running_nodes \u003d\u003d rabbitmq_disk_nodes"},{"line_number":72,"context_line":"        fail_msg: \"Not all RabbitMQ nodes are running ({{ rabbitmq_running_nodes }}/{{ rabbitmq_disk_nodes }})\""},{"line_number":73,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"479fdc50_bcf6fa71","line":70,"range":{"start_line":70,"start_character":13,"end_line":70,"end_character":14},"updated":"2021-09-01 14:17:57.000000000","message":"ditto","commit_id":"f12163dcab790b98867c49bb977f0a0f37d64945"},{"author":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"change_message_id":"ce767a8cedac694c294b1caec233575fe62a0bd0","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        rabbitmq_running_nodes: \"{{ rabbitmq_cluster_status.stdout | from_json | json_query(\u0027running_nodes\u0027) | length }}\""},{"line_number":68,"context_line":"        rabbitmq_disk_nodes: \"{{ rabbitmq_cluster_status.stdout | from_json | json_query(\u0027disk_nodes\u0027) | length }}\""},{"line_number":69,"context_line":"      assert:"},{"line_number":70,"context_line":"        that: "},{"line_number":71,"context_line":"          - rabbitmq_running_nodes \u003d\u003d rabbitmq_disk_nodes"},{"line_number":72,"context_line":"        fail_msg: \"Not all RabbitMQ nodes are running ({{ rabbitmq_running_nodes }}/{{ rabbitmq_disk_nodes }})\""},{"line_number":73,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"969b05c7_7ef56b11","line":70,"range":{"start_line":70,"start_character":13,"end_line":70,"end_character":14},"in_reply_to":"479fdc50_bcf6fa71","updated":"2021-09-01 15:01:11.000000000","message":"Done","commit_id":"f12163dcab790b98867c49bb977f0a0f37d64945"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"1ad953efd86954ee4d8472beae447a63860954c8","unresolved":true,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"- name: Put controllers into the proper groups based on their keepalived state(master/slave) "},{"line_number":17,"context_line":"  hosts: shared-infra_hosts"},{"line_number":18,"context_line":"  serial: 1"},{"line_number":19,"context_line":"  gather_facts: false"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"d8017ded_bbabdaee","line":16,"range":{"start_line":16,"start_character":92,"end_line":16,"end_character":93},"updated":"2021-09-01 15:01:49.000000000","message":"sorry, here one more","commit_id":"4fd5200a17133587ad5a22c13807d330f61f413b"},{"author":{"_account_id":32666,"name":"Damian Dąbrowski","email":"damian@dabrowski.cloud","username":"ddabrowski"},"change_message_id":"098ff5bb88da3949e145b1906544725348dd71d0","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"- name: Put controllers into the proper groups based on their keepalived state(master/slave) "},{"line_number":17,"context_line":"  hosts: shared-infra_hosts"},{"line_number":18,"context_line":"  serial: 1"},{"line_number":19,"context_line":"  gather_facts: false"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"acbade20_3f10bb9a","line":16,"range":{"start_line":16,"start_character":92,"end_line":16,"end_character":93},"in_reply_to":"d8017ded_bbabdaee","updated":"2021-09-01 15:43:37.000000000","message":"fixed","commit_id":"4fd5200a17133587ad5a22c13807d330f61f413b"},{"author":{"_account_id":13095,"name":"Marc Gariépy","email":"gariepy.marc@gmail.com","username":"mgariepy"},"change_message_id":"07a40f4b183018d0eb4ecdff4e18da3211bf132d","unresolved":true,"context_lines":[{"line_number":32,"context_line":"        groups: keepalived_slaves"},{"line_number":33,"context_line":"      when: keepalived_state.stdout !\u003d \"MASTER\""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"- name: Create a proper host order in shared_infra_fixed group(slaves first, then master)"},{"line_number":36,"context_line":"  hosts: localhost"},{"line_number":37,"context_line":"  tasks:"},{"line_number":38,"context_line":"    - name: Add slaves at the beginning of the new group"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"81089eb1_f323cfa5","line":35,"updated":"2021-09-07 13:40:41.000000000","message":"would it be smart to manage the endpoint a bit?\n\nex: when you reboot the \"\"master keepalived\"\" server, the FIP will go to the next slave one, the mysql will be down. it will create a few traceback on differents services.\nwhen it comes back the FIP will move back to the original server, creating a few more trace there.. then the musql primary will come back. and i think it will create a few more there also.\n\nWhen i do reboot the server i usualy disable the primary mysql server on the second keepalived server and disable keepalived on the primary one so it doesn\u0027t start on boot.\n\nI also usually move the router active interface around so i don\u0027t have a huge downtime on tenant networks. it depends how many network runs but past 100-150 it can take quite a long time (10-15-30min) to recover all the networks keepalived off the routers.","commit_id":"6b2af8a52b6fb6ac38a2694c281f77e4fe158b25"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"d85c76c119083122ed67dc3d2953a606bda33a7d","unresolved":true,"context_lines":[{"line_number":32,"context_line":"        groups: keepalived_slaves"},{"line_number":33,"context_line":"      when: keepalived_state.stdout !\u003d \"MASTER\""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"- name: Create a proper host order in shared_infra_fixed group(slaves first, then master)"},{"line_number":36,"context_line":"  hosts: localhost"},{"line_number":37,"context_line":"  tasks:"},{"line_number":38,"context_line":"    - name: Add slaves at the beginning of the new group"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"912d75bc_46d14805","line":35,"in_reply_to":"81089eb1_f323cfa5","updated":"2022-01-13 13:06:48.000000000","message":"I guess network weren\u0027t taken into account here at all, as assumption about standalone net nodes were made. But these are really valid comments.","commit_id":"6b2af8a52b6fb6ac38a2694c281f77e4fe158b25"},{"author":{"_account_id":28619,"name":"Dmitriy Rabotyagov","email":"noonedeadpunk@gmail.com","username":"noonedeadpunk"},"change_message_id":"0a345a211b8110135eebba1b6e336e6541b90671","unresolved":true,"context_lines":[{"line_number":32,"context_line":"        groups: keepalived_slaves"},{"line_number":33,"context_line":"      when: keepalived_state.stdout !\u003d \"MASTER\""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"- name: Create a proper host order in shared_infra_fixed group(slaves first, then master)"},{"line_number":36,"context_line":"  hosts: localhost"},{"line_number":37,"context_line":"  tasks:"},{"line_number":38,"context_line":"    - name: Add slaves at the beginning of the new group"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"48fd190e_47ee987d","line":35,"in_reply_to":"912d75bc_46d14805","updated":"2022-03-11 13:49:23.000000000","message":"we also missing draining all backends for haproxy which would be awesome thing to do","commit_id":"6b2af8a52b6fb6ac38a2694c281f77e4fe158b25"}]}
