db1164 needs to be rebooted.
Let's promote db1195 to master
When: Thursday 25th at 08:30AM UTC
Impact: Read only for a few seconds on the services below:
Services running on m1:
- bacula
- cas (and cas staging)
- backups
- etherpad
- librenms
- pki
- rt
Switchover steps:
OLD MASTER: db1164
NEW MASTER: db1195
Check configuration differences between new and old master
- $ pt-config-diff h=db1164.eqiad.wmnet,F=/root/.my.cnf h=db1195.eqiad.wmnet,F=/root/.my.cnf
- Silence alerts on all hosts
- Topology changes: move everything under db1195
db-switchover --timeout=1 --only-slave-move db1164.eqiad.wmnet db1195.eqiad.wmnet
- Disable puppet @db1195 and puppet @db1164 puppet agent --disable "switchover to db1195"
- Merge gerrit: https://gerrit.wikimedia.org/r/c/operations/puppet/+/826222
- Run puppet on dbproxy1012 and dbproxy1014 and check the config
puppet agent -tv && cat /etc/haproxy/conf.d/db-master.cfg
- Start the failover
!log Failover m1 from db1164 to db1195 - T315864
root@cumin1001:~/wmfmariadbpy/wmfmariadbpy# db-switchover --skip-slave-move db1164 db1195
- Reload haproxies
dbproxy1012: systemctl reload haproxy && echo "show stat" | socat /run/haproxy/haproxy.sock stdio dbproxy1014: systemctl reload haproxy && echo "show stat" | socat /run/haproxy/haproxy.sock stdio
- kill connections on the old master (db1164)
pt-kill --print --kill --victims all --match-all F=/dev/null,S=/run/mysqld/mysqld.sock
- Restart puppet on old and new masters (for heartbeat):db1164 and db1195
puppet agent --enable && run-puppet-agent
- Check services affected (librenms, racktables, etherpad...)
- Clean orchestrator heartbeat to remove the old masters' one.
- Merge backup ticket: https://gerrit.wikimedia.org/r/c/operations/puppet/+/826223/ (example: https://gerrit.wikimedia.org/r/c/operations/puppet/+/755960/)
- Create floating ticket for db1164 to be moved to m2: T316187
- Update/resolve phabricator ticket about failover