ืึธืจื˜ืฉืขืกื˜ืขืจ ืื•ืŸ ื•ื•ื™ืคึผ ื•ื•ื™ ืึท ื”ืึท ืœื™ื™ื–ื•ื ื’ ืคึฟืึทืจ ืึท MySQL ืงื ื•ื™ืœ

ื‘ื™ื™ ืกื™ื˜ื™ืžืึธื‘ื™ืœ, ืžื™ืจ ื ื•ืฆืŸ ืึท MySQL ื“ืึทื˜ืึทื‘ื™ื™ืก ื•ื•ื™ ืื•ื ื“ื–ืขืจ ื”ื•ื™ืคึผื˜ ืคึผืขืจืกื™ืกื˜ืขื ื˜ ื“ืึทื˜ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ. ืžื™ืจ ื”ืึธื‘ืŸ ืขื˜ืœืขื›ืข ื“ืึทื˜ืึทื‘ื™ื™ืก ืงืœืึทืกื˜ืขืจื– ืคึฟืึทืจ ืคืึทืจืฉื™ื“ืŸ ื‘ืึทื“ื™ื ื•ื ื’ืก ืื•ืŸ ืฆื•ื•ืขืงืŸ.

ื“ื™ ืงืขืกื™ื™ื“ืขืจื“ื™ืง ืึทื•ื•ื™ื™ืœืึทื‘ื™ืœืึทื˜ื™ ืคื•ืŸ ื“ื™ ื‘ืขืœ ืื™ื– ืึท ืงืจื™ื˜ื™ืฉ ื’ืจืื“ืŸ ืคื•ืŸ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ื“ื™ ื’ืื ืฆืข ืกื™ืกื˜ืขื ืื•ืŸ ื–ื™ื™ึทืŸ ื™ื—ื™ื“ ื˜ื™ื™ืœืŸ. ืึธื˜ืึทืžืึทื˜ื™ืง ืงื ื•ื™ืœ ืึธืคึผื–ื•ืš ืื™ืŸ ื“ื™ ื’ืขืฉืขืขื ื™ืฉ ืคื•ืŸ ืึท ื‘ืขืœ ื“ื•ืจื›ืคืึทืœ ืจืึทื“ื•ืกืึทื– ื“ื™ ื™ื ืกื™ื“ืขื ื˜ ืขื ื˜ืคืขืจ ืฆื™ื™ื˜ ืื•ืŸ ืกื™ืกื˜ืขื ื“ืึทื•ื ื˜ื™ื™ื. ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ, ืื™ืš ื•ื•ืขืœ ืงื•ืงืŸ ืื™ืŸ ืึท ื”ื•ื™ืš ืึทื•ื•ื™ื™ืœืึทื‘ื™ืœื™ื˜ื™ (HA) ืคึผืœืึทืŸ ืคึฟืึทืจ ืึท MySQL ืงื ื•ื™ืœ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ MySQL ืึธืจืงืขืกื˜ืขืจ ืื•ืŸ ื•ื•ื™ืจื˜ื•ืึทืœ IP ืึทื“ืจืขืกืขืก (VIP).

ืึธืจื˜ืฉืขืกื˜ืขืจ ืื•ืŸ ื•ื•ื™ืคึผ ื•ื•ื™ ืึท ื”ืึท ืœื™ื™ื–ื•ื ื’ ืคึฟืึทืจ ืึท MySQL ืงื ื•ื™ืœ

ื”ืึท ืœื™ื™ื–ื•ื ื’ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื•ื•ื™ืคึผ

ืขืจืฉื˜ืขืจ, ืื™ืš ื•ื•ืขืœ ื–ืึธื’ืŸ ืื™ืจ ื‘ืขืงื™ืฆืขืจ ื•ื•ืึธืก ืื•ื ื“ื–ืขืจ ื“ืึทื˜ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืกื™ืกื˜ืขื ืื™ื–.

ืžื™ืจ ื ื•ืฆืŸ ืึท ืงืœืึทืกื™ืฉ ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ืกื›ืขืžืข ืžื™ื˜ ืื™ื™ืŸ ืฉืจื™ื™ึทื‘ืŸ-ืฆื•ื˜ืจื™ื˜ืœืขืš ื‘ืขืœ ืื•ืŸ ืงื™ื™ืคืœ ืœื™ื™ืขื ืขืŸ-ื‘ืœื•ื™ื– ืจืขืคึผืœืึทืงืึทื–. ื ืงื ื•ื™ืœ ืงืขื ืขืŸ ืึทื ื˜ื”ืึทืœื˜ืŸ ืึท ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ื‘ืขืœ - ืึท ื ืึธื“ืข ื•ื•ืึธืก ืื™ื– ื‘ื™ื™ื“ืข ืึท ืจืขืคึผืœื™ืงืข ืื•ืŸ ืึท ื‘ืขืœ ืคึฟืึทืจ ืื ื“ืขืจืข. ืงืœื™ื™ืึทื ืฅ ืึทืงืกืขืก ืจืขืคึผืœืึทืงืึทื– ื“ื•ืจืš HAProxy, ื•ื•ืึธืก ืึทืœืึทื•ื– ืืคื™ืœื• ืžืึทืกืข ืคืึทืจืฉืคึผืจื™ื™ื˜ื•ื ื’ ืื•ืŸ ื’ืจื™ื ื’ ืกืงื™ื™ืœื™ื ื’. ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ HAProxy ืื™ื– ืจืขื›ื˜ ืฆื• ื”ื™ืกื˜ืืจื™ืฉืข ืกื™ื‘ื•ืช, ืื•ืŸ ืžื™ืจ ื–ืขื ืขืŸ ื“ืขืจื•ื•ื™ื™ึทืœ ืื™ืŸ ื“ืขื ืคึผืจืึธืฆืขืก ืคื•ืŸ ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืฆื• ProxySQL.

ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื™ื– ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืื™ืŸ ื”ืึทืœื‘-ืกื™ื ื˜ืฉืจืึธื ืึธื•ืก ืžืึธื“ืข ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ GTID. ื“ืขื ืžื™ื˜ืœ ืึทื– ื‘ื™ื™ึท ืžื™ื ื“ืกื˜ืขืจ ืื™ื™ืŸ ืจืขืคึผืœื™ืงืข ืžื•ื–ืŸ ืงืœืึธืฅ ืึท ื˜ืจืึทื ืกืึทืงื˜ื™ืึธืŸ ืื™ื™ื“ืขืจ ืขืก ืื™ื– ื’ืขืจืขื›ื ื˜ ื•ื•ื™ ื’ืขืจืึธื˜ืŸ. ื“ืขืจ ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ืžืึธื“ืข ื’ื™ื˜ ืึทืŸ ืึธืคึผื˜ื™ืžืึทืœ ื•ื•ืึธื’ ืฆื•ื•ื™ืฉืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื•ืŸ ื“ืึทื˜ืŸ ื–ื™ื›ืขืจืงื™ื™ึทื˜ ืื™ืŸ ืคืึทืœ ืคื•ืŸ ืึท ื“ื•ืจื›ืคืึทืœ ืคื•ืŸ ืึท ื‘ืขืœ ื ืึธื“ืข. ื‘ื™ื™ืกื™ืงืœื™ ืึทืœืข ืขื ื“ืขืจื•ื ื’ืขืŸ ื–ืขื ืขืŸ ื˜ืจืึทื ืกืคืขืจื“ ืคื•ืŸ ื“ื™ ื‘ืขืœ ืฆื• ื“ื™ ืจืขืคึผืœืึทืงืึทื– ื ื™ืฆืŸ Row Based Replication (RBR), ืึธื‘ืขืจ ืขื˜ืœืขื›ืข ื ืึธื•ื“ื– ืงืขืŸ ื”ืึธื‘ืŸ mixed binlog format.

ื“ืขืจ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ืคึผื™ืจื™ืึทื“ื™ืงืœื™ ื“ื™ ืฉื˜ืึทื˜ ืคื•ืŸ ื“ื™ ืงื ื•ื™ืœ ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™, ืึทื ืึทืœื™ื–ืขืก ื“ื™ ื‘ืืงื•ืžืขืŸ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข, ืื•ืŸ ืื•ื™ื‘ ืขืก ื–ืขื ืขืŸ ืคึผืจืึธื‘ืœืขืžืก, ืขืก ืงืขื ืขืŸ ืึธื ื”ื™ื™ื‘ืŸ ืึทืŸ ืึธื˜ืึทืžืึทื˜ื™ืง ืึธืคึผื–ื•ืš ืคึผืจืึธืฆืขื“ื•ืจ. ื“ืขืจ ื“ืขื•ื•ืขืœืึธืคึผืขืจ ืื™ื– ืคืึทืจืึทื ื˜ื•ื•ืึธืจื˜ืœืขืš ืคึฟืึทืจ ื“ื™ ืคึผืจืึธืฆืขื“ื•ืจ ื–ื™ืš, ื•ื•ื™ื™ึทืœ ืขืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ื™ืžืคึผืœืึทืžืขื ืึทื“ ืื™ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื•ื•ืขื’ืŸ: ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื•ื•ื™ืคึผ, ื“ื ืก, ื ื™ืฆืŸ ืกืขืจื•ื•ื™ืก ื•ืคื“ืขืงื•ื ื’ ื‘ืึทื“ื™ื ื•ื ื’ืก ืึธื“ืขืจ ื–ื™ืš-ื’ืขืฉืจื™ื‘ืŸ ืžืขืงืึทื ื™ื–ืึทืžื–.

ืื™ื™ืŸ ืคึผืฉื•ื˜ ื•ื•ืขื’ ืฆื• ื•ืžืงืขืจืŸ ืึท ื‘ืขืœ ืื•ื™ื‘ ืขืก ืคื™ื™ืœื– ืื™ื– ืฆื• ื ื•ืฆืŸ ืคืœืึธื•ื˜ื™ื ื’ ื•ื•ื™ืคึผ ื•ื•ืขื ื“ื˜.

ื•ื•ืึธืก ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ื•ื•ื™ืกืŸ ื•ื•ืขื’ืŸ ื“ืขื ืœื™ื™ื–ื•ื ื’ ืื™ื™ื“ืขืจ ืื™ืจ ืžืึทืš ืคืึธืจื•ื™ืก:

  • ื ื•ื•ื™ืคึผ ืื™ื– ืึทืŸ IP ืึทื“ืจืขืก ื•ื•ืึธืก ืื™ื– ื ื™ืฉื˜ ืคืืจื‘ื•ื ื“ืŸ ืžื™ื˜ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ื’ืฉืžื™ื•ืช ื ืขืฅ ืฆื•ื‘ื™ื ื“. ืื•ื™ื‘ ืึท ื ืึธื“ืข ืคื™ื™ืœื– ืึธื“ืขืจ ื‘ืขืฉืึทืก ืกืงืขื“ื–ืฉื•ืœื“ ื•ื™ืฉืึทืœื˜, ืžื™ืจ ืงืขื ืขืŸ ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ื™ ื•ื•ื™ืคึผ ืฆื• ืืŸ ืื ื“ืขืจ ืžื™ื˜ืœ ืžื™ื˜ ืžื™ื ื™ืžืึทืœ ื“ืึทื•ื ื˜ื™ื™ื.
  • ืคืจื™ื™ ืื•ืŸ ืึทืจื•ื™ืกื’ืขื‘ืŸ ืึท ื•ื•ื™ืจื˜ื•ืึทืœ IP ืึทื“ืจืขืก ืื™ื– ืึท ื‘ื™ืœื™ืง ืื•ืŸ ืฉื ืขืœ ืึธืคึผืขืจืึทืฆื™ืข.
  • ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื•ื•ื™ืคึผ, ืื™ืจ ื“ืึทืจืคึฟืŸ ืึทืงืกืขืก ืฆื• ื“ื™ ืกืขืจื•ื•ืขืจ ื“ื•ืจืš SSH, ืึธื“ืขืจ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ืกืคึผืขืฆื™ืขืœ ื™ื•ื˜ื™ืœืึทื˜ื™ื–, ืœืžืฉืœ, keepalived.

ื–ืืœ ืก ืงื•ืง ืื™ืŸ ืžืขื’ืœืขืš ืคึผืจืึธื‘ืœืขืžืก ืžื™ื˜ ืื•ื ื“ื–ืขืจ ืžืึทื–ืขืง ืื•ืŸ ื™ืžืึทื“ื–ืฉืึทืŸ ื•ื•ื™ ื“ื™ ืึธื˜ืึทืžืึทื˜ื™ืง ืึธืคึผื–ื•ืš ืžืขืงืึทื ื™ื–ืึทื ื–ืึธืœ ืึทืจื‘ืขื˜ืŸ.

ื ืขืฅ ืงืึทื ืขืงื˜ื™ื•ื•ื™ื˜ื™ ืฆื• ื“ื™ ื‘ืขืœ ืื™ื– ืคืึทืจืฉื•ื•ื•ื ื“ืŸ, ืึธื“ืขืจ ืึท ืคึผืจืึธื‘ืœืขื ืื™ื– ืื•ื™ืคื’ืขืฉื˜ืื ืขืŸ ืื•ื™ืฃ ื“ื™ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืžื“ืจื’ื”, ืื•ืŸ ื“ืขืจ ืกืขืจื•ื•ืขืจ ืื™ื– ืึทื ืึทื•ื•ื™ื™ืœืึทื‘ืึทืœ

  1. ื“ืขืจ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ื“ื™ ืงื ื•ื™ืœ ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™, ื™ืขื“ืขืจ ืจืขืคึผืœื™ืงืข ืจื™ืคึผืึธืจืฅ ืึทื– ื“ืขืจ ื‘ืขืœ ืื™ื– ืึทื ืึทื•ื•ื™ื™ืœืึทื‘ืึทืœ. ื“ืขืจ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืกื˜ืึทืจืฅ ื“ืขื ืคึผืจืึธืฆืขืก ืคื•ืŸ ืกืึทืœืขืงื˜ื™ื ื’ ืึท ืจืขืคึผืœื™ืงืข ืคึผืึทืกื™ืง ืคึฟืึทืจ ื“ื™ ืจืึธืœืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ื ื™ื™ึทืข ื‘ืขืœ ืื•ืŸ ื”ื™ื™ื‘ื˜ ืฆื• ืึธืคึผื–ื•ืš.
  2. ืžื™ืจ ื–ืขื ืขืŸ ื˜ืจื™ื™ื ื’ ืฆื• ื‘ืึทื–ื™ื™ึทื˜ื™ืงืŸ ื“ื™ ื•ื•ื™ืคึผ ืคื•ืŸ ื“ื™ ืึทืœื˜ ื‘ืขืœ - ืึธืŸ ื”ืฆืœื—ื”.
  3. ื“ื™ ืจืขืคึผืœื™ืงืข ืกื•ื•ื™ื˜ืฉื™ื– ืฆื• ื“ื™ ืจืึธืœืข ืคื•ืŸ โ€‹โ€‹ื‘ืขืœ. ื“ื™ ื˜ืึทืคึผืึธืœืึธื’ื™ืข ืื™ื– ืจื™ื‘ื™ืœื˜.
  4. ืึทื“ื™ื ื’ ืึท ื ื™ื™ึทืข ื ืขืฅ ืฆื•ื‘ื™ื ื“ ืžื™ื˜ VIP. ื–ื™ื ื˜ ืขืก ืื™ื– ื ื™ื˜ ืžืขื’ืœืขืš ืฆื• ื‘ืึทื–ื™ื™ึทื˜ื™ืงืŸ ื“ื™ VIP, ืžื™ืจ ืึธื ื”ื™ื™ื‘ืŸ ืคึผื™ืจื™ืึทื“ื™ืงืœื™ ืฉื™ืงืŸ ืึท ื‘ืงืฉื” ืื™ืŸ ื“ืขืจ ื”ื™ื ื˜ืขืจื’ืจื•ื ื˜ ืคืจื™ื™ ARP. ื“ืขืจ ื˜ื™ืคึผ ืคื•ืŸ ื‘ืขื˜ืŸ / ืขื ื˜ืคืขืจ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ ื“ื™ IP ืื•ืŸ MAC ืึทื“ืจืขืก ืžืึทืคึผื™ื ื’ ื˜ื™ืฉ ืื•ื™ืฃ ื“ื™ ืคืืจื‘ื•ื ื“ืŸ ืกื•ื•ื™ื˜ืฉื™ื–, ืื•ืŸ ื“ืขืจืžื™ื˜ ื ืึธื•ื˜ืึทืคื™ื™ื™ื ื’ ืื™ืจ ืึทื– ืื•ื ื“ื–ืขืจ ื•ื•ื™ืคึผ ืื™ื– ืืจื™ื‘ืขืจื’ืขืคืืจืŸ. ื“ืึธืก ืžื™ื ืึทืžื™ื™ื–ืึทื– ื“ื™ ืœื™ืงืขืœื™ื”ืึธืึธื“ split brain ื•ื•ืขืŸ ืžืขืŸ ืงืขืจื˜ ืฆื•ืจื™ืง ื“ืขื ืึทืœื˜ืŸ ื‘ืขืœ.
  5. ืึทืœืข ื ื™ื™ึทืข ืงืึทื ืขืงืฉืึทื ื– ื–ืขื ืขืŸ ืžื™ื“ ืจื™ื“ืขืจืขืงื˜ื™ื“ ืฆื• ื“ื™ ื ื™ื™ึทืข ื‘ืขืœ. ืึทืœื˜ ืงืึทื ืขืงืฉืึทื ื– ืคืึทืจืœืึธื–ืŸ ืื•ืŸ ืจื™ืคึผื™ื˜ื™ื“ ืจื•ืคื˜ ืฆื• ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก ื–ืขื ืขืŸ ื’ืขืžืื›ื˜ ืื•ื™ืฃ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืžื“ืจื’ื”.

ื“ืขืจ ืกืขืจื•ื•ืขืจ ืื™ื– ืึทืคึผืขืจื™ื™ื˜ื™ื ื’ ืื™ืŸ ื ืึธืจืžืึทืœ ืžืึธื“ืข, ืึท ื“ื•ืจื›ืคืึทืœ ืื™ื– ืคืืจื’ืขืงื•ืžืขืŸ ืื™ืŸ ื“ื™ DBMS ืžื“ืจื’ื”

ื“ืขืจ ืึทืœื’ืขืจื™ื“ืึทื ืื™ื– ืขื ืœืขืš ืฆื• ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืคืึทืœ: ืึทืคึผื“ื™ื™ื˜ื™ื ื’ ื“ื™ ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™ ืื•ืŸ ืึธื ื”ื™ื™ื‘ ื“ื™ ืึธืคึผื–ื•ืš ืคึผืจืึธืฆืขืก. ื–ื™ื ื˜ ื“ืขืจ ืกืขืจื•ื•ืขืจ ืื™ื– ื‘ื ื™ืžืฆื, ืžื™ืจ ื”ืฆืœื—ื” ืžืขืœื“ื•ื ื’ ื“ื™ VIP ืื•ื™ืฃ ื“ื™ ืึทืœื˜ ื‘ืขืœ, ืึทืจื™ื‘ืขืจืคื™ืจืŸ ืขืก ืฆื• ื“ื™ ื ื™ื™ึทืข ืื•ืŸ ืฉื™ืงืŸ ืขื˜ืœืขื›ืข ARP ืจื™ืงื•ื•ืขืก. ื“ื™ ืžืขื’ืœืขืš ืฆื•ืจื™ืงืงืขืจ ืคื•ืŸ ื“ื™ ืึทืœื˜ ื‘ืขืœ ื–ืึธืœ ื ื™ืฉื˜ ื•ื•ื™ืจืงืŸ ื“ื™ ืจื™ื‘ื™ืœื˜ ืงื ื•ื™ืœ ืื•ืŸ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ.

ืื ื“ืขืจืข ืคึผืจืึธื‘ืœืขืžืก

ื“ื•ืจื›ืคืึทืœ ืคื•ืŸ ืจืขืคึผืœืึทืงืึทื– ืึธื“ืขืจ ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ื”ืืจืŸ ืคื™ืจื˜ ื ื™ืฉื˜ ืฆื• ืึธื˜ืึทืžืึทื˜ื™ืง ืึทืงืฉืึทื ื– ืื•ืŸ ืจื™ืงื•ื•ื™ื™ืขืจื– ืžืึทื ื•ืึทืœ ื™ื ื˜ืขืจื•ื•ืขื ื˜ื™ืึธืŸ.

ื ื•ื•ื™ืจื˜ื•ืขืœ ื ืขืฅ ืฆื•ื‘ื™ื ื“ ืื™ื– ืฉื˜ืขื ื“ื™ืง ืžื•ืกื™ืฃ ื˜ืขืžืคึผืขืจืขืจืึทืœื™, ื“ืึธืก ืื™ื–, ื ืึธืš ืึท ืกืขืจื•ื•ืขืจ ืจืขื‘ืึธืึธื˜, ื“ื™ ื•ื•ื™ืคึผ ืื™ื– ื ื™ืฉื˜ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืึทืกื™ื™ื ื“. ื™ืขื“ืขืจ ื“ืึทื˜ืึทื‘ื™ื™ืก ื‘ื™ื™ึทืฉืคึผื™ืœ ืกื˜ืึทืจืฅ ืื™ืŸ ืœื™ื™ืขื ืขืŸ-ื‘ืœื•ื™ื– ืžืึธื“ืข ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜, ื“ืขืจ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืกื•ื•ื™ื˜ืฉื™ื– ื“ื™ ื ื™ื™ึท ื‘ืขืœ ืฆื• ืฉืจื™ื™ึทื‘ืŸ ืื•ืŸ ืคืจื•ื•ื•ื˜ ืฆื• ื™ื ืกื˜ืึทืœื™ืจืŸ read only ืื•ื™ืฃ ื“ืขื ืึทืœื˜ืŸ ื‘ืขืœ. ื“ื™ ืึทืงืฉืึทื ื– ื–ืขื ืขืŸ ืึทื™ืžืขื“ ืฆื• ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ืœื™ืงืขืœื™ื”ืึธืึธื“ split brain.

ืคึผืจืึธื‘ืœืขืžืก ืงืขืŸ ืื•ื™ืคืฉื˜ื™ื™ืŸ ื‘ืขืฉืึทืก ื“ื™ ืึธืคึผื–ื•ืš ืคึผืจืึธืฆืขืก, ื•ื•ืึธืก ื–ืึธืœ ืื•ื™ืš ื–ื™ื™ืŸ ื ืึธื•ื˜ืึทืคื™ื™ื“ ื“ื•ืจืš ื“ื™ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ื•ื™ ืื™ืŸ ืึทื“ื™ืฉืึทืŸ ืฆื• ื ืึธืจืžืึทืœ ืžืึธื ื™ื˜ืึธืจื™ื ื’ ืžื›ืฉื™ืจื™ื. ืžื™ืจ ื”ืึธื‘ืŸ ื™ืงืกืคึผืึทื ื“ื™ื“ ื“ื™ REST API ื“ื•ืจืš ืึทื“ื™ื ื’ ื“ืขื ืฉื˜ืจื™ืš (PR ืื™ืฆื˜ ืื•ื ื˜ืขืจ ืึธืคึผืฉืึทืฆื•ื ื’).

ื“ืขืจ ื’ืขื ืขืจืึทืœ ื“ื™ืึทื’ืจืึทืžืข ืคื•ืŸ โ€‹โ€‹ื“ื™ HA ืœื™ื™ื–ื•ื ื’ ืื™ื– ื“ืขืจืœืื ื’ื˜ ืื•ื ื˜ืŸ.

ืึธืจื˜ืฉืขืกื˜ืขืจ ืื•ืŸ ื•ื•ื™ืคึผ ื•ื•ื™ ืึท ื”ืึท ืœื™ื™ื–ื•ื ื’ ืคึฟืึทืจ ืึท MySQL ืงื ื•ื™ืœ

ื˜ืฉืึธืึธืกื™ื ื’ ืึท ื ื™ื™ึท ื‘ืขืœ

ื“ืขืจ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืื™ื– ืงืœื•ื’ ื’ืขื ื•ื’ ืื•ืŸ ืคืจื•ื•ื•ื˜ ืฆื• ืงืœื™ื™ึทื‘ืŸ ื“ื™ ืžืขืจืกื˜ ืคึผืึทืกื™ืง ืจืขืคึผืœื™ืงืข ื•ื•ื™ ืึท ื ื™ื™ึทืข ื‘ืขืœ ืœื•ื™ื˜ ื“ื™ ืคืืœื’ืขื ื“ืข ืงืจื™ื™ื˜ื™ืจื™ืึท:

  • ื“ื™ ืจืขืคึผืœื™ืงืข ืœืึทื’ื– ื”ื™ื ื˜ืขืจ ื“ื™ ื‘ืขืœ;
  • MySQL ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ื‘ืขืœ ืื•ืŸ ืจืขืคึผืœื™ืงืข;
  • ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ื˜ื™ืคึผ (RBR, SBR ืึธื“ืขืจ ื’ืขืžื™ืฉื˜);
  • ืึธืจื˜ ืื™ืŸ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ืึธื“ืขืจ ืคืึทืจืฉื™ื“ืขื ืข ื“ืึทื˜ืŸ ืกืขื ื˜ืขืจืก;
  • ืึทื•ื•ื™ื™ืœืึทื‘ื™ืœื™ื˜ื™ errant GTID - ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ื•ื•ืึธืก ื–ืขื ืขืŸ ืขืงืกืึทืงื™ื•ื˜ืึทื“ ืื•ื™ืฃ ื“ื™ ืจืขืคึผืœื™ืงืข ืื•ืŸ ื–ืขื ืขืŸ ื ื™ืฉื˜ ืื•ื™ืฃ ื“ื™ ื‘ืขืœ;
  • ืžื ื”ื’ ืกืขืœืขืงืฆื™ืข ื›ึผืœืœื™ื ื–ืขื ืขืŸ ืื•ื™ืš ื’ืขื ื•ืžืขืŸ ืื™ืŸ ื—ืฉื‘ื•ืŸ.

ื ื™ื˜ ื™ืขื“ืขืจ ืงื™ื• ืื™ื– ืึทืŸ ืื™ื“ืขืืœ ืงืึทื ื“ื™ื“ืึทื˜ ืคึฟืึทืจ ืึท ื‘ืขืœ. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืึท ืจืขืคึผืœื™ืงืข ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ืฆื• ื‘ืึทืงืึทืคึผ ื“ืึทื˜ืŸ, ืึธื“ืขืจ ื“ืขืจ ืกืขืจื•ื•ืขืจ ื”ืื˜ ืึท ืฉื•ื•ืึทืš ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ. ืึธืจื˜ืฉืขืกื˜ืขืจ ืฉื˜ื™ืฆื˜ ืžืึทื ื•ืึทืœ ื›ึผืœืœื™ื ืžื™ื˜ ื•ื•ืึธืก ืื™ืจ ืงืขื ืขืŸ ืงืึทืกื˜ืึทืžื™ื™ื– ื“ื™ื™ืŸ ืงืึทื ื“ื™ื“ืึทื˜ ืกืขืœืขืงืฆื™ืข ืคึผืจืขืคึฟืขืจืขื ืฆืŸ ืคื•ืŸ ืžืขืจืกื˜ ื‘ื™ืœื›ืขืจ ืฆื• ืื™ื’ื ืึธืจื™ืจื˜.

ืขื ื˜ืคืขืจ ืื•ืŸ ืึธืคึผื–ื•ืš ืฆื™ื™ื˜

ืื™ืŸ ื“ื™ ื’ืขืฉืขืขื ื™ืฉ ืคื•ืŸ ืึทืŸ ืื™ื ืฆื™ื“ืขื ื˜, ืขืก ืื™ื– ื•ื•ื™ื›ื˜ื™ืง ืฆื• ืžื™ื ืึทืžื™ื™ื– ืกื™ืกื˜ืขื ื“ืึทื•ื ื˜ื™ื™ื, ืึทื–ื•ื™ ืœืึธื–ืŸ ืื•ื ื“ื– ื‘ืึทื˜ืจืึทื›ื˜ืŸ ื“ื™ MySQL ืคึผืึทืจืึทืžืขื˜ืขืจืก ื•ื•ืึธืก ื•ื•ื™ืจืงืŸ ื“ื™ ืฉืึทืคื•ื ื’ ืื•ืŸ ืึทืคึผื“ื™ื™ื˜ื™ื ื’ ืคื•ืŸ ื“ื™ ืงื ื•ื™ืœ ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™ ื“ื•ืจืš ื“ื™ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ:

  • slave_net_timeout - ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืกืขืงื•ื ื“ืขืก ื‘ืขืฉืึทืก ื•ื•ืึธืก ื“ื™ ืจืขืคึผืœื™ืงืข ื•ื•ืืจื˜ืŸ ืคึฟืึทืจ ื ื™ื™ึทืข ื“ืึทื˜ืŸ ืึธื“ืขืจ ืึท ื›ืึทืจื˜ื‘ื™ื˜ ืกื™ื’ื ืึทืœ ืฆื• ืึธื ืงื•ืžืขืŸ ืคื•ืŸ ื“ื™ ื‘ืขืœ ืื™ื™ื“ืขืจ ื“ื™ ืงืฉืจ ืื™ื– ืื ืขืจืงืขื ื˜ ื•ื•ื™ ืคืึทืจืคืึทืœืŸ ืื•ืŸ ืจื™ืงืึทื ืขืงื˜ื™ื“. ื“ื™ ื ื™ื“ืขืจื™ืงืขืจ ื“ืขืจ ื•ื•ืขืจื˜, ื“ื™ ืคืึทืกื˜ืขืจ ื“ื™ ืจืขืคึผืœื™ืงืข ืงืขื ืขืŸ ื‘ืึทืฉื˜ื™ืžืขืŸ ืึทื– ืงืึธืžื•ื ื™ืงืึทืฆื™ืข ืžื™ื˜ ื“ื™ ื‘ืขืœ ืื™ื– ืฆืขื‘ืจืื›ืŸ. ืžื™ืจ ืฉื˜ืขืœืŸ ื“ืขื ื•ื•ืขืจื˜ ืฆื• 5 ืกืขืงื•ื ื“ืขืก.
  • MASTER_CONNECT_RETRY - ื ื•ืžืขืจ ืคื•ืŸ ืกืขืงื•ื ื“ืขืก ืฆื•ื•ื™ืฉืŸ ืจื™ืงืึทื ืขืงืฉืึทืŸ ืคืจื•ื•ื•ืŸ. ืื™ืŸ ื“ื™ ื’ืขืฉืขืขื ื™ืฉ ืคื•ืŸ ื ืขืฅ ืคึผืจืึธื‘ืœืขืžืก, ืึท ื ื™ื“ืขืจื™ืง ื•ื•ืขืจื˜ ืคึฟืึทืจ ื“ืขื ืคึผืึทืจืึทืžืขื˜ืขืจ ื•ื•ืขื˜ ืœืึธื–ืŸ ืฉื ืขืœ ืจื™ืงืึทื ืขืงืฉืึทืŸ ืื•ืŸ ืคืึทืจืžื™ื™ึทื“ืŸ ื“ื™ ืงื ื•ื™ืœ ืึธืคึผื–ื•ืš ืคึผืจืึธืฆืขืก ืคื•ืŸ ืกื˜ืึทืจื˜ื™ื ื’. ื“ื™ ืจืขืงืึทืžืขื ื“ื™ื“ ื•ื•ืขืจื˜ ืื™ื– 1 ืกืขืงื•ื ื“ืข.
  • MASTER_RETRY_COUNT - ืžืึทืงืกื™ืžื•ื ื ื•ืžืขืจ ืคื•ืŸ ืจื™ืงืึทื ืขืงืฉืึทืŸ ืคืจื•ื•ื•ืŸ.
  • MASTER_HEARTBEAT_PERIOD - ืžืขื”ืึทืœืขืš ืื™ืŸ ืกืขืงื•ื ื“ืขืก ื ืึธืš ื•ื•ืึธืก ื“ืขืจ ื‘ืขืœ ืกืขื ื“ื– ืึท ื›ืึทืจื˜ื‘ื™ื˜ ืกื™ื’ื ืึทืœ. ื“ื™ืคืึธืœืฅ ืฆื• ื”ืึทืœื‘ ื“ื™ ื•ื•ืขืจื˜ slave_net_timeout.

ืึธืจื˜ืฉืขืกื˜ืจืึทื˜ืึธืจ ืึธืคึผืฆื™ืขืก:

  • DelayMasterPromotionIfSQLThreadNotUpToDate - ืื•ื™ื‘ ื’ืœื™ื™ึทืš true, ื“ืขืžืึธืœื˜ ื“ืขืจ ื‘ืขืœ ืจืึธืœืข ื•ื•ืขื˜ ื ื™ืฉื˜ ื–ื™ื™ืŸ ื’ืขื•ื•ืขื ื“ื˜ ืื•ื™ืฃ ื“ื™ ืงืึทื ื“ื™ื“ืึทื˜ ืจืขืคึผืœื™ืงืข ื‘ื™ื– ื“ื™ ืจืขืคึผืœื™ืงืข ืก SQL ืคืึธื“ืขื ื”ืื˜ ื’ืขืขื ื“ื™ืงื˜ ืึทืœืข ืึทื ืึทืคึผืœื™ื™ื“ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ืคื•ืŸ ื“ื™ ืจืขืœืข ืงืœืึธืฅ. ืžื™ืจ ื ื•ืฆืŸ ื“ืขื ืึธืคึผืฆื™ืข ืฆื• ื•ื™ืกืžื™ื™ื“ืŸ ืœื•ื–ื™ื ื’ ื˜ืจืึทื ื–ืึทืงืฉืึทื ื– ื•ื•ืขืŸ ืึทืœืข ืงืึทื ื“ื™ื“ืึทื˜ ืจืขืคึผืœืึทืงืึทื– ืคืึทืœืŸ ื”ื™ื ื˜ืขืจ.
  • InstancePollSeconds - ืึธืคื˜ืงื™ื™ึทื˜ ืคื•ืŸ ื‘ื ื™ืŸ ืื•ืŸ ืึทืคึผื“ื™ื™ื˜ื™ื ื’ ื“ื™ ื˜ืึธืคึผืึธืœืึธื’ื™.
  • RecoveryPollSeconds - ืึธืคื˜ืงื™ื™ึทื˜ ืคื•ืŸ ื˜ืึธืคึผืึธืœืึธื’ื™ ืึทื ืึทืœื™ืกื™ืก. ืื•ื™ื‘ ืึท ืคึผืจืึธื‘ืœืขื ืื™ื– ื“ื™ื˜ืขืงื˜ืึทื“, ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™ ืึธืคึผื–ื•ืš ืื™ื– ื™ื ื™ืฉื™ื™ื™ื˜ื™ื“. ื“ืืก ืงืขืกื™ื™ื“ืขืจื“ื™ืง, ื’ืœื™ื™ึทืš ืฆื• 1 ืจื’ืข.

ื™ืขื“ืขืจ ืงื ื•ื™ืœ ื ืึธื“ืข ืื™ื– ืคึผืึธื•ืœื“ ื“ื•ืจืš ื“ื™ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืึทืžืึธืœ ื™ืขื“ืขืจ InstancePollSeconds ืกืขืงื•ื ื“ืขืก ื•ื•ืขืŸ ืึท ืคึผืจืึธื‘ืœืขื ืื™ื– ื“ื™ื˜ืขืงื˜ืึทื“, ื“ื™ ืงื ื•ื™ืœ ืฉื˜ืึทื˜ ืื™ื– ื’ืขืฆื•ื•ื•ื ื’ืขืŸ ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜, ืื•ืŸ ื“ืขืžืึธืœื˜ ื“ืขืจ ืœืขืฆื˜ ื‘ืึทืฉืœื•ืก ืื™ื– ื’ืขืžืื›ื˜ ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืึธืคึผื–ื•ืš. ื“ื•ืจืš ืขืงืกืคึผืขืจื™ืžืขื ื˜ื™ื ื’ ืžื™ื˜ ืคืึทืจืฉื™ื“ืขื ืข ื“ืึทื˜ืึทื‘ื™ื™ืก ืื•ืŸ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืคึผืึทืจืึทืžืขื˜ืขืจืก, ืžื™ืจ ื–ืขื ืขืŸ ื‘ื™ื›ื•ืœืช ืฆื• ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ืขื ื˜ืคืขืจ ืื•ืŸ ืึธืคึผื–ื•ืš ืฆื™ื™ื˜ ืฆื• 30 ืกืขืงื•ื ื“ืขืก.

ื˜ืขืกื˜ ืฉื˜ื™ื™ืŸ

ืžื™ืจ ืกื˜ืึทืจื˜ืขื“ ื˜ืขืกื˜ื™ื ื’ ื“ื™ HA ืกื›ืขืžืข ืžื™ื˜ ื“ืขืจ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืคื•ืŸ ืึท ื”ื™ื’ืข ืคึผืจื•ื‘ื™ืจืŸ ื‘ืึทื ืง ืื•ืŸ ื•ื•ื™ื™ึทื˜ืขืจ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืื™ืŸ ืคึผืจื•ื‘ื™ืจืŸ ืื•ืŸ ืคึผืจืึธื“ื•ืงืฆื™ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ. ื“ื™ ื”ื™ื’ืข ืฉื˜ื™ื™ืŸ ืื™ื– ื’ืึธืจ ืึธื˜ืึทืžื™ื™ื˜ื™ื“ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ืึธืงืงืขืจ ืื•ืŸ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืขืงืกืคึผืขืจื™ืžืขื ื˜ ืžื™ื˜ ื“ื™ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืื•ืŸ ื ืขืฅ, ื•ื•ืึธื’ ื“ืขื ืงื ื•ื™ืœ ืคื•ืŸ 2-3 ืกืขืจื•ื•ืขืจืก ืฆื• ืขื˜ืœืขื›ืข ื˜ื•ืฅ ืื•ืŸ ื“ื•ืจื›ืคื™ืจืŸ ืขืงืกืขืจืกื™ื™ื–ื™ื– ืื™ืŸ ืึท ื–ื™ื›ืขืจ ืกื•ื•ื™ื•ื•ืข.

ื‘ืขืฉืึทืก ื“ื™ ืขืงืกืขืจืกื™ื™ื–ื™ื–, ืžื™ืจ ืงืœื™ื™ึทื‘ืŸ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืคึผืจืึธื‘ืœืขื ืขืžื™ืึทืœื™ื™ืฉืึทืŸ ืžืขื˜ื”ืึธื“ืก: ื˜ื™ื™ืงืขืฃ ื“ืจื™ื™ืขืŸ ื“ืขื ื‘ืขืœ ื ื™ืฆืŸ kill -9, ืกืึธืคืœื™ ืคืึทืจืขื ื“ื™ืงืŸ ื“ืขื ืคึผืจืึธืฆืขืก ืื•ืŸ ื”ืึทืœื˜ืŸ ื“ื™ ืกืขืจื•ื•ืขืจ (docker-compose stop), ืกื™ืžื•ืœื™ืจืŸ ื ืขืฅ ืคึผืจืึธื‘ืœืขืžืก ื ื™ืฆืŸ iptables -j REJECT ืึธื“ืขืจ iptables -j DROP. ืžื™ืจ ื“ืขืจื•ื•ืึทืจื˜ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

  • ื“ืขืจ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ื•ื•ืขื˜ ื“ืขื˜ืขืงื˜ ืคึผืจืึธื‘ืœืขืžืก ืžื™ื˜ ื“ื™ ื‘ืขืœ ืื•ืŸ ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ ื“ื™ ื˜ืึธืคึผืึธืœืึธื’ื™ ืื™ืŸ ื ื™ื˜ ืžืขืจ ื•ื•ื™ 10 ืกืขืงื•ื ื“ืขืก;
  • ื“ื™ ืึธืคึผื–ื•ืš ืคึผืจืึธืฆืขื“ื•ืจ ื•ื•ืขื˜ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืึธื ื”ื™ื™ื‘ืŸ: ื“ื™ ื ืขืฅ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ื•ื•ืขื˜ ื˜ื•ื™ืฉืŸ, ื“ื™ ืจืึธืœืข ืคื•ืŸ โ€‹โ€‹ื“ืขืจ ื‘ืขืœ ื•ื•ืขื˜ ืคืึธืจืŸ ืฆื• ื“ื™ ืจืขืคึผืœื™ืงืข, ื“ื™ ื˜ืึธืคึผืึธืœืึธื’ื™ ื•ื•ืขื˜ ื–ื™ื™ืŸ ืจื™ื‘ื™ืœื˜;
  • ื“ืขืจ ื ื™ื™ึทืข ื‘ืขืœ ื•ื•ืขื˜ ื–ื™ื™ืŸ ืจื™ื™ื˜ืึทื‘ืึทืœ, ืœืขื‘ืŸ ืจืขืคึผืœืึทืงืึทื– ื•ื•ืขื˜ ื ื™ืฉื˜ ื–ื™ื™ืŸ ืคืึทืจืคืึทืœืŸ ื‘ืขืฉืึทืก ื“ื™ ืจื™ื‘ื™ืœื“ ืคึผืจืึธืฆืขืก;
  • ื“ืึทื˜ืข ื•ื•ืขื˜ ืึธื ื”ื™ื™ื‘ืŸ ืฆื• ื–ื™ื™ืŸ ื’ืขืฉืจื™ื‘ืŸ ืฆื• ื“ื™ ื ื™ื™ึท ื‘ืขืœ ืื•ืŸ ืจืขืคึผืœื™ืงื™ื™ื˜ื™ื“;
  • ื“ื™ ื’ืึทื ืฅ ืึธืคึผื–ื•ืš ืฆื™ื™ื˜ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื ื™ื˜ ืžืขืจ ื•ื•ื™ 30 ืกืขืงื•ื ื“ืขืก.

ื•ื•ื™ ืื™ืจ ื•ื•ื™ืกืŸ, ื“ื™ ืกื™ืกื˜ืขื ืงืขืŸ ื–ื™ื™ืŸ ืึทื ื“ืขืจืฉ ืื™ืŸ ืคึผืจืึธื‘ืข ืื•ืŸ ืคึผืจืึธื“ื•ืงืฆื™ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ืจืขื›ื˜ ืฆื• ืคืึทืจืฉื™ื“ืขื ืข ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืื•ืŸ ื ืขืฅ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทื ื–, ื“ื™ืคืขืจืึทื ืกื™ื– ืื™ืŸ ืกื™ื ื˜ืขื˜ื™ืฉ ืื•ืŸ ืคืึทืงื˜ื™ืฉ ืžืึทืกืข, ืืื–"ื• ื•. ื“ืขืจื™ื‘ืขืจ, ืžื™ืจ ืคึผื™ืจื™ืึทื“ื™ืงืœื™ ื“ื•ืจื›ืคื™ืจืŸ ืขืงืกืขืจืกื™ื™ื–ื™ื– ืื™ืŸ ืคืึทืงื˜ื™ืฉ ื˜ื ืึธื™ื, ืงืึธื ื˜ืจืึธืœื™ืจืŸ ื•ื•ื™ ื“ื™ ืกื™ืกื˜ืขื ื‘ื™ื›ื™ื™ื•ื•ื– ื•ื•ืขืŸ ื ืขืฅ ืงืึทื ืขืงื˜ื™ื•ื•ื™ื˜ื™ ืื™ื– ืคืึทืจืคืึทืœืŸ ืึธื“ืขืจ ื“ื™ ื™ื—ื™ื“ ืคึผืึทืจืฅ ื–ืขื ืขืŸ ื“ื™ื’ืจื™ื™ื“ื™ื“. ืื™ืŸ ื“ืขืจ ืฆื•ืงื•ื ืคึฟื˜, ืžื™ืจ ื•ื•ื™ืœืŸ ืฆื• ื‘ื•ื™ืขืŸ ืึท ื’ืึธืจ ื™ื™ื“ืขื ื™ืงืึทืœ ื™ื ืคืจืึทืกื˜ืจืึทืงื˜ืฉืขืจ ืคึฟืึทืจ ื‘ื™ื™ื“ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ืื•ืŸ ืึธื˜ืึทืžื™ื™ื˜ ื–ื™ื™ึทืŸ ื˜ืขืกื˜ื™ื ื’.

ืคื™ื™ื ื“ื™ื ื’ื–

ื“ื™ ื’ืขื–ื•ื ื˜ ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ืกื˜ืึธืจื™ื“ื–ืฉ ืกื™ืกื˜ืขื ื ืึธื“ืข ืื™ื– ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ ื˜ืึทืกืงืก ืคื•ืŸ ื“ื™ SRE ืื•ืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืžืึทื ืฉืึทืคึฟื˜. ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ืึธืจืงืขืกื˜ืจืึทื˜ืึธืจ ืื•ืŸ HA ืœื™ื™ื–ื•ื ื’ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ VIP ืขืจืœื•ื™ื‘ื˜ ืื•ื ื“ื– ืฆื• ื“ืขืจื’ืจื™ื™ื›ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

  • ืคืึทืจืœืึธื–ืœืขืš ื“ื™ื˜ืขืงืฉืึทืŸ ืคื•ืŸ ืคึผืจืึธื‘ืœืขืžืก ืžื™ื˜ ื“ื™ ื˜ืึธืคึผืึธืœืึธื’ื™ ืคื•ืŸ ื“ื™ ื“ืึทื˜ืึทื‘ื™ื™ืก ืงื ื•ื™ืœ;
  • ืึธื˜ืึทืžืึทื˜ื™ืง ืื•ืŸ ื’ื™ืš ืขื ื˜ืคืขืจ ืฆื• ื‘ืขืœ-ืคึฟืึทืจื‘ื•ื ื“ืขื ืข ื™ื ืกืึทื“ืึทื ืฅ, ืจื™ื“ื•ืกื™ื ื’ ืกื™ืกื˜ืขื ื“ืึทื•ื ื˜ื™ื™ื.

ืึธื‘ืขืจ, ื“ื™ ืœื™ื™ื–ื•ื ื’ ื”ืื˜ ื–ื™ื™ึทืŸ ืœื™ืžื™ื˜ื™ื™ืฉืึทื ื– ืื•ืŸ ื“ื™ืกืึทื“ื•ื•ืึทื ื˜ื™ื“ื–ืฉื™ื–:

  • ืกืงื™ื™ืœื™ื ื’ ื“ื™ HA ืกื›ืขืžืข ืฆื• ืขื˜ืœืขื›ืข ื“ืึทื˜ืŸ ืกืขื ื˜ืขืจืก ื•ื•ืขื˜ ื“ืึทืจืคืŸ ืึท ืื™ื™ืŸ ืœ 2 ื ืขืฅ ืฆื•ื•ื™ืฉืŸ ื–ื™ื™;
  • ืื™ื™ื“ืขืจ ืึทืกื™ื™ื ื™ื ื’ VIP ืื•ื™ืฃ ื“ื™ ื ื™ื™ึท ื‘ืขืœ, ืžื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืžืขืœื“ื•ื ื’ ืขืก ืื•ื™ืฃ ื“ื™ ืึทืœื˜. ื“ืขืจ ืคึผืจืึธืฆืขืก ืื™ื– ืกืึทืงื•ื•ืขื ื˜ืฉืึทืœ, ื•ื•ืึธืก ื™ื ืงืจื™ืกืึทื– ื“ื™ ืึธืคึผื–ื•ืš ืฆื™ื™ื˜;
  • ืจื™ืœื™ืกื™ื ื’ ื“ื™ VIP ืจื™ืงื•ื•ื™ื™ืขืจื– SSH ืึทืงืกืขืก ืฆื• ื“ื™ ืกืขืจื•ื•ืขืจ, ืึธื“ืขืจ ืงื™ื™ืŸ ืื ื“ืขืจืข ืื•ืคึฟืŸ ืคื•ืŸ ืจื•ืคืŸ ื•ื•ื™ื™ึทื˜ ืคึผืจืึธื•ืกื™ื“ื–ืฉืขืจื–. ื–ื™ื ื˜ ื“ื™ ืกืขืจื•ื•ืขืจ ืึธื“ืขืจ ื“ืึทื˜ืึทื‘ื™ื™ืก ืื™ื– ื™ืงืกืคึผื™ืจื™ืึทื ืกื™ื ื’ ืคึผืจืึธื‘ืœืขืžืก ื•ื•ืึธืก ื’ืขืคึฟื™ืจื˜ ื“ื™ ืึธืคึผื–ื•ืš ืคึผืจืึธืฆืขืก, ืžื™ืจ ืงืขื ืขืŸ ื ื™ืฉื˜ ื–ื™ื™ืŸ ื–ื™ื›ืขืจ ืึทื– ื“ื™ ื•ื•ื™ืคึผ ื‘ืึทื–ื™ื™ึทื˜ื™ืงื•ื ื’ ื•ื•ืขื˜ ืคืึทืจืขื ื“ื™ืงืŸ ื”ืฆืœื—ื”. ืื•ืŸ ื“ืึธืก ืงืขืŸ ืคื™ืจืŸ ืฆื• ื“ืขืจ ืื•ื™ืกื–ืขืŸ ืคื•ืŸ ืฆื•ื•ื™ื™ ืกืขืจื•ื•ืขืจืก ืžื™ื˜ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ื•ื•ื™ืจื˜ื•ืึทืœ IP ืึทื“ืจืขืก ืื•ืŸ ืึท ืคึผืจืึธื‘ืœืขื split brain.

ืฆื• ืื•ื™ืกืžื™ื™ื“ืŸ split brain, ืื™ืจ ืงืขื ืขืŸ ื ื•ืฆืŸ ื“ืขื ืื•ืคึฟืŸ STONITH ("ืฉื™ืกืŸ ื“ื™ ืื ื“ืขืจืข ื ืึธื“ืข ืื™ืŸ ื“ื™ ืงืึธืคึผ"), ื•ื•ืึธืก ื’ืึธืจ ื™ื™ืกืึทืœื™ื™ืฅ ืึธื“ืขืจ ื“ื™ืกื™ื™ื‘ืึทืœื– ื“ื™ ืคึผืจืึธื‘ืœืขื ื ืึธื“ืข. ืขืก ื–ืขื ืขืŸ ืื ื“ืขืจืข ื•ื•ืขื’ืŸ ืฆื• ื™ื ืกื˜ืจื•ืžืขื ื˜ ืงื ื•ื™ืœ ื”ื•ื™ืš ืึทื•ื•ื™ื™ืœืึทื‘ื™ืœืึทื˜ื™: ืึท ืงืึธืžื‘ื™ื ืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹ื•ื•ื™ืคึผ ืื•ืŸ ื“ื ืก, ืกืขืจื•ื•ื™ืก ื•ืคื“ืขืงื•ื ื’ ืื•ืŸ ืคึผืจืึทืงืกื™ ื‘ืึทื“ื™ื ื•ื ื’ืก, ืกื™ื ื˜ืฉืจืึธื ืึธื•ืก ืจืขืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื•ืŸ ืื ื“ืขืจืข ืžืขื˜ื”ืึธื“ืก ื•ื•ืึธืก ื”ืึธื‘ืŸ ื–ื™ื™ืขืจ ื“ื™ืกืึทื“ื•ื•ืึทื ื˜ื™ื“ื–ืฉื™ื– ืื•ืŸ ืึทื“ื•ื•ืึทื ื˜ื™ื“ื–ืฉื™ื–.

ืื™ืš ื”ืึธื‘ ื’ืขืจืขื“ื˜ ื•ื•ืขื’ืŸ ืื•ื ื“ื–ืขืจ ืฆื•ื’ืึทื ื’ ืฆื• ืฉืึทืคึฟืŸ ืึท MySQL ืคืึทื™ืœืึธื•ื•ืขืจ ืงื ื•ื™ืœ. ืขืก ืื™ื– ื’ืจื™ื ื’ ืฆื• ื™ื ืกื˜ืจื•ืžืขื ื˜ ืื•ืŸ ื’ื™ื˜ ืึท ืคึผืึทืกื™ืง ืžื“ืจื’ื” ืคื•ืŸ ืจื™ืœื™ื™ืึทื‘ื™ืœืึทื˜ื™ ืื•ื ื˜ืขืจ ืงืจืึทื ื˜ ื˜ื ืึธื™ื. ื•ื•ื™ ื“ื™ ื’ืื ืฆืข ืกื™ืกื˜ืขื ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ ืื•ืŸ ื™ื ืคืจืึทืกื˜ืจืึทืงื˜ืฉืขืจ ืื™ืŸ ื‘ืึทื–ื•ื ื“ืขืจ ืึทื ื˜ื•ื•ื™ืงืœืขืŸ, ื“ืขื ืฆื•ื’ืึทื ื’ ื•ื•ืขื˜ ื‘ืœื™ ื™ื•ื•ืึทืœื•ื•.

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’