GitHub рдкрд░ MySQL рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛

GitHub рд╕рдм рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдбреЗрдЯрд╛ рд╡реЗрдпрд░рд╣рд╛рдЙрд╕ рдХреЗ рд░реВрдк рдореЗрдВ MySQL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреЛ git рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП MySQL рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ GitHub рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рд╕рд╛рдЗрдЯ рд╣реА, GitHub рдПрдкреАрдЖрдИ, рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рдгрд╛рд▓реА рдФрд░ рдХрдИ рдЕрдиреНрдп рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╣рдо рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛рдУрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ MySQL рд╕рдореВрд╣реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдФрд░ рдЗрд╕рдХреЗ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдПрдХ рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рд╕рд╛рде рд╢рд╛рд╕реНрддреНрд░реАрдп рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд░реЗрдкреНрд▓рд┐рдХрд╛ (рдЕрдиреНрдп рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕) рдЕрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдк рд╕реЗ рдореБрдЦреНрдп рдиреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд░реАрдб рдПрдХреНрд╕реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред


рдореЗрдЬрдмрд╛рди рд╕рд╛рдЗрдЯреЛрдВ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рдмрд┐рдирд╛, рдХреНрд▓рд╕реНрдЯрд░ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдк рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдирджреЗрди рдХреЛ рдареАрдХ рдХрд░рдирд╛, рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рджрд░реНрдЬ рдХрд░рдирд╛, рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдирд╛, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, рд╕рдореАрдХреНрд╖рд╛, рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдЕрд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред


рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдВрдЧрдд рд╕реБрд▓рдн рдиреЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ - рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдореБрдЦреНрдп рдиреЛрдбред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдРрд╕реЗ рдиреЛрдб рдХреА рдкрд╣рдЪрд╛рди рдпрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рднреА рдЙрддрдиреА рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред


рд╡рд░реНрддрдорд╛рди рдореБрдЦреНрдп рдиреЛрдб рдХреА рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдП рд╕рд░реНрд╡рд░ рдХреА рд╢реАрдШреНрд░ рдЙрдкрд╕реНрдерд┐рддрд┐ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рд╕рд╛рде рд╣реА рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреБрд▓ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдореЗрдВ рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ, рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдирдП рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред



рдпрд╣ рдкреНрд░рдХрд╛рд╢рди GitHub рдкрд░ MySQL рдХреА рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдФрд░ рдореБрдЦреНрдп рд╕реЗрд╡рд╛ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рдХрдИ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдордЬрд╝рдмреВрддреА рд╕реЗ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрдм рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЗрдВрджреНрд░ рдЕрдиреБрдкрд▓рдмреНрдз рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рд╕рдВрдЪрд╛рд▓рди рдХреНрд╖рдорддрд╛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рд╡рд┐рдлрд▓рддрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдиреНрдпреВрдирддрдо рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрддреЗ рд╣реИрдВред


рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд▓рдХреНрд╖реНрдп


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рдорд╛рдзрд╛рди рдкрд┐рдЫрд▓реЗ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ (рдПрдЪрдП) рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рдирдпрд╛, рдмреЗрд╣рддрд░ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЬрд┐рд╕реЗ рдЧреАрдерд╣рдм рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рд╣рдо рдмрдврд╝рддреЗ рд╣реИрдВ, рд╣рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП MySQL HA рд░рдгрдиреАрддрд┐ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо MySQL рдФрд░ GitHub рдкрд░ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред


рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдФрд░ рд╕реЗрд╡рд╛ рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдХреБрдЫ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣рд╛рдБ рдПрдХ рдирдореВрдирд╛ рд╕реВрдЪреА рд╣реИ:


  • рдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХреНрдпрд╛ рд╣реИ?
  • рдЧрд▓рддреА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдг рдХрд┐рддрдиреЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдЭреВрдареА рд╕рдХрд╛рд░рд╛рддреНрдордХ (рд╕рдордпрдкреВрд░реНрд╡ рд╡рд┐рдлрд▓рддрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг) рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ?
  • рдлреЗрд▓рдУрд╡рд░ рд╕рд┐рд╕реНрдЯрдо рдХрд┐рддрдирд╛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИ? рд╡рд┐рдлрд▓рддрд╛ рдХрд╣рд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИ?
  • рдХрдИ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдХрд┐рддрдирд╛ рдкреНрд░рднрд╛рд╡реА рд╣реИ? рдХрдо рдФрд░ рдЙрдЪреНрдЪ рд╡рд┐рд▓рдВрдмрддрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдХрд┐рддрдирд╛ рдкреНрд░рднрд╛рд╡реА рд╣реИ?
  • рдХреНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдкреВрд░реНрдг рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ (DPC) рдХреА рд╡рд┐рдлрд▓рддрд╛ рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЕрд▓рдЧрд╛рд╡ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛?
  • рдХреНрдпрд╛ рддрдВрддреНрд░ (рдпрджрд┐ рдХреЛрдИ рд╣реЛ) рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рджреЛ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рдЙрджреНрднрд╡ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд░реЛрдХрддрд╛ рдпрд╛ рдХрдо рдХрд░рддрд╛ рд╣реИ?
  • рдХреНрдпрд╛ рдбреЗрдЯрд╛ рд╣рд╛рдирд┐ рдЖрдкрдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ? рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдХрд┐рд╕ рд╣рдж рддрдХ?

рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдкрд╣рд▓реЗ рд╣рдо рдкрд┐рдЫрд▓реЗ рд╕рдорд╛рдзрд╛рди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВ рдХрд┐ рд╣рдордиреЗ рдЗрд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ред


рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП VIP рдФрд░ DNS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рдирд╛


рдкрд┐рдЫрд▓реЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдордиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛:


  • рдЧрд▓рддреА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рд▓рд┐рдП рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ ;
  • рдореЗрдЬрдмрд╛рди рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рд╡реАрдЖрдИрдкреА рдФрд░ рдбреАрдПрдирдПрд╕ред

рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЧреНрд░рд╛рд╣рдХреЛрдВ рдиреЗ рдЕрдкрдиреЗ рдирд╛рдо рд╕реЗ рдПрдХ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдиреЛрдб рдХреА рдЦреЛрдЬ рдХреА, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, mysql-writer-1.github.net ред рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рд╡рд░реНрдЪреБрдЕрд▓ рдЖрдИрдкреА рдкрддреЗ (рд╡реАрдЖрдИрдкреА) рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред


рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдирд╛рдо рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдЖрдИрдкреА рдкрддреЗ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд╣рд╛рдВ рдореБрдЦреНрдп рдиреЛрдб рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдирдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рдерд╛ред


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдХреГрддрд┐ рдЯреЛрдкреЛрд▓реЙрдЬреА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬреЛ рддреАрди рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЛ рдлреИрд▓рд╛рддреА рд╣реИ:


рдЫрд╡рд┐


рдореБрдЦреНрдп рдиреЛрдб рдХреА рд╡рд┐рдлрд▓рддрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдПрдХ рдирдпрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рдЙрд╕рдХреЗ рд╕реНрдерд╛рди (рдкреНрд░рддрд┐рдХреГрддрд┐ рдореЗрдВ рд╕реЗ рдПрдХ) рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред


orchestrator рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ, рдПрдХ рдирдпрд╛ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдЪреБрдирддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдирд╛рдо / рд╡реАрдЖрдИрдкреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рдЧреНрд░рд╛рд╣рдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореБрдЦреНрдп рдиреЛрдб рдХреА рдкрд╣рдЪрд╛рди рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рд╡реЗ рдХреЗрд╡рд▓ рдирд╛рдо рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдм рдирдП рдиреЛрдб рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред


рд╡реАрдЖрдИрдкреА рдкрддреЗ рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд░реНрд╡рд░ рд╕реНрд╡рдпрдВ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдорд╛рд▓рд┐рдХ рд╣реЛрддреЗ рд╣реИрдВред VIP рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдпрд╛ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рд░реНрд╡рд░ рдХреЛ ARP рдЕрдиреБрд░реЛрдз рднреЗрдЬрдирд╛ рд╣реЛрдЧрд╛ред рдирдП рд╕реНрд╡рд╛рдореА рдХреЗ рдЗрд╕ рдкрддреЗ рдкрд░ рдкрд╣реБрдВрдЪрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡реАрдЖрдИрдкреА рдХреЗ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рд╡рд╛рд▓реЗ рд╕рд░реНрд╡рд░ рдХреЛ рдкрд╣рд▓реЗ рдЗрд╕реЗ рдЬрд╛рд░реА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреБрдЫ рдЕрд╡рд╛рдВрдЫрдиреАрдп рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ:


  • рд╕рд╛рдорд╛рдиреНрдп рдореЛрдб рдореЗрдВ, рдлреЗрд▓рдУрд╡рд░ рд╕рд┐рд╕реНрдЯрдо рдкрд╣рд▓реЗ рдЕрд╕рдлрд▓ рдореБрдЦреНрдп рдиреЛрдб рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдЧрд╛ рдФрд░ рд╡реАрдЖрдИрдкреА рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░реЗрдЧрд╛, рдФрд░ рдлрд┐рд░ рд╡реАрдЖрдИрдкреА рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдирдП рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдкрд╣рд▓рд╛ рдореБрдЦреНрдп рдиреЛрдб рдЕрдиреБрдкрд▓рдмреНрдз рд╣реИ рдпрд╛ рд╡реАрдЖрдИрдкреА рдкрддреЗ рдХреЛ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рдордирд╛ рдХрд░ рджреЗрддрд╛ рд╣реИ? рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╕рд░реНрд╡рд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╡рд┐рдлрд▓рддрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ, рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдордп рдореЗрдВ рдПрдХ рдЕрдиреБрд░реЛрдз рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ рдпрд╛ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдЧрд╛ред
    1. рдирддреАрдЬрддрди, рдПрдХ рд╕реНрдерд┐рддрд┐ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрдм рджреЛ рдореЗрдЬрдмрд╛рди рдПрдХ рд╣реА рд╡реАрдЖрдИрдкреА рдХреЗ рдЕрдкрдиреЗ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВред рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреНрд▓рд╛рдЗрдВрдЯ рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рд░реНрд╡рд░ рд╕реЗ рд╕рдмрд╕реЗ рдЫреЛрдЯреЗ рдиреЗрдЯрд╡рд░реНрдХ рдкрде рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЬреБрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
    2. рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рд╣реА рд╕рдВрдЪрд╛рд▓рди рджреЛ рд╕реНрд╡рддрдВрддреНрд░ рд╕рд░реНрд╡рд░реЛрдВ рдХреА рдмрд╛рддрдЪреАрдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдРрд╕рд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИред
  • рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдкрд╣рд▓рд╛ рдореБрдЦреНрдп рдиреЛрдб рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдореВрд▓реНрдпрд╡рд╛рди рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░рддреЗ рд╣реИрдВ: рдЬрдм рд╣рдо рдкреБрд░рд╛рдиреЗ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдирдП рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрд╡рд┐рдЪ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
  • рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡реАрдЖрдИрдкреА рдХреЗ рдкреБрдирд░реНрдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рднреА, рдЗрд╕ рдмрд╛рдд рдХреА рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреБрд░рд╛рдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ рдореМрдЬреВрджрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрдиреЗрдХреНрд╢рди рдХрд╛рдЯ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдлрд┐рд░, рд╣рдо рджреЛ рд╕реНрд╡рддрдВрддреНрд░ рдореБрдЦреНрдп рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдиреЗ рдХрд╛ рдЬреЛрдЦрд┐рдо рдЪрд▓рд╛рддреЗ рд╣реИрдВред

рдпрд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ, рд╣рдорд╛рд░реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рднреАрддрд░, рд╡реАрдЖрдИрдкреА рдкрддреЗ рдПрдХ рднреМрддрд┐рдХ рд╕реНрдерд╛рди рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕реНрд╡рд┐рдЪ рдпрд╛ рд░рд╛рдЙрдЯрд░ рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдХреЗрд╡рд▓ рд╡реАрдЖрдИрдкреА рд╣реЛрд╕реНрдЯ рдХреЗ рдореВрд▓ рдкрд░рд┐рд╡реЗрд╢ рдХреЗ рд╕рдорд╛рди рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕реНрдерд┐рдд рдХрд┐рд╕реА рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рд╡реАрдЖрдИрдкреА рдкрддреЗ рдХреЛ рдкреБрди: рдЕрд╕рд╛рдЗрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╣рдо рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рдореЗрдВ рд╡реАрдЖрдИрдкреА рд╕рд░реНрд╡рд░ рдХреЛ рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдВрдЧреЗ рдФрд░ DNS рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред


  • DNS рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдЧреНрд░рд╛рд╣рдХ рд╕рдордп рдХреЗ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП DNS рдирд╛рдореЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред рдХрдИ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓рддрд╛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЬрд╛рд░реА рд░рд╣рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдирдП рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред

рдпреЗ рдкреНрд░рддрд┐рдмрдВрдз рд╣рдореЗрдВ рдПрдХ рдирдП рд╕рдорд╛рдзрд╛рди рдХреА рдЦреЛрдЬ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдереЗ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд╛рддреЛрдВ рдХрд╛ рднреА рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдерд╛:


  • рджреЗрд░реА рдФрд░ рд▓реЛрдб рд╡рд┐рдирд┐рдпрдорди рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдиреЛрдбреНрд╕ рдиреЗ pt-heartbeat рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдкрд▓реНрд╕ рдкреИрдХреЗрдЯ рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд┐рдпрд╛ред рд╕реЗрд╡рд╛ рдХреЛ рдирд╡ рдирд┐рдпреБрдХреНрдд рдореБрдЦреНрдп рдиреЛрдб рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдерд╛ред рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ, рддреЛ рдЗрд╕реЗ рдкреБрд░рд╛рдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред
  • рдЗрд╕реА рддрд░рд╣, рдореБрдЦреНрдп рдиреЛрдбреНрд╕ рдиреЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╕реНрдпреВрдбреЛ-рдЬреАрдЯреАрдЖрдИрдбреА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ред рдирдП рдореБрдЦреНрдп рдиреЛрдб рдкрд░ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╢реБрд░реВ рдХрд░рдирд╛ рдФрд░ рдкреБрд░рд╛рдиреЗ рдкрд░ рд░реЛрдХрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
  • рдирдпрд╛ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рд▓реЗрдЦрди рдпреЛрдЧреНрдп рдмрди рдЧрдпрд╛ред рдкреБрд░рд╛рдирд╛ рдиреЛрдб (рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ) read_only (рдХреЗрд╡рд▓ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрди рдЕрддрд┐рд░рд┐рдХреНрдд рдХрджрдореЛрдВ рдиреЗ рд╕рдордЧреНрд░ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреА рдФрд░ рд╡рд┐рдлрд▓рддрд╛ рдФрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдЕрдкрдиреЗ рдЕрдВрдХ рдЬреЛрдбрд╝реЗред


рд╕рдорд╛рдзрд╛рди рдХрд╛рдо рдХрд┐рдпрд╛, рдФрд░ GitHub рдиреЗ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ MySQL рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рдВрднрд╛рд▓рд╛, рд▓реЗрдХрд┐рди рд╣рдо рд╣рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ:


  • рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛;
  • рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЧрд╛рд░рдВрдЯреА;
  • рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рд╣рдпреЛрдЧреА рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╛ рддреНрдпрд╛рдЧ рдХрд░реЗрдВ
  • рдХреБрд▓ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХрдо рдХрд░реЗрдВ;
  • рдкреНрд░рджрд░реНрд╢рди рдХрд░реЗрдВ, рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрд╕рдВрднрд╡ рд╣реЛ, рдмрд┐рдирд╛ рдиреБрдХрд╕рд╛рди рдХреЗ рдЕрд╕рдлрд▓рддрд╛ред

рдЧрд┐рдЯрд╣рдм рд╣рд╛ рд╕рдорд╛рдзрд╛рди: рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░, рдХреЙрдиреНрд╕реБрд▓, рдЬреАрдПрд▓рдмреА


рд╣рдорд╛рд░реА рдирдИ рд░рдгрдиреАрддрд┐, рд╕рд╛рде-рд╕рд╛рде рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде, рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддреА рд╣реИ, рдпрд╛ рдЙрдирдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХрдо рдХрд░рддреА рд╣реИред рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рд╣рд╛ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:


  • рдЧрд▓рддреА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рд▓рд┐рдП рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ ред рд╣рдо рдХрдИ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ / рдмреЗрдбрд╝рд╛ рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ;
  • рд╕реЗрд╡рд╛ рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рд╣реИрд╢рд┐рдХреЙрд░реНрдк рдХрдВрд╕рд▓ ;
  • GLB / HAProxy рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдиреЛрдбреНрд╕ рдХреЗ рдмреАрдЪ рдПрдХ рдкреНрд░реЙрдХреНрд╕реА рдкрд░рдд рдХреЗ рд░реВрдк рдореЗрдВред GLB рдирд┐рджреЗрд╢рдХ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рдЦреБрд▓рд╛ рд╣реИ;
  • рдиреЗрдЯрд╡рд░реНрдХ рдорд╛рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреА рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреАред

рдЫрд╡рд┐


рдирдИ рдпреЛрдЬрдирд╛ рдиреЗ рд╡реАрдЖрдИрдкреА рдФрд░ рдбреАрдПрдирдПрд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ред рдЕрдм рдирдП рдШрдЯрдХреЛрдВ рдХреЛ рдкреЗрд╢ рдХрд░рддреЗ рд╕рдордп, рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд╛рд░реНрдп рдХреЛ рд╕рд░рд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдФрд░ рд╕реНрдерд┐рд░ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдорд┐рд▓рд╛ред рдирдП рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред


рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рд╡рд╛рд╣


рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЕрдиреБрдкреНрд░рдпреЛрдЧ GLB / HAProxy рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдиреЛрдб рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрддреЗ рд╣реИрдВред


рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдореБрдЦреНрдп рд╕рд░реНрд╡рд░ рдХреА рдкрд╣рдЪрд╛рди рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИред рдкрд╣рд▓реЗ рдХреА рддрд░рд╣, рд╡реЗ рдХреЗрд╡рд▓ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, cluster1 рд▓рд┐рдП рдореБрдЦреНрдп рдиреЛрдб cluster1 рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ, рдпрд╣ рдирд╛рдо рдХрд┐рд╕реА рднреА рдЖрдИрдкреА рдкрддреЗ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред


рдХрд┐рд╕реА рднреА рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдирд╛рдо рдХреЛ рдХрд╣реАрдВ рднреА рдЙрд╕реА рдЖрдИрдкреА рдкрддреЗ рдкрд░ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд╕реНрдерд╛рди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, GLB рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг, рд╣рдорд╛рд░реЗ рдЕрддреНрдпрдзрд┐рдХ рдЙрдкрд▓рдмреНрдз рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░, рд╣рдорд╛рд░реЗ рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдореЗрдВ рддреИрдирд╛рдд рд╣реИрдВред mysql-writer-1.github.net рдкрд░ mysql-writer-1.github.net рд╣рдореЗрд╢рд╛ рд╕реНрдерд╛рдиреАрдп рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдХреЗ GLB рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд░реВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдХрд╛рд░рдг, рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рд╕реНрдерд╛рдиреАрдп рдкреНрд░реЙрдХреНрд╕реА рджреНрд╡рд╛рд░рд╛ рд╕реЗрд╡рд╛ рджреА рдЬрд╛рддреА рд╣реИред


рд╣рдо HAProxy рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ GLB рдЪрд▓рд╛рддреЗ рд╣реИрдВред рд╣рдорд╛рд░рд╛ HAProxy рд╕рд░реНрд╡рд░ рдкреВрд▓ рд▓рд┐рдЦрддрд╛ рд╣реИ : рдкреНрд░рддреНрдпреЗрдХ MySQL рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд▓рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рддреНрдпреЗрдХ рдкреВрд▓ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╕рд░реНрд╡рд░ (рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдореБрдЦреНрдп рдиреЛрдб) рд╣реЛрддрд╛ рд╣реИред рд╕рднреА рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рд╕рднреА GLB / HAProxy рдЗрдВрд╕реНрдЯреЗрдВрд╕реЗрд╕ рдореЗрдВ рдПрдХ рд╣реА рдкреВрд▓ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рд╕рднреА рдЗрди рдкреВрд▓ рдореЗрдВ рдПрдХ рд╣реА рд╕рд░реНрд╡рд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрджрд┐ рдЖрд╡реЗрджрди рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ mysql-writer-1.github.net рдкрд░ рдбреЗрдЯрд╛ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдпрд╣ рдХрд┐рд╕ GLB рд╕рд░реНрд╡рд░ рд╕реЗ рдЬреБрдбрд╝рддрд╛ рд╣реИред рдпрд╛ рддреЛ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореБрдЦреНрдп рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдб рдХреНрд▓рд╕реНрдЯрд░ 1 рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред


рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдЦреЛрдЬ GLB рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддреА рд╣реИ, рдФрд░ рдкреБрдирдГ рдЦреЛрдЬ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдпрд╣ GLB рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рд╕рд╣реА рдЬрдЧрд╣ рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред


рдЬреАрдПрд▓рдмреА рдХреЛ рдХрд╣рд╛рдВ рд╕реЗ рд╕рд░реНрд╡рд░ рдХреА рд╕реВрдЪреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдорд┐рд▓рддреА рд╣реИ? рд╣рдо GLB рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?


рдХреМрдВрд╕рд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреЛрдЬ


рдХреМрдВрд╕рд▓ рд╕реЗрд╡рд╛ рдХреЛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╕реЗрд╡рд╛ рдЦреЛрдЬ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдбреАрдПрдирдПрд╕ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдЗрд╕реЗ рдкреНрд░рдореБрдЦ рдореВрд▓реНрдпреЛрдВ (KV) рдХреЗ рдЕрддреНрдпрдзрд┐рдХ рд╕реБрд▓рдн рднрдВрдбрд╛рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред


рдХрдВрд╕реБрд▓ рдореЗрдВ рдХреЗрд╡реА рднрдВрдбрд╛рд░ рдореЗрдВ, рд╣рдо рдореБрдЦреНрдп рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕ рдХреА рдкрд╣рдЪрд╛рди рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд▓рд┐рдП, рд╕рдВрдмрдВрдзрд┐рдд рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ KV рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ: рдЗрд╕рдХрд╛ fqdn , port, ipv4 рдФрд░ ipv6 рдПрдбреНрд░реЗрд╕ред


рдкреНрд░рддреНрдпреЗрдХ GLB / HAProxy рдиреЛрдб рдПрдХ рдХреЙрдиреНрд╕рд▓-рдЯреЗрдореНрдкрд▓реЗрдЯ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рд╕реЗрд╡рд╛ рдЬреЛ рдХреЙрдиреНрд╕рд▓ рдбреЗрдЯрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдЯреНрд░реИрдХ рдХрд░рддреА рд╣реИ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореБрдЦреНрдп рдиреЛрдбреНрд╕ рдХреЗ рдбреЗрдЯрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди)ред рдХрдВрд╕реЛрд▓ consul-template рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддреА рд╣реИ рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдмрджрд▓рддреЗ рд╕рдордп HAProxy рдХреЛ рдкреБрдирдГ рд▓реЛрдб рдХрд░ рд╕рдХрддреА рд╣реИред


рдЗрд╕рдХреЗ рдХрд╛рд░рдг, рдХреЙрдиреНрд╕рд▓ рдореЗрдВ рдореБрдЦреНрдп рдиреЛрдб рдХреА рдкрд╣рдЪрд╛рди рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рддреНрдпреЗрдХ GLB / HAProxy рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдирдП рдореБрдЦреНрдп рдиреЛрдбреНрд╕ рдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдкреВрд▓ рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рдЗрдХрд╛рдИ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрди: рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рд╣рдордиреЗ рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдореЗрдВ рдХреЙрдиреНрд╕реБрд▓ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпреЗ рдЙрджрд╛рд╣рд░рдг рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИрдВред рд╡реЗ рдХрд┐рд╕реА рднреА рдбреЗрдЯрд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред


рдХреЙрдиреНрд╕рд▓ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХрд╣рд╛рдВ рд╕реЗ рдорд┐рд▓рддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдмреАрдЪ рдХреИрд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?


рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ / рдмреЗрдбрд╝рд╛


рд╣рдо orchestrator/raft рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ: orchestrator рдиреЛрдбреНрд╕ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЖрдо рд╕рд╣рдорддрд┐ рд╕реЗ рд╕рдВрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдпрд╛ рджреЛ orchestrator рдиреЛрдб рд╣реЛрддреЗ рд╣реИрдВред


orchestrator рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, MySQL рд╡рд┐рдлрд▓рддрд╛, рдФрд░ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдбреЗрдЯрд╛ рдХреЛ рдХреЙрдиреНрд╕реБрд▓ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ред рдлрд╝реЗрд▓рдУрд╡рд░ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдПрдХрд▓ orchestrator/raft рд╣реЛрд╕реНрдЯ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рд╡рд░реНрддрди , рд╕рдорд╛рдЪрд╛рд░ рдХрд┐ рдХреНрд▓рд╕реНрдЯрд░ рдЕрдм рдПрдХ рдирдпрд╛ рдорд╛рд╕реНрдЯрд░ рд╣реИ, рд╕рднреА orchestrator рдиреЛрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ raft рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


рдЬрдм orchestrator рдиреЛрдбреНрд╕ рдХреЛ рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рдбреЗрдЯрд╛ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЦрдмрд░ рдорд┐рд▓рддреА рд╣реИ, рддреЛ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрдиреНрд╕рд▓ рдХреЗ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рдЙрджрд╛рд╣рд░рдг рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡реА рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред orchestrator рдХрдИ рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЛ рдХрдВрд╕рд▓ рдореЗрдВ рдХрдИ (рд╕рдорд╛рди) рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рд╛рдкреНрдд рд╣реЛрдВрдЧреЗред


рд╕рдВрдкреВрд░реНрдг рдзрд╛рд░рд╛ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдг


рдпрджрд┐ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ:


  • orchestrator рдиреЛрдбреНрд╕ рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реИрдВ;
  • orchestrator/raft рдорд╛рд╕реНрдЯрд░ рд╡рд╕реВрд▓реА рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред рдПрдХ рдирдпрд╛ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ;
  • orchestrator/raft рдпреЛрдЬрдирд╛ рдореБрдЦреНрдп рдиреЛрдб рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ raft рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рднреА рдиреЛрдбреНрд╕ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ;
  • orchestrator/raft рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдиреЛрдб рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИ рдФрд░ рдХреМрдВрд╕реБрд▓ рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рдХреЗрд╡реА рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдирдП рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдХреА рдкрд╣рдЪрд╛рди рд▓рд┐рдЦрддрд╛ рд╣реИ;
  • рдкреНрд░рддреНрдпреЗрдХ GLB / HAProxy рдЙрджрд╛рд╣рд░рдг рдкрд░, consul-template рд╕реЗрд╡рд╛ рд▓реЙрдиреНрдЪ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ Consul рдореЗрдВ KV рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рддреА рд╣реИ, HAProxy рдХреЛ рдкреБрди: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдФрд░ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рддреА рд╣реИ;
  • рдХреНрд▓рд╛рдЗрдВрдЯ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рдирдП рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдореЗрдВ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП, рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпреЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╕рдВрдкреВрд░реНрдг рд╕рдВрд░рдЪрдирд╛ рд╡рд┐рд╡рд┐рдз рдФрд░ рд╕рд░рд▓реАрдХреГрдд рд╣реЛрддреА рд╣реИред orchestrator рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХреМрдВрд╕реБрд▓ рдХреЛ рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЙрддреНрдкрддреНрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рдХреЗрд╡рд▓ рдХреЙрдиреНрд╕рд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЧреНрд░рд╛рд╣рдХ рдХреЗрд╡рд▓ рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛:


  • DNS рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкреНрд░рд╕рд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ;
  • рдЯреАрдЯреАрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ;
  • рдереНрд░реЗрдб рдПрдХ рддреНрд░реБрдЯрд┐ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрд╕реНрдЯ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА


рдкреНрд░рд╡рд╛рд╣ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реАрдХреЗ рднреА рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:


  • HAProxy hard-stop-after рдкреИрд░рд╛рдореАрдЯрд░ рдмрд╣реБрдд рдЫреЛрдЯреЗ рдорд╛рди рдкрд░ рд╕реЗрдЯ рд╣реИред рдЬрдм рд▓реЗрдЦрди рдкреВрд▓ рдореЗрдВ рдирдП рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде HAProxy рд░рд┐рдмреВрдЯ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╕рд░реНрд╡рд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреБрд░рд╛рдиреЗ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдХреЗ рд╕рднреА рдореМрдЬреВрджрд╛ рдХрдиреЗрдХреНрд╢рди рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИред
    1. hard-stop-after рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рдЖрдкрдХреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдХрд┐рд╕реА рднреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рджреЛ рдореБрдЦреНрдп рдиреЛрдбреНрд╕ рдХреА рд╕рдВрднрд╛рд╡рд┐рдд рдШрдЯрдирд╛ рдХреЗ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдХреЛрдИ рдЬрд╛рджреВ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреБрд░рд╛рдиреЗ рд╕рдВрдмрдВрдзреЛрдВ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдЫ рд╕рдордп рдЧреБрдЬрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рдордп рдХрд╛ рдПрдХ рдмрд┐рдВрджреБ рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╣рдо рдЕрдкреНрд░рд┐рдп рдЖрд╢реНрдЪрд░реНрдп рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рд╣рдореЗрдВ рдХреЙрдиреНрд╕рд▓ рд╕реЗрд╡рд╛ рдХреА рдирд┐рд░рдВрддрд░ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдореЗрдВ рдпрд╣ рдХреЗрд╡рд▓ рдЕрд╕рдлрд▓рддрд╛ рдХреЗ рджреМрд░рд╛рди рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рдХреЙрдиреНрд╕реБрд▓ рд╕реЗрд╡рд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗ рд░рд╣реА рд╣реИ, рддреЛ рдЬреАрдПрд▓рдмреА рдирд╡реАрдирддрдо рдЬреНрдЮрд╛рдд рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдХрдареЛрд░ рдЙрдкрд╛рдп рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
  • GLB рдХреЛ рдирдП рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЧрдП рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдХреА рдкрд╣рдЪрд╛рди рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рд╕рдВрджрд░реНрдн рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ MySQL рдкреВрд▓ рдХреЗ рд╕рд╛рде , рдпрд╣ рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪреЗрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИред рдпрджрд┐ рд╣рдо рдЧрд▓рддреА рд╕реЗ рдХреМрдВрд╕реБрд▓ рдореЗрдВ рдореБрдЦреНрдп рдиреЛрдб рдХреА рдкрд╣рдЪрд╛рди рдХреЛ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдПрдХ рдЦрд╛рд▓реА рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рд╣рдо рдЧрд╝рд▓рддреА рд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рд░реНрд╡рд░ (рдореБрдЦреНрдп рдирд╣реАрдВ) рдХрд╛ рдирд╛рдо рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдареАрдХ рд╣реИ: рдЬреАрдПрд▓рдмреА рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдФрд░ рдЕрдВрддрд┐рдо рд╡реИрдз рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ, рд╣рдо рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ рдФрд░ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреЗ рд▓рдХреНрд╖реНрдпреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддреЗ рд╣реИрдВред


рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ / рдмреЗрдбрд╝рд╛ рдХреЗ рд╕рд╛рде рдХреНрд░реИрд╢ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛


orchestrator рдЧрд▓рддреА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╛рдкрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд▓реЗрддрд╛ рд╣реИ, рдЬреЛ рдЙрдкрдХрд░рдг рдХреА рдЙрдЪреНрдЪ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЭреВрдареЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХреЛ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред


orchestrator/raft рд╕рд░реНрдХрд┐рдЯрд░реА рднреА рдбрд╛рдЯрд╛ рд╕реЗрдВрдЯрд░ (рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдмрд╛рдбрд╝) рдХреЗ рдкреВрд░реНрдг рдиреЗрдЯрд╡рд░реНрдХ рдЕрд▓рдЧрд╛рд╡ рдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реИред рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЕрд▓рдЧрд╛рд╡ рднреНрд░рдо рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ: рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдХреЗ рдЕрдВрджрд░ рд╕рд░реНрд╡рд░ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреИрд╕реЗ рд╕рдордЭрд╛ рдЬрд╛рдП рдХрд┐ рдХреМрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд▓рдЧ-рдерд▓рдЧ рд╣реИ - рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рдпрд╛ рдЕрдиреНрдп рд╕рднреА рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдЕрдВрджрд░ рд╕рд░реНрд╡рд░?


orchestrator/raft рдпреЛрдЬрдирд╛ рдореЗрдВ, orchestrator/raft рдорд╛рд╕реНрдЯрд░ рд╡рд┐рдлрд▓рддрд╛ рд╣реИред рдиреЛрдб рдиреЗрддрд╛ рдмрди рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╕рдореВрд╣ (рдХреЛрд░рдо) рдореЗрдВ рдмрд╣реБрдордд рдХрд╛ рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рд╣рдордиреЗ orchestrator рдиреЛрдб рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдПрдХрд▓ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рдмрд╣реБрдордд рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдХреЛрдИ рднреА n-1 рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рдЗрд╕реЗ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред


рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдХреЗ рдкреВрд░реНрдг рдиреЗрдЯрд╡рд░реНрдХ рдЕрд▓рдЧрд╛рд╡ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕ рдХреЗрдВрджреНрд░ рдореЗрдВ orchestrator рдиреЛрдбреНрд╕ рдХреЛ рдЕрдиреНрдп рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рд╕рдорд╛рди рдиреЛрдбреНрд╕ рд╕реЗ рдХрд╛рдЯ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдПрдХ рдкреГрдердХ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдореЗрдВ orchestrator рдиреЛрдбреНрд╕ рдПрдХ raft рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдЕрдЧреНрд░рдгреА рдирд╣реАрдВ рдмрди рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдРрд╕рд╛ рдиреЛрдб рдорд╛рд╕реНрдЯрд░ рдерд╛, рддреЛ рдпрд╣ рд╕реНрдерд┐рддрд┐ рдЦреЛ рджреЗрддрд╛ рд╣реИред рдПрдХ рдирдпрд╛ рд╣реЛрд╕реНрдЯ рдЕрдиреНрдп рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдиреЛрдб рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдиреЗрддрд╛ рдХреЗ рдкрд╛рд╕ рдЕрдиреНрдп рд╕рднреА рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рд╣реЛрдЧрд╛ рдЬреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЗрд╕ рддрд░рд╣, orchestrator рдорд╛рд╕реНрдЯрд░ рд╣рдореЗрд╢рд╛ рдиреЗрдЯрд╡рд░реНрдХ-рдкреГрдердХ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдХреЗ рдмрд╛рд╣рд░ рд░рд╣реЗрдЧрд╛ред рдпрджрд┐ рдорд╛рд╕реНрдЯрд░ рдиреЛрдб рдПрдХ рдкреГрдердХ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рдореЗрдВ рд╕реНрдерд┐рдд рдерд╛, рддреЛ orchestrator рдЙрдкрд▓рдмреНрдз рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЙрдкрд▓рдмреНрдз рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдХреЛрд░рдо рдХреЛ рдирд┐рд░реНрдгрдп рд╕реМрдВрдкрдХрд░ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдЕрд▓рдЧрд╛рд╡ рдХреЗ рдкреНрд░рднрд╛рд╡ рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВред


рддреЗрдЬрд╝ рдЕрдзрд┐рд╕реВрдЪрдирд╛


рдореБрдЦреНрдп рдиреЛрдб рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЛ рдЧрддрд┐ рджреЗрдХрд░ рдХреБрд▓ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХреЛ рдФрд░ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдП?


рдЬрдм orchestrator рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдореБрдЦреНрдп рдХреЗ рд░реВрдк рдореЗрдВ рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░рддрд┐рдХреГрддрд┐ рдирд┐рдпрдореЛрдВ, рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдФрд░ рд╕реАрдорд╛рдУрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╡рд╣ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЗ рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╡рд╣ рдпрд╣ рднреА рд╕рдордЭ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╕реБрд▓рдн рд╕рд░реНрд╡рд░ рдореБрдЦреНрдп рдирд┐рдпреБрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрджрд░реНрд╢ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реИ :


  • рдХреБрдЫ рднреА рд╕рд░реНрд╡рд░ рдХреЛ рдКрдВрдЪрд╛ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ (рдФрд░ рд╢рд╛рдпрдж рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рд╕рд░реНрд╡рд░ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реИ);
  • рдпрд╣ рдЙрдореНрдореАрдж рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреНрдп рд╕рднреА рд╕рд░реНрд╡рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, orchestrator рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╕рд░реНрд╡рд░ рдХреЛ рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рддреБрд░рдВрдд рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рддрд╛ рд╣реИ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдХрдВрд╕рд▓ рдореЗрдВ рдХреЗрд╡реА рднрдВрдбрд╛рд░ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рд▓рд┐рдЦрддрд╛ рд╣реИ)ред orchestrator , .


, , GLB , , . : !



MySQL , . : , , , .


, . , , . , , , .


: 500 . . ( ), .


( ) . , .


, . , , . , , , .



, / pt-heartbeat / , . , pt-heartbeat , read_only , .


pt-heartbeat , . . . , pt-heartbeat .


orchestrator


orchestrator :


  • Pseudo-GTID;
  • , ;
  • ( read_only ), .

, . , , , . orchestrator .



- , , . , -, .


, .


, , , - . . STONITH . , , , ┬л┬╗ - . , , .


: Consul , . . , , , , .



orchestrator/GLB/Consul :


  • ;
  • ;
  • ;
  • ;
  • , ( );
  • ;
  • 10-13 .
    1. 20 , тАФ 25 .

рдирд┐рд╖реНрдХрд░реНрд╖


┬л// ┬╗ , , . . , .

Source: https://habr.com/ru/post/hi432088/


All Articles