Philosophy:
- Never perform "failovers"
- No passive/unused hardware
- No SPOF for service problems
- All servers can be stopped at any time for maintenance
- Replication channel is also not a SPOF
- Independence from specific technologies/vendors
Master-Master active-passive replication -> Regular replication or semisync
with backup channel => Syncronous replication (maybe)
--------------------------------------- *> Client connection
| ------------------- |
| | | |
v v v v
master [RO]slave1 [RO]master [RO]slave1 (galera, GTID or
eqiad <=> eqiad codfw <=> codfw binlog servers) Application servers
|\ /| |\ /| ------------------
| \ / | semisync | \ / | | Mediawiki |
| X | replication | X | | * |
| / \ | | / \ | | * |
|/ \| |/ \| | v |
v v v v | Proxy |
slave2 slave3 ... slave2 slave3 ... <********************(syncronized <============== etcd configuration
eqiad eqiad codfw codfw | fleet-wide) |
------------------