рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ

рдирдорд╕реНрддреЗ, Habr! рдо Artem Karamyshev, рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╢рд╛рд╕рди рдЯреЛрд▓реА рдкреНрд░рдореБрдЦ рд╣реБрдБ Mail.Ru Cloud Solutions (MCS)ред рд╣рд╛рдореАрд▓реЗ рдЧрдд рд╡рд░реНрд╖рдорд╛ рдзреЗрд░реИ рдирдпрд╛рдБ рдЙрддреНрдкрд╛рджрдирд╣рд░реВ рд▓рдиреНрдЪ рдЧрд░реЗрдХрд╛ рдЫреМрдВред рд╣рд╛рдореА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдереНрдпреМрдВ рдХрд┐ API рд╕реЗрд╡рд╛рд╣рд░реВ рд╕рдЬрд┐рд▓реИ рдорд╛рдкрдирдпреЛрдЧреНрдп, рддреНрд░реБрдЯрд┐-рд╕рд╣рдирд╢реАрд▓ рд░ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд▓реЛрдбрдорд╛ рджреНрд░реБрдд рд╡реГрджреНрдзрд┐рдХреЛ рд▓рд╛рдЧрд┐ рддрдпрд╛рд░ рдЫрдиреНред рд╣рд╛рдореНрд░реЛ рдкреНрд▓реЗрдЯрдлрд░реНрдо рдУрдкрдирд╕реНрдЯреНрдпрд╛рдХрдорд╛ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫ, рд░ рдо рддрдкрд╛рдИрдВрд▓рд╛рдИ рджреЛрд╖-рд╕рд╣рд┐рд╖реНрдгреБ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╣рд╛рдореАрд▓реЗ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрдиреБрдкрд░реНрдиреЗ рдХрдореНрдкреЛрдиреЗрдиреНрдЯ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдмрддрд╛рдЙрди рдЪрд╛рд╣рдиреНрдЫреБред рдорд▓рд╛рдИ рд▓рд╛рдЧреНрдЫ рдХрд┐ рдпреЛ OpenStack рдорд╛ рдЙрддреНрдкрд╛рджрдирд╣рд░реВ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрдиреЗрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд░реЛрдЪрдХ рд╣реБрдиреЗрдЫред

рдкреНрд▓реЗрдЯрдлрд░реНрдордХреЛ рд╕рдордЧреНрд░ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛рдорд╛ рдпрд╕рдХреЛ рдШрдЯрдХрд╣рд░реВрдХреЛ рд▓рдЪрд┐рд▓реЛрдкрди рд╕рдорд╛рд╡реЗрд╢ рд╣реБрдиреНрдЫред рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореА рдмрд┐рд╕реНрддрд╛рд░реИ рд╕рдмреИ рд╕реНрддрд░рд╣рд░реВ рдкрд╛рд░ рдЧрд░реНрдиреЗрдЫреМрдВ рдЬрд╣рд╛рдБ рд╣рд╛рдореАрд▓реЗ рдЬреЛрдЦрд┐рдорд╣рд░реВ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрдпреМрдВ рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдмрдиреНрдж рдЧрд░реНрдпреМрдВред

рдпрд╕ рдХрдерд╛рдХреЛ рднрд┐рдбрд┐рдпреЛ рд╕рдВрд╕реНрдХрд░рдг, рдЬрд╕рдХреЛ рдкреНрд░рд╛рдердорд┐рдХ рд╕реНрд░реЛрдд рдЕрдкрдЯрд╛рдЗрдо рджрд┐рди 4 рд╕рдореНрдореЗрд▓рдирдорд╛ рдПрдХ рд░рд┐рдкреЛрд░реНрдЯ рдерд┐рдпреЛ, рджреНрд╡рд╛рд░рд╛ рдЖрдпреЛрдЬрд┐рдд рд╕реБрдореНрдорд╛, рддрдкрд╛рдИрдВ рд╣реЗрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ Uptime рд╕рдореБрджрд╛рдп YouTube рдЪреНрдпрд╛рдирд▓рдорд╛.

рднреМрддрд┐рдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЛ рд▓рдЪреАрд▓рд╛рдкрди

MCS рдХреНрд▓рд╛рдЙрдбрдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрд╛рдЧ рдЕрдм рджреБрдИ рдЯрд┐рдпрд░ III рдбреЗрдЯрд╛ рдХреЗрдиреНрджреНрд░рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫ, рддрд┐рдиреАрд╣рд░реВрдХреЛ рдмреАрдЪрдорд╛ рддреНрдпрд╣рд╛рдБ рдпрд╕рдХреЛ рдЖрдлреНрдиреИ рдбрд╛рд░реНрдХ рдлрд╛рдЗрдмрд░ рдЫ, рднреМрддрд┐рдХ рд╕реНрддрд░рдорд╛ 200 Gbit/s рдХреЛ рдереНрд░реБрдкреБрдЯрдХреЛ рд╕рд╛рде, рд╡рд┐рднрд┐рдиреНрди рдорд╛рд░реНрдЧрд╣рд░реВрджреНрд╡рд╛рд░рд╛ рдЖрд░рдХреНрд╖рд┐рддред рдЯрд┐рдпрд░ III рд▓реЗ рднреМрддрд┐рдХ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ рдЖрд╡рд╢реНрдпрдХ рд╕реНрддрд░рдХреЛ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред

рдЧрд╛рдврд╛ рдлрд╛рдЗрдмрд░ рджреБрдмреИ рднреМрддрд┐рдХ рд░ рддрд╛рд░реНрдХрд┐рдХ рд╕реНрддрд░рд╣рд░реВрдорд╛ рдЖрд░рдХреНрд╖рд┐рдд рдЫред рдЪреНрдпрд╛рдирд▓ рд░рд┐рдЬрд░реНрднреЗрд╕рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдерд┐рдпреЛ, рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдЙрддреНрдкрдиреНрди рднрдпреЛ, рд░ рд╣рд╛рдореА рдирд┐рд░рдиреНрддрд░ рдбрд╛рдЯрд╛ рдХреЗрдиреНрджреНрд░рд╣рд░реВ рдмреАрдЪ рд╕рдЮреНрдЪрд╛рд░ рд╕реБрдзрд╛рд░ рдЧрд░реНрджреИрдЫреМрдВред

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

рдбрд╛рдЯрд╛ рдХреЗрдиреНрджреНрд░рд╣рд░реВрдорд╛ рд╕рдЮреНрдЪрд╛рд░ рдкреНрд░рджрд╛рдпрдХрд╣рд░реВрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдХреЛ рдмрд┐рдиреНрджреБрд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓рд╛рдИ рд╣рд╛рдореАрд▓реЗ BGP рдорд╛рд░реНрдлрдд рд╣рд╛рдореНрд░реЛ рдЙрдкрд╕рд░реНрдЧрд╣рд░реВ рдкреНрд░рд╕рд╛рд░рдг рдЧрд░реНрдЫреМрдВред рдкреНрд░рддреНрдпреЗрдХ рдиреЗрдЯрд╡рд░реНрдХ рджрд┐рд╢рд╛рдХреЛ рд▓рд╛рдЧрд┐, рдЙрддреНрдХреГрд╖реНрдЯ рдореЗрдЯреНрд░рд┐рдХ рдЪрдпрди рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓рд╛рдИ рдЙрддреНрдХреГрд╖реНрдЯ рдЬрдбрд╛рди рдЧреБрдгрд╕реНрддрд░ рдкреНрд░рджрд╛рди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдпрджрд┐ рдПрдХ рдкреНрд░рджрд╛рдпрдХ рдорд╛рд░реНрдлрдд рд╕рдЮреНрдЪрд╛рд░ рдХрдо рд╣реБрдиреНрдЫ рднрдиреЗ, рд╣рд╛рдореА рдЙрдкрд▓рдмреНрдз рдкреНрд░рджрд╛рдпрдХрд╣рд░реВ рдорд╛рд░реНрдлрдд рд╣рд╛рдореНрд░реЛ рдорд╛рд░реНрдЧ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрдЫреМрдВред

рдпрджрд┐ рдкреНрд░рджрд╛рдпрдХ рдЕрд╕рдлрд▓ рднрдпреЛ рднрдиреЗ, рд╣рд╛рдореА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдЕрд░реНрдХреЛрдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрдЫреМрдВред рдбреЗрдЯрд╛ рдХреЗрдиреНрджреНрд░рд╣рд░реВ рдордзреНрдпреЗ рдПрдХрдХреЛ рд╡рд┐рдлрд▓рддрд╛рдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рд╣рд╛рдореАрд╕рдБрдЧ рджреЛрд╕реНрд░реЛ рдбрд╛рдЯрд╛ рдХреЗрдиреНрджреНрд░рдорд╛ рд╣рд╛рдореНрд░рд╛ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рдорд┐рд░рд░ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЫ, рдЬрд╕рд▓реЗ рд╕рдореНрдкреВрд░реНрдг рднрд╛рд░ рд▓рд┐рдиреНрдЫред

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
рднреМрддрд┐рдХ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдХреЛ рд▓рдЪрдХрддрд╛

рд╣рд╛рдореАрд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ-рд╕реНрддрд░ рдЧрд▓реНрддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдХреЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ

рд╣рд╛рдореНрд░реЛ рд╕реЗрд╡рд╛ рдзреЗрд░реИ рдУрдкрдирд╕реЛрд░реНрд╕ рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВрдорд╛ рдирд┐рд░реНрдорд┐рдд рдЫред

ExaBGP BGP-рдЖрдзрд╛рд░рд┐рдд рдбрд╛рдпрдирд╛рдорд┐рдХ рд░реВрдЯрд┐рдЩ рдкреНрд░реЛрдЯреЛрдХрд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдзреЗрд░реИ рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ рд╕реЗрд╡рд╛ рд╣реЛред рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рд╣рд╛рдореНрд░реЛ рд╣реНрд╡рд╛рдЗрдЯрд▓рд┐рд╕реНрдЯ рдЧрд░рд┐рдПрдХрд╛ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ рдЬрд╕рдХреЛ рдорд╛рдзреНрдпрдордмрд╛рдЯ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ API рдкрд╣реБрдБрдЪ рдЧрд░реНрдЫрдиреНред

HAProxy рдПрдХ рдЙрдЪреНрдЪ-рд▓реЛрдб рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░ рд╣реЛ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ OSI рдореЛрдбреЗрд▓рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░рд╣рд░реВрдорд╛ рдзреЗрд░реИ рд▓рдЪрд┐рд▓реЛ рдЯреНрд░рд╛рдлрд┐рдХ рд╕рдиреНрддреБрд▓рди рдирд┐рдпрдорд╣рд░реВ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рд╕рдмреИ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рдЕрдЧрд╛рдбрд┐ рд╕рдиреНрддреБрд▓рди рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ: рдбрд╛рдЯрд╛рдмреЗрд╕, рд╕рдиреНрджреЗрд╢ рдмреНрд░реЛрдХрд░рд╣рд░реВ, API рд╕реЗрд╡рд╛рд╣рд░реВ, рд╡реЗрдм рд╕реЗрд╡рд╛рд╣рд░реВ, рд╣рд╛рдореНрд░рд╛ рдЖрдиреНрддрд░рд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ - рд╕рдмреИ рдХреБрд░рд╛ HAProxy рдкрдЫрд╛рдбрд┐ рдЫред

API рдЕрдиреБрдкреНрд░рдпреЛрдЧ - рдкрд╛рдЗрдердирдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ, рдЬрд╕рдХреЛ рд╕рд╛рде рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓реЗ рдЖрдлреНрдиреЛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░ рд░ рд╕реЗрд╡рд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрджрдЫред

рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдЖрд╡реЗрджрди (рдпрд╕рдкрдЫрд┐ рдорд╛рддреНрд░ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛) - OpenStack рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛, рдпреЛ рдПрдХ рдкреВрд░реНрд╡рд╛рдзрд╛рд░ рдбреЗрдорди рд╣реЛ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдорд╛ API рдЖрджреЗрд╢рд╣рд░реВ рдкреНрд░рд╕рд╛рд░рдг рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдбрд┐рд╕реНрдХ рд╕рд┐рд░реНрдЬрдирд╛ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛рдорд╛ рд╣реБрдиреНрдЫ, рд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЕрдиреБрд░реЛрдз рдЕрдиреБрдкреНрд░рдпреЛрдЧ API рдорд╛ рд╣реБрдиреНрдЫред

рдорд╛рдирдХ OpenStack рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛

OpenStack рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдПрдХрд╛ рдзреЗрд░реИрдЬрд╕реЛ рд╕реЗрд╡рд╛рд╣рд░реВрд▓реЗ рдПрдХрд▓ рдкреНрд░рддрд┐рдорд╛рди рдкрдЫреНрдпрд╛рдЙрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдЫрдиреНред рд╕реЗрд╡рд╛рдорд╛ рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ реи рднрд╛рдЧрд╣рд░реВ рд╣реБрдиреНрдЫрдиреН: рдПрдкреАрдЖрдИ рд░ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛рд╣рд░реВ (рдмреНрдпрд╛рдХрдПрдиреНрдб рдирд┐рд╖реНрдкрд╛рджрдХрд╣рд░реВ)ред рдирд┐рдпрдордХреЛ рд░реВрдкрдорд╛, рдПрдкреАрдЖрдИ рдкрд╛рдЗрдердирдорд╛ рдПрдХ WSGI рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реЛ, рдЬреБрди рдпрд╛ рдд рд╕реНрд╡рддрдиреНрддреНрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ (рдбреЗрдорди) рдХреЛ рд░реВрдкрдорд╛ рд╕реБрд░реВ рдЧрд░рд┐рдПрдХреЛ рдЫ, рд╡рд╛ рддрдпрд╛рд░-рдирд┐рд░реНрдорд┐рдд Nginx рд╡рд╛ Apache рд╡реЗрдм рд╕рд░реНрднрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ред API рд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХреЛ рдЕрдиреБрд░реЛрдзрд▓рд╛рдИ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдЫ рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд▓рд╛рдИ рдердк рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдкрд╛рд╕ рдЧрд░реНрджрдЫред рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рд╕рдиреНрджреЗрд╢ рдмреНрд░реЛрдХрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╣реБрдиреНрдЫ, рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛ RabbitMQ, рдЕрд░реВрд╣рд░реВ рдХрдордЬреЛрд░ рд░реВрдкрдорд╛ рд╕рдорд░реНрдерд┐рдд рдЫрдиреНред рдЬрдм рд╕рдиреНрджреЗрд╢рд╣рд░реВ рдмреНрд░реЛрдХрд░рдорд╛ рдкреБрдЧреНрдЫрдиреН, рддрд┐рдиреАрд╣рд░реВ рдХрд╛рдорджрд╛рд░рд╣рд░реВрджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╢реЛрдзрди рд╣реБрдиреНрдЫрдиреН рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рдЬрд╡рд╛рдл рдлрд░реНрдХрд╛рдЙрдБрдЫрдиреНред

рдпреЛ рдкреНрд░рддрд┐рдорд╛рдирд▓реЗ рдЕрд╕рдлрд▓рддрд╛рдХреЛ рдкреГрдердХ рд╕рд╛рдЭрд╛ рдмрд┐рдиреНрджреБрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ: RabbitMQ рд░ рдбрд╛рдЯрд╛рдмреЗрд╕ред рддрд░ RabbitMQ рдПрдХ рд╕реЗрд╡рд╛ рднрд┐рддреНрд░ рдЕрд▓рдЧ рдЫ рд░, рд╕рд┐рджреНрдзрд╛рдиреНрддрдорд╛, рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣реБрди рд╕рдХреНрдЫред рддреНрдпрд╕реИрд▓реЗ MCS рдорд╛ рд╣рд╛рдореА рдпреА рд╕реЗрд╡рд╛рд╣рд░реВрд▓рд╛рдИ рд╕рдХреЗрд╕рдореНрдо рдЕрд▓рдЧ рдЧрд░реНрдЫреМрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореА рдЫреБрдЯреНрдЯреИ рдбрд╛рдЯрд╛рдмреЗрд╕, рдЫреБрдЯреНрдЯреИ RabbitMQ рдмрдирд╛рдЙрдБрдЫреМрдВред рдпреЛ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд░рд╛рдореНрд░реЛ рдЫ рдХрд┐рдирднрдиреЗ рдХреЗрд╣рд┐ рдХрдордЬреЛрд░ рдмрд┐рдиреНрджреБрд╣рд░реВрдорд╛ рджреБрд░реНрдШрдЯрдирд╛рдХреЛ рдШрдЯрдирд╛рдорд╛, рд╕рдореНрдкреВрд░реНрдг рд╕реЗрд╡рд╛ рдмрд┐рдЧреНрд░рд┐рдПрдХреЛ рдЫреИрди, рддрд░ рдпрд╕рдХреЛ рдЕрдВрд╢ рдорд╛рддреНрд░ред

рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдЕрд╕реАрдорд┐рдд рдЫ, рддреНрдпрд╕реИрд▓реЗ API рд▓реЗ рдкреНрд░рджрд░реНрд╢рди рд░ рдЧрд▓реНрддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдмрдврд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВ рдкрдЫрд╛рдбрд┐ рддреЗрд░реНрд╕реЛ рд░реВрдкрдорд╛ рдорд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдЫред

API рд░ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛рд╣рд░реВ рдмреАрдЪ рдЬрдЯрд┐рд▓ рдХреНрд░рдорд┐рдХ рдХрд╛рд░реНрдпрд╣рд░реВ рд╣реБрдБрджрд╛ рдХреЗрд╣реА рд╕реЗрд╡рд╛рд╣рд░реВрд▓рд╛рдИ рд╕реЗрд╡рд╛ рднрд┐рддреНрд░ рд╕рдордиреНрд╡рдп рдЖрд╡рд╢реНрдпрдХ рд╣реБрдиреНрдЫред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдПрдХрд▓ рд╕рдордиреНрд╡рдп рдХреЗрдиреНрджреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рдХреНрд▓рд╕реНрдЯрд░ рдкреНрд░рдгрд╛рд▓реА рдЬрд╕реНрддреИ Redis, Memcache, etcd, рдЬрд╕рд▓реЗ рдПрдХ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛рд▓рд╛рдИ рдпреЛ рдХрд╛рд░реНрдп рдЙрд╕рд▓рд╛рдИ рджрд┐рдЗрдПрдХреЛ рдЫ рднрдиреЗрд░ рдЕрд░реНрдХреЛрд▓рд╛рдИ рдмрддрд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ ("рдХреГрдкрдпрд╛ рдпрд╕рд▓рд╛рдИ рдирд▓рд┐рдиреБрд╣реЛрд╕реН")ред рд╣рд╛рдореА рдЖрджрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред рдирд┐рдпрдордХреЛ рд░реВрдкрдорд╛, рдХрд░реНрдордЪрд╛рд░реАрд╣рд░реВрд▓реЗ рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╕рдБрдЧ рд╕рдЮреНрдЪрд╛рд░ рдЧрд░реНрдЫрдиреН, рддреНрдпрд╣рд╛рдБрдмрд╛рдЯ рдЬрд╛рдирдХрд╛рд░реА рд▓реЗрдЦреНрдЫрдиреН рд░ рдкрдвреНрдЫрдиреНред рд╣рд╛рдореА mariadb рд▓рд╛рдИ рдбреЗрдЯрд╛рдмреЗрд╕рдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ, рдЬреБрди рдорд▓реНрдЯрд┐рдорд╛рд╕реНрдЯрд░ рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдЫред

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

рд╕рдореНрдкреВрд░реНрдг рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдХрдордЬреЛрд░ рдмрд┐рдиреНрджреБ RabbitMQ рд░ MariaDB рд╣реЛред рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦрдХреЛ рдпреЛрдЧреНрдп рдЫ рдпрд╕ рд▓реЗрдЦрдорд╛ рдо рдПрдкреАрдЖрдИ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛рдорд╛ рдзреНрдпрд╛рди рдХреЗрдиреНрджреНрд░рд┐рдд рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреБред

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
рдУрдкрдирд╕реНрдЯреНрдпрд╛рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ред рдХреНрд▓рд╛рдЙрдб рдкреНрд▓реЗрдЯрдлрд░реНрдордХреЛ рд╕рдиреНрддреБрд▓рди рд░ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛

ExaBGP рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ HAProxy рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд▓рд╛рдИ рджреЛрд╖-рд╕рд╣рд┐рд╖реНрдгреБ рдмрдирд╛рдЙрдБрджреИ

рд╣рд╛рдореНрд░рд╛ API рд╣рд░реВ рдорд╛рдкрдирдпреЛрдЧреНрдп, рдЫрд┐рдЯреЛ рд░ рдЧрд▓реНрддреА-рд╕рд╣рд┐рд╖реНрдгреБ рдмрдирд╛рдЙрди, рд╣рд╛рдореАрд▓реЗ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдЕрдЧрд╛рдбрд┐ рд▓реЛрдб рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░ рд░рд╛рдЦреНрдЫреМрдВред рд╣рд╛рдореАрд▓реЗ HAProxy рд░реЛрдЬреНрдпреМрдВред рдореЗрд░реЛ рд╡рд┐рдЪрд╛рд░рдорд╛, рдпрд╕рдорд╛ рд╣рд╛рдореНрд░реЛ рдХрд╛рд░реНрдпрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдмреИ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛рд╣рд░реВ рдЫрдиреН: рдзреЗрд░реИ OSI рд╕реНрддрд░рд╣рд░реВрдорд╛ рд╕рдиреНрддреБрд▓рди, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЗрдиреНрдЯрд░рдлреЗрд╕, рд▓рдЪрд┐рд▓реЛрдкрди рд░ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА, рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛рдорд╛ рд╕рдиреНрддреБрд▓рди рд╡рд┐рдзрд┐рд╣рд░реВ, рд╕рддреНрд░ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдердиред

рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдкрд╣рд┐рд▓реЛ рд╕рдорд╕реНрдпрд╛ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдХреЛ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдерд┐рдпреЛред рдХреЗрд╡рд▓ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдирд╛рд▓реЗ рдкрдирд┐ рдЕрд╕рдлрд▓рддрд╛рдХреЛ рдмрд┐рдиреНрджреБ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджрдЫ: рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░ рдмреНрд░реЗрдХ рд╣реБрдиреНрдЫ рд░ рд╕реЗрд╡рд╛ рдХреНрд░реНрдпрд╛рд╕ рд╣реБрдиреНрдЫред рдпреЛ рд╣реБрдирдмрд╛рдЯ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореАрд▓реЗ ExaBGP рд╕рдБрдЧ рд╕рдВрдпреЛрдЬрдирдорд╛ HAProxy рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдпреМрдВред

ExaBGP рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕реЗрд╡рд╛рдХреЛ рдЕрд╡рд╕реНрдерд╛ рдЬрд╛рдБрдЪ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдВрдпрдиреНрддреНрд░ рд▓рд╛рдЧреВ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рд╣рд╛рдореАрд▓реЗ HAProxy рдХреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬрд╛рдБрдЪ рдЧрд░реНрди рдпреЛ рд╕рдВрдпрдиреНрддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдпреМрдВ рд░, рд╕рдорд╕реНрдпрд╛ рднрдПрдорд╛, BGP рдмрд╛рдЯ HAProxy рд╕реЗрд╡рд╛ рдЕрд╕рдХреНрд╖рдо рдкрд╛рд░реНрдиреБрд╣реЛрд╕реНред

ExaBGP+HAProxy рдпреЛрдЬрдирд╛

  1. рд╣рд╛рдореА рдЖрд╡рд╢реНрдпрдХ рд╕рдлреНрдЯрд╡реЗрдпрд░, ExaBGP рд░ HAProxy, рддреАрдирд╡рдЯрд╛ рд╕рд░реНрднрд░рдорд╛ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдЫреМрдВред
  2. рд╣рд╛рдореА рдкреНрд░рддреНрдпреЗрдХ рд╕рд░реНрднрд░рдорд╛ рд▓реБрдкрдмреНрдпрд╛рдХ рдЗрдиреНрдЯрд░рдлреЗрд╕ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдЫреМрдВред
  3. рд╕рдмреИ рддреАрди рд╕рд░реНрднрд░рд╣рд░реВрдорд╛ рд╣рд╛рдореА рдпрд╕ рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рдПрдЙрдЯреИ рд╕реЗрддреЛ IP рдареЗрдЧрд╛рдирд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрдЫреМрдВред
  4. рд╕реЗрддреЛ IP рдареЗрдЧрд╛рдирд╛ ExaBGP рдорд╛рд░реНрдлрдд рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЧрд░рд┐рдПрдХреЛ рдЫред

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

HAProxy рдХреЛ рд╕рдЮреНрдЪрд╛рд▓рди рд╡рд╛ рд╕рд░реНрднрд░ рд╡рд┐рдлрд▓рддрд╛ рд╕рдВрдЧ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдорд╛рдорд▓рд╛ рдорд╛, ExaBGP рд▓реЗ рдорд╛рд░реНрдЧ рдШреЛрд╖рдгрд╛ рдЧрд░реНрди рд░реЛрдХреНрдЫ, рд░ рдЯреНрд░рд╛рдлрд┐рдХ рд╕рдЬрд┐рд▓реИ рд╕рдВрдЧ рдЕрд░реНрдХреЛ рд╕рд░реНрднрд░ рдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрджрдЫред

рдпрд╕рд░реА, рд╣рд╛рдореАрд▓реЗ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдХреЛ рдЧрд▓реНрддреА рд╕рд╣рдирд╢реАрд▓рддрд╛ рд╣рд╛рд╕рд┐рд▓ рдЧрд░реНрдпреМрдВред

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
HAProxy рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВрдХреЛ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛

рдпреЛрдЬрдирд╛ рдЕрдкреВрд░реНрдг рд╕рд╛рд╡рд┐рдд рднрдпреЛ: рд╣рд╛рдореАрд▓реЗ HAProxy рдХрд╕рд░реА рд░рд┐рдЬрд░реНрдн рдЧрд░реНрдиреЗ рднрдиреЗрд░ рд╕рд┐рдХреНрдпреМрдВ, рддрд░ рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рд▓реЛрдб рдХрд╕рд░реА рд╡рд┐рддрд░рдг рдЧрд░реНрдиреЗ рднрдиреЗрд░ рд╕рд┐рдХреЗрдХрд╛ рдЫреИрдиреМрдВред рддреНрдпрд╕рдХрд╛рд░рдг, рд╣рд╛рдореАрд▓реЗ рдпреЛ рдпреЛрдЬрдирд╛рд▓рд╛рдИ рдереЛрд░реИ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрдпреМрдВ: рд╣рд╛рдореА рдзреЗрд░реИ рд╕реЗрддреЛ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдмреАрдЪ рд╕рдиреНрддреБрд▓рди рдЧрд░реНрди рдЕрдЧрд╛рдбрд┐ рдмрдвреНрдпреМрдВред

DNS рдкреНрд▓рд╕ BGP рдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╕рдиреНрддреБрд▓рди

рд╣рд╛рдореНрд░реЛ HAProxy рдХреЛ рд▓рд╛рдЧрд┐ рд▓реЛрдб рд╕рдиреНрддреБрд▓рди рдХреЛ рдореБрджреНрджрд╛ рдЕрдирд╕реБрд▓рдЭреЗ рд░рд╣рдиреНрдЫред рдпрджреНрдпрдкрд┐, рдпреЛ рдПрдХрджрдо рд╕рд░рд▓ рд░реВрдкрдорд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рд╣рд╛рдореАрд▓реЗ рдпрд╣рд╛рдБ рдЧрд░реЗрдХрд╛ рдЫреМрдВред

рддреАрди рд╕рд░реНрднрд░рд╣рд░реВ рд╕рдиреНрддреБрд▓рди рдЧрд░реНрди рддрдкрд╛рдИрдВрд▓рд╛рдИ 3 рд╕реЗрддреЛ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд░ рд░рд╛рдореНрд░реЛ рдкреБрд░рд╛рдиреЛ DNS рдЪрд╛рд╣рд┐рдиреНрдЫред рдпреА рдкреНрд░рддреНрдпреЗрдХ рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдкреНрд░рддреНрдпреЗрдХ HAProxy рдХреЛ рд▓реБрдкрдмреНрдпрд╛рдХ рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░рд┐рдиреНрдЫ рд░ рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЧрд░рд┐рдиреНрдЫред

OpenStack рдорд╛, рд╕реНрд░реЛрддрд╣рд░реВ рдкреНрд░рдмрдиреНрдз рдЧрд░реНрди, рд╕реЗрд╡рд╛ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рдЬрд╕рд▓реЗ рд╡рд┐рд╢реЗрд╖ рд╕реЗрд╡рд╛рдХреЛ рдЕрдиреНрддрд┐рдо рдмрд┐рдиреНрджреБ API рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрджрдЫред рдпрд╕ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рд╣рд╛рдореА рдбреЛрдореЗрди рдирд╛рдо рджрд░реНрддрд╛ рдЧрд░реНрдЫреМрдВ - public.infra.mail.ru, рдЬреБрди DNS рдорд╛рд░реНрдлрдд рддреАрди рдлрд░рдХ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрджреНрд╡рд╛рд░рд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░рд┐рдиреНрдЫред рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рд╣рд╛рдореАрд▓реЗ DNS рдорд╛рд░реНрдлрдд рддреАрди рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдмреАрдЪ рд▓реЛрдб рд╡рд┐рддрд░рдг рдкрд╛рдЙрдБрдЫреМрдВред

рддрд░ рд╕реЗрддреЛ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдШреЛрд╖рдгрд╛ рдЧрд░реНрджрд╛ рд╣рд╛рдореА рд╕рд░реНрднрд░ рдЪрдпрди рдкреНрд░рд╛рдердорд┐рдХрддрд╛рд╣рд░реВ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрджреИрдиреМрдВ, рдпреЛ рдЕрдЭреИ рд╕рдиреНрддреБрд▓рди рдЫреИрдиред рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, IP рдареЗрдЧрд╛рдирд╛ рд╡рд░рд┐рд╖реНрдарддрд╛рдХреЛ рдЖрдзрд╛рд░рдорд╛ рдПрдЙрдЯрд╛ рдорд╛рддреНрд░ рд╕рд░реНрднрд░ рдЪрдпрди рдЧрд░рд┐рдиреЗрдЫ, рд░ рдЕрдиреНрдп рджреБрдИ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реБрдиреЗрдЫрдиреН рдХрд┐рдирднрдиреЗ BGP рдорд╛ рдХреБрдиреИ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫреИрдиред

рд╣рд╛рдореАрд▓реЗ ExaBGP рдорд╛рд░реНрдлрдд рд╡рд┐рднрд┐рдиреНрди рдореЗрдЯреНрд░рд┐рдХреНрд╕рдХрд╛ рд╕рд╛рде рд░реБрдЯрд╣рд░реВ рдкрдард╛рдЙрди рдерд╛рд▓реНрдпреМрдВред рдкреНрд░рддреНрдпреЗрдХ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд▓реЗ рд╕рдмреИ рддреАрдирд╡рдЯрд╛ рд╕реЗрддреЛ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЧрд░реНрджрдЫ, рддрд░ рддрд┐рдиреАрд╣рд░реВрдордзреНрдпреЗ рдПрдЙрдЯрд╛, рдпреЛ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдХреЛ рд▓рд╛рдЧрд┐ рдореБрдЦреНрдп, рдиреНрдпреВрдирддрдо рдореЗрдЯреНрд░рд┐рдХрдХреЛ рд╕рд╛рде рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЧрд░рд┐рдПрдХреЛ рдЫред рддреНрдпрд╕реЛрднрдП рд╕рдмреИ рддреАрди рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВ рд╕рдЮреНрдЪрд╛рд▓рдирдорд╛ рд╣реБрдБрджрд╛, рдкрд╣рд┐рд▓реЛ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рдорд╛ рдХрд▓рд╣рд░реВ рдкрд╣рд┐рд▓реЛ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдорд╛ рдЬрд╛рдиреНрдЫрдиреН, рджреЛрд╕реНрд░реЛрд▓рд╛рдИ рджреЛрд╕реНрд░реЛрдорд╛ рдХрд▓рд╣рд░реВ рд╣реБрдиреНрдЫрдиреН, рд░ рддреЗрд╕реНрд░реЛ рджреЗрдЦрд┐ рддреЗрд╕реНрд░реЛрдорд╛ рдХрд▓рд╣рд░реВ рд╣реБрдиреНрдЫрдиреНред

рдПрдХ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░ рдЦрд╕реНрджрд╛ рдХреЗ рд╣реБрдиреНрдЫ? рдпрджрд┐ рдХреБрдиреИ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░ рдЕрд╕рдлрд▓ рднрдпреЛ рднрдиреЗ, рдпрд╕рдХреЛ рдореБрдЦреНрдп рдареЗрдЧрд╛рдирд╛ рдЕрдЭреИ рдкрдирд┐ рдЕрдиреНрдп рджреБрдИрдмрд╛рдЯ рд╡рд┐рдЬреНрдЮрд╛рдкрд┐рдд рдЧрд░рд┐рдиреНрдЫ, рд░ рдЯреНрд░рд╛рдлрд┐рдХ рддрд┐рдиреАрд╣рд░реВ рдмреАрдЪ рдкреБрди: рд╡рд┐рддрд░рдг рдЧрд░рд┐рдиреНрдЫред рдпрд╕рд░реА, рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓рд╛рдИ DNS рдорд╛рд░реНрдлрдд рдПрдХреИ рдкрдЯрдХ рдзреЗрд░реИ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рджрд┐рдиреНрдЫреМрдВред DNS рд░ рд╡рд┐рднрд┐рдиреНрди рдореЗрдЯреНрд░рд┐рдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕рдиреНрддреБрд▓рди рдЧрд░реЗрд░, рд╣рд╛рдореА рд╕рдмреИ рддреАрди рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВрдорд╛ рд▓реЛрдбрдХреЛ рд╕рдорд╛рди рд╡рд┐рддрд░рдг рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдЫреМрдВред рд░ рдПрдХреИ рд╕рдордпрдорд╛ рд╣рд╛рдореА рдЧрд▓реНрддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдЧреБрдорд╛рдЙрдБрджреИрдиреМрдВред

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
DNS + BGP рдорд╛ рдЖрдзрд╛рд░рд┐рдд HAProxy рд╕рдиреНрддреБрд▓рди

ExaBGP рд░ HAProxy рдмреАрдЪ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛

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

рддрд╕рд░реНрде, рдЕрдШрд┐рд▓реНрд▓реЛ рдпреЛрдЬрдирд╛рд▓рд╛рдИ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрджреИ, рд╣рд╛рдореАрд▓реЗ ExaBGP рд░ HAProxy рдмреАрдЪ рдореБрдЯреБрдХреЛ рдзрдбреНрдХрди рд▓рд╛рдЧреВ рдЧрд░реНрдпреМрдВред рдпреЛ ExaBGP рд░ HAProxy рдмреАрдЪрдХреЛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рдХреЛ рд╕рдлреНрдЯрд╡реЗрдпрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реЛ, рдЬрдм ExaBGP рд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд╕реНрдерд┐рддрд┐ рдЬрд╛рдБрдЪ рдЧрд░реНрди рдЕрдиреБрдХреВрд▓рди рд▓рд┐рдкрд┐рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред

рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ ExaBGP рдХрдиреНрдлрд┐рдЧрд░рдорд╛ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪрдХрд░реНрддрд╛ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЬрд╕рд▓реЗ HAProxy рдХреЛ рд╕реНрдерд┐рддрд┐ рдЬрд╛рдБрдЪ рдЧрд░реНрди рд╕рдХреНрдЫред рд╣рд╛рдореНрд░реЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рд╣рд╛рдореАрд▓реЗ HAProxy рдорд╛ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдмреНрдпрд╛рдХрдЗрдиреНрдб рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдпреМрдВ, рд░ ExaBGP рдкрдХреНрд╖рдмрд╛рдЯ рд╣рд╛рдореА рд╕рд╛рдзрд╛рд░рдг GET рдЕрдиреБрд░реЛрдзрдХреЛ рд╕рд╛рде рдЬрд╛рдБрдЪ рдЧрд░реНрдЫреМрдВред рдпрджрд┐ рдШреЛрд╖рдгрд╛ рдмрдиреНрдж рд╣реБрдиреНрдЫ рднрдиреЗ, рддрдм HAProxy рд▓реЗ рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫреИрди рд░ рдпрд╕рд▓рд╛рдИ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрдиред

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
HAProxy рд╕реНрд╡рд╛рд╕реНрдереНрдп рдЬрд╛рдБрдЪ

HAProxy Peers: рд╕рддреНрд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╕рди

рдЧрд░реНрдиреБ рдкрд░реНрдиреЗ рдЕрд░реНрдХреЛ рдХреБрд░рд╛ рд╕рддреНрд░рд╣рд░реВ рд╕рд┐рдЩреНрдХреНрд░реЛрдирд╛рдЗрдЬ рдЧрд░реНрдиреБ рдерд┐рдпреЛред рд╡рд┐рддрд░рд┐рдд рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВ рдорд╛рд░реНрдлрдд рдХрд╛рдо рдЧрд░реНрджрд╛, рдЧреНрд░рд╛рд╣рдХ рд╕рддреНрд░рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реАрдХреЛ рднрдгреНрдбрд╛рд░рдг рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрди рдЧрд╛рд╣реНрд░реЛ рд╣реБрдиреНрдЫред рддрд░ HAProxy рдХреЗрд╣реА рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВ рдордзреНрдпреЗ рдПрдХ рд╣реЛ рдЬрд╕рд▓реЗ Peers рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛рдХрд╛ рдХрд╛рд░рдг рдпреЛ рдЧрд░реНрди рд╕рдХреНрдЫ - рд╡рд┐рднрд┐рдиреНрди HAProxy рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдмреАрдЪ рд╕рддреНрд░ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ред

рддреНрдпрд╣рд╛рдБ рд╡рд┐рднрд┐рдиреНрди рд╕рдиреНрддреБрд▓рди рд╡рд┐рдзрд┐рд╣рд░реВ рдЫрдиреН: рд╕рд░рд▓ рдЬрд╕реНрддреИ рд░рд╛рдЙрдиреНрдб рд░реЛрдмрд┐рди, рд░ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд, рдЬрдм рдЧреНрд░рд╛рд╣рдХрдХреЛ рд╕рддреНрд░ рд╕рдореНрдЭрд┐рдиреНрдЫ, рд░ рдкреНрд░рддреНрдпреЗрдХ рдкрдЯрдХ рдК рдкрд╣рд┐рд▓реЗ рдЬрд╕реНрддреИ рд╕рдорд╛рди рд╕рд░реНрднрд░рдорд╛ рд╕рдорд╛рдкреНрдд рд╣реБрдиреНрдЫред рд╣рд╛рдореА рджреЛрд╕реНрд░реЛ рд╡рд┐рдХрд▓реНрдк рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреМрдВред

HAProxy рд▓реЗ рдпрд╕ рдореЗрдХрд╛рдирд┐рдЬрдордХреЛ рдХреНрд▓рд╛рдЗрдиреНрдЯ рд╕рддреНрд░рд╣рд░реВ рдмрдЪрдд рдЧрд░реНрди рд╕реНрдЯрд┐рдХ-рдЯреЗрдмрд▓рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдЧреНрд░рд╛рд╣рдХрдХреЛ рдореВрд▓ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛, рдЪрдпрди рдЧрд░рд┐рдПрдХреЛ рд▓рдХреНрд╖реНрдп рдареЗрдЧрд╛рдирд╛ (рдмреНрдпрд╛рдХрдПрдиреНрдб) рд░ рдХреЗрд╣реА рд╕реЗрд╡рд╛ рдЬрд╛рдирдХрд╛рд░реА рдмрдЪрдд рдЧрд░реНрдЫрдиреНред рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рд╕реНрдЯрд┐рдХ рдЯреЗрдмрд▓рд╣рд░реВ рд╕реНрд░реЛрдд-IP + рдЧрдиреНрддрд╡реНрдп-IP рдЬреЛрдбреА рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рдЬреБрди рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрдпреЛрдЧреА рд╣реБрдиреНрдЫ рдЬрд╕рд▓реЗ рдЕрд░реНрдХреЛ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрджрд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд╕рддреНрд░ рд╕рдиреНрджрд░реНрдн рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрди рд╕рдХреНрджреИрди, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд░рд╛рдЙрдиреНрдбрд░реЛрдмрд┐рди рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд┐рдЩ рдореЛрдбрдорд╛ред

рдпрджрд┐ рд╕реНрдЯрд┐рдХ рдЯреЗрдмрд▓рд▓рд╛рдИ рд╡рд┐рднрд┐рдиреНрди HAProxy рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ (рдХреБрди рдмреАрдЪрдорд╛ рд╕рдиреНрддреБрд▓рди рд╣реБрдиреНрдЫ) рдмреАрдЪрдорд╛ рд╕рд╛рд░реНрди рд╕рд┐рдХрд╛рдЗрдиреНрдЫ рднрдиреЗ, рд╣рд╛рдореНрд░рд╛ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВрд▓реЗ рд╕реНрдЯрд┐рдХ рдЯреЗрдмрд▓рд╣рд░реВрдХреЛ рдПрдЙрдЯрд╛ рдкреВрд▓рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреЗрдЫрдиреНред рдпрджрд┐ рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рд╣рд░реВ рдордзреНрдпреЗ рдПрдХ рдЕрд╕рдлрд▓ рднрдПрдорд╛ рдЧреНрд░рд╛рд╣рдХрдХреЛ рд╕рдЮреНрдЬрд╛рд▓рд▓рд╛рдИ рдирд┐рд░реНрдмрд╛рдз рд░реВрдкрдорд╛ рд╕реНрд╡рд┐рдЪ рдЧрд░реНрди рд╕рдореНрднрд╡ рдмрдирд╛рдЙрдБрджрдЫ;

рдЙрдЪрд┐рдд рд╕рдЮреНрдЪрд╛рд▓рдирдХреЛ рд▓рд╛рдЧрд┐, рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдХреЛ рд╕реНрд░реЛрдд рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рдХреЛ рд╕рдорд╕реНрдпрд╛ рдЬрд╕рдмрд╛рдЯ рд╕рддреНрд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрдиреБрдкрд░реНрдЫред рд╣рд╛рдореНрд░реЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдпреЛ рд▓реБрдкрдмреНрдпрд╛рдХ рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рдареЗрдЧрд╛рдирд╛ рд╣реЛред

рд╕рд╛рдереАрд╣рд░реВрдХреЛ рд╕рд╣реА рдХрд╛рдо рдирд┐рд╢реНрдЪрд┐рдд рдкрд░рд┐рд╕реНрдерд┐рддрд┐рд╣рд░реВрдорд╛ рдорд╛рддреНрд░ рдкреНрд░рд╛рдкреНрдд рд╣реБрдиреНрдЫред рдЕрд░реНрдерд╛рддреН, TCP рдЯрд╛рдЗрдордЖрдЙрдЯ рдкрд░реНрдпрд╛рдкреНрдд рдорд╛рддреНрд░рд╛рдорд╛ рдареБрд▓реЛ рд╣реБрдиреБрдкрд░реНрдЫ рд╡рд╛ TCP рд╕рддреНрд░ рд╕рдорд╛рдкреНрдд рд╣реБрди рд╕рдордп рдирдкрд░реЛрд╕реН рднрдиреЗрд░ рд╕реНрд╡рд┐рдЪрд┐рдЩ рдкрд░реНрдпрд╛рдкреНрдд рдЫрд┐рдЯреЛ рд╣реБрдиреБрдкрд░реНрдЫред рдпрджреНрдпрдкрд┐, рдпрд╕рд▓реЗ рд╕рд┐рдорд▓реЗрд╕ рд╕реНрд╡рд┐рдЪрд┐рдЩрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

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

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

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
HAProxy Peers (рд╕рддреНрд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╕рди)

рдпрджрд┐ рддрдкрд╛рдЗрдБ рдПрдЙрдЯреИ рдпреЛрдЬрдирд╛ рд▓рд╛рдЧреВ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рдпрд╕рдХреЛ рд╕рдЮреНрдЪрд╛рд▓рди рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдкрд░реАрдХреНрд╖рдг рдЧрд░рд┐рдиреБ рдкрд░реНрдЫред рдпреЛ рдПрдХ рддрдереНрдп рд╣реЛрдЗрди рдХрд┐ рдпреЛ рд╕рдордп рдХреЛ 100% рдЙрд╕реНрддреИ рддрд░рд┐рдХрд╛ рдорд╛ рдХрд╛рдо рдЧрд░реНрдиреЗрдЫред рддрд░ рдХрдореНрддрд┐рдорд╛ рддрдкрд╛рдИрд▓реЗ рд╕реНрдЯрд┐рдХ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВ рдЧреБрдорд╛рдЙрдиреБрд╣реБрдиреЗ рдЫреИрди рдЬрдм рддрдкрд╛рдИрд▓рд╛рдИ рдЧреНрд░рд╛рд╣рдХрдХреЛ рд╕реНрд░реЛрдд рдЖрдИрдкреА рд╕рдореНрдЭрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдЫред

рдПрдЙрдЯреИ рдЧреНрд░рд╛рд╣рдХрдмрд╛рдЯ рдПрдХ рд╕рд╛рде рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╕реАрдорд┐рдд рдЧрд░реНрджреИ

рд╣рд╛рдореНрд░рд╛ API рд╣рд░реВ рд╕рд╣рд┐рдд рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдкрдорд╛ рдЙрдкрд▓рдмреНрдз рдХреБрдиреИ рдкрдирд┐ рд╕реЗрд╡рд╛рд╣рд░реВ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╣рд┐рдордкрд╛рддрдХреЛ рд╡рд┐рд╖рдп рд╣реБрди рд╕рдХреНрдЫрдиреНред рддрд┐рдиреАрд╣рд░реВрдХрд╛ рдХрд╛рд░рдгрд╣рд░реВ рдкреВрд░реНрдгрддрдпрд╛ рдлрд░рдХ рд╣реБрди рд╕рдХреНрдЫрдиреН, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рддреНрд░реБрдЯрд┐рд╣рд░реВ рджреЗрдЦрд┐ рд▓рдХреНрд╖рд┐рдд рдЖрдХреНрд░рдордгрд╣рд░реВрдорд╛ред рд╣рд╛рдореА рдЖрд╡рдзрд┐рдХ рд░реВрдкрдорд╛ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рджреНрд╡рд╛рд░рд╛ DDoSed рд╣реБрдиреНрдЫреМрдВред рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓реЗ рдкреНрд░рд╛рдпрдГ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВрдорд╛ рдЧрд▓реНрддреА рдЧрд░реНрдЫрдиреН рд░ рд╣рд╛рдореАрд▓рд╛рдИ mini-DDoSs рджрд┐рдиреНрдЫрдиреНред

рдПрдХ рддрд░рд┐рдХрд╛ рд╡рд╛ рдЕрд░реНрдХреЛ, рдердк рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреБрдкрд░реНрдЫред рд╕реНрдкрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рднрдиреЗрдХреЛ API рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╕реАрдорд┐рдд рдЧрд░реНрдиреБ рд╣реЛ рд░ рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрджреИ CPU рд╕рдордп рдмрд░реНрдмрд╛рдж рдирдЧрд░реНрдиреБ рд╣реЛред

рддреНрдпрд╕реНрддрд╛ рдкреНрд░рддрд┐рдмрдиреНрдзрд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрди, рд╣рд╛рдореА рд╕рдорд╛рди рд╕реНрдЯрд┐рдХ рддрд╛рд▓рд┐рдХрд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ HAProxy рдХреЛ рдЖрдзрд╛рд░рдорд╛ рд╕рдВрдЧрдард┐рдд рджрд░ рд╕реАрдорд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред рд╕реЗрдЯ рдЕрдк рд╕реАрдорд╛ рдПрдХрджрдо рд╕рд░рд▓ рдЫ рд░ рддрдкрд╛рдИрдВрд▓рд╛рдИ API рдорд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд╕реАрдорд┐рдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдПрд▓реНрдЧреЛрд░рд┐рджрдорд▓реЗ рд╕реНрд░реЛрдд рдЖрдИрдкреА рд╕рдореНрдЭрдиреНрдЫ рдЬрд╕рдмрд╛рдЯ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдЧрд░рд┐рдиреНрдЫ рд░ рдПрдХ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдмрд╛рдЯ рдПрдХ рд╕рд╛рде рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╕реАрдорд┐рдд рдЧрд░реНрджрдЫред рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рд╣рд╛рдореАрд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рдФрд╕рдд API рд▓реЛрдб рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЧрдгрдирд╛ рдЧрд░реНрдпреМрдВ рд░ тЙИ резреж рдЧреБрдгрд╛ рдпреЛ рдорд╛рдирдХреЛ рд╕реАрдорд╛ рд╕реЗрдЯ рдЧрд░реНтАНрдпреМрдВред рд╣рд╛рдореА рд╕реНрдерд┐рддрд┐рд▓рд╛рдИ рдирдЬрд┐рдХрдмрд╛рдЯ рдирд┐рдЧрд░рд╛рдиреА рдЧрд░реНрди рдЬрд╛рд░реА рд░рд╛рдЦреНрдЫреМрдВ рд░ рд╣рд╛рдореНрд░реЛ рдФрдВрд▓рд╛ рдирд╛рдбреАрдорд╛ рд░рд╛рдЦреНрдЫреМрдВред

рдпреЛ рд╡реНрдпрд╡рд╣рд╛рд░рдорд╛ рдХрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ? рд╣рд╛рдореАрд╕рдБрдЧ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ рд╣рд╛рдореНрд░рд╛ рдЕрдЯреЛрд╕реНрдХреЗрд▓рд┐рдВрдЧ API рд╣рд░реВ рд╕рдзреИрдВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫрдиреНред рддрд┐рдиреАрд╣рд░реВ рдмрд┐рд╣рд╛рди рдХрд░рд┐рдм рджреБрдИ рджреЗрдЦрд┐ рддреАрди рд╕рдп рднрд░реНрдЪреБрдЕрд▓ рдореЗрд╕рд┐рдирд╣рд░реВ рдмрдирд╛рдЙрдБрдЫрдиреН рд░ рдмреЗрд▓реБрдХрд╛ рдореЗрдЯрд╛рдЙрдБрдЫрдиреНред рдУрдкрдирд╕реНрдЯреНрдпрд╛рдХрдХрд╛ рд▓рд╛рдЧрд┐, PaaS рд╕реЗрд╡рд╛рд╣рд░реВрд╕рдБрдЧ рднрд░реНрдЪреБрдЕрд▓ рдореЗрд╕рд┐рди рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди, рдХрдореНрддрд┐рдорд╛ 1000 API рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджрдЫ, рдХрд┐рдирдХрд┐ рд╕реЗрд╡рд╛рд╣рд░реВ рдмреАрдЪрдХреЛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рдкрдирд┐ API рдорд╛рд░реНрдлрдд рд╣реБрдиреНрдЫред

рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рдпрд╕реНрддреЛ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдгрд▓реЗ рдПрдХрджрдо рдареВрд▓реЛ рднрд╛рд░ рдирд┐рдореНрддреНрдпрд╛рдЙрдБрдЫред рд╣рд╛рдореАрд▓реЗ рдпреЛ рднрд╛рд░ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реНтАНрдпреМрдВ, рджреИрдирд┐рдХ рдЪреБрдЪреБрд░рд╛рд╣рд░реВ рд╕рдЩреНрдХрд▓рди рдЧрд░реНтАНрдпреМрдВ, рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рджрд╢ рдЧреБрдгрд╛ рдмрдврд╛рдпреМрдВ, рд░ рдпреЛ рд╣рд╛рдореНрд░реЛ рджрд░ рд╕реАрдорд╛ рднрдпреЛред рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдФрдВрд▓рд╛ рдирд╛рдбреАрдорд╛ рд░рд╛рдЦреНрдЫреМрдВред рд╣рд╛рдореА рдкреНрд░рд╛рдпрдГ рдмрдЯрд╣рд░реВ рд░ рд╕реНрдХреНрдпрд╛рдирд░рд╣рд░реВ рджреЗрдЦреНрдЫреМрдВ рдЬрд╕рд▓реЗ рд╣рд╛рдореАрд╕рдБрдЧ рдЪрд▓рд╛рдЙрди рд╕рдХрд┐рдиреЗ рдХреБрдиреИ CGA рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ рдЫрдиреН рдХрд┐ рдЫреИрдирдиреН рднрдиреЗрд░ рд╣реЗрд░реНрди рдХреЛрд╕рд┐рд╕ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдЫреМрдВ, рд╣рд╛рдореАрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рдХрд╛рдЯреНрдЫреМрдВред

рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдзреНрдпрд╛рди рдирджрд┐рдИ рдХрд╕рд░реА рддрдкрд╛рдЗрдБрдХреЛ рдХреЛрдбрдмреЗрд╕ рдЕрдкрдбреЗрдЯ рдЧрд░реНрдиреЗ

рд╣рд╛рдореА рдХреЛрдб рдбрд┐рдкреНрд▓реЛрдЗрдореЗрдиреНрдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдХреЛ рд╕реНрддрд░рдорд╛ рдЧрд▓реНрддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдкрдирд┐ рд▓рд╛рдЧреВ рдЧрд░реНрдЫреМрдВред рд░реЛрд▓рдЖрдЙрдЯрдХреЛ рдХреНрд░рдордорд╛ рддреНрд░реБрдЯрд┐рд╣рд░реВ рд╣реБрди рд╕рдХреНрдЫрдиреН, рддрд░ рд╕реЗрд╡рд╛ рдЙрдкрд▓рдмреНрдзрддрд╛рдорд╛ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдкреНрд░рднрд╛рд╡рд▓рд╛рдИ рдХрдо рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

рд╣рд╛рдореА рд╣рд╛рдореНрд░рд╛ рд╕реЗрд╡рд╛рд╣рд░реВ рдирд┐рд░рдиреНрддрд░ рдЕрдкрдбреЗрдЯ рдЧрд░реНрдЫреМрдВ рд░ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдЕрд╕рд░ рдирдЧрд░реА рдХреЛрдбрдмреЗрд╕ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░рд┐рдПрдХреЛ рдЫ рднрдиреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдиреБрдкрд░реНрдЫред рд╣рд╛рдореАрд▓реЗ HAProxy рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХреНрд╖рдорддрд╛рд╣рд░реВ рд░ рд╣рд╛рдореНрд░рд╛ рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рдЧреНрд░реЗрд╕рдлреБрд▓ рд╢рдЯрдбрд╛рдЙрдирдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдпреЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрдпреМрдВред

рдпреЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди, рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░рдХреЛ рдирд┐рдпрдиреНрддреНрд░рдг рд░ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ "рд╕рд╣реА" рдмрдиреНрдж рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛ:

  • HAProxy рдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдирд┐рдпрдиреНрддреНрд░рдг рддрдереНрдпрд╛рдЩреНрдХ рдлрд╛рдЗрд▓ рдорд╛рд░реНрдлрдд рдЧрд░рд┐рдиреНрдЫ, рдЬреБрди рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдкрдорд╛ рд╕рдХреЗрдЯ рд╣реЛ рд░ HAProxy рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫред рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ stdio рдорд╛рд░реНрдлрдд рдЖрджреЗрд╢ рдкрдард╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рддрд░ рд╣рд╛рдореНрд░реЛ рдореБрдЦреНрдп рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдирд┐рдпрдиреНрддреНрд░рдг рдЙрдкрдХрд░рдг рдЙрддреНрддрд░рджрд╛рдпреА рдЫ, рддреНрдпрд╕реИрд▓реЗ рдпрд╕рдорд╛ HAProxy рдкреНрд░рдмрдиреНрдз рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдирд┐рд░реНрдорд┐рдд рдореЛрдбреНрдпреБрд▓ рдЫред рдЬрд╕рд▓рд╛рдИ рд╣рд╛рдореА рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред
  • рд╣рд╛рдореНрд░рд╛ рдзреЗрд░реИрдЬрд╕реЛ рдПрдкреАрдЖрдИ рд░ рдЗрдиреНрдЬрд┐рди рд╕реЗрд╡рд╛рд╣рд░реВрд▓реЗ рдЖрдХрд░реНрд╖рдХ рдмрдиреНрдж рдкреНрд░рд╡рд┐рдзрд┐рд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ: рдмрдиреНрдж рдЧрд░реНрджрд╛, рддрд┐рдиреАрд╣рд░реВ рд╣рд╛рд▓рдХреЛ рдХрд╛рд░реНрдп рдкреВрд░рд╛ рд╣реБрдирдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрдиреНрдЫрдиреН, рдпреЛ HTTP рдЕрдиреБрд░реЛрдз рд╡рд╛ рдХреЗрд╣реА рд╕реЗрд╡рд╛ рдХрд╛рд░реНрдп рд╣реЛред рдХрд╛рдорджрд╛рд░рдХреЛ рд╣рдХрдорд╛ рдкрдирд┐ рддреНрдпрд╕реНрддреИ рд╣реБрдиреНрдЫ ред рдпрд╕рд▓рд╛рдИ рд╕рдмреИ рдХрд╛рд░реНрдпрд╣рд░реВ рдерд╛рд╣рд╛ рдЫ рдЬреБрди рдпреЛ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫ рд░ рд╕рдорд╛рдкреНрдд рд╣реБрдиреНрдЫ рдЬрдм рдпреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рдмреИ рдкреВрд░рд╛ рд╣реБрдиреНрдЫред

рдпреА рджреБрдИ рдмрд┐рдиреНрджреБрд╣рд░реВрд▓рд╛рдИ рдзрдиреНрдпрд╡рд╛рдж, рд╣рд╛рдореНрд░реЛ рддреИрдирд╛рддреАрдХреЛ рд▓рд╛рдЧрд┐ рд╕реБрд░рдХреНрд╖рд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдпрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫред

  1. рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд▓реЗ рдХреЛрдбрдХреЛ рдирдпрд╛рдБ рдкреНрдпрд╛рдХреЗрдЬ рднреЗрд▓рд╛ рдЧрд░реНрдЫ (рд╣рд╛рдореНрд░реЛ рд▓рд╛рдЧрд┐ рдпреЛ RPM рд╣реЛ), рдпрд╕рд▓рд╛рдИ рдбреЗрдн рд╡рд╛рддрд╛рд╡рд░рдгрдорд╛ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдЫ, рд╕реНрдЯреЗрдЬрдорд╛ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдЫ, рд░ рд╕реНрдЯреЗрдЬ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реАрдорд╛ рдЫреЛрдбреНрдЫред
  2. рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд▓реЗ "рдХрд▓рд╛рдХреГрддрд┐рд╣рд░реВ" рдХреЛ рд╕рдмреИрднрдиреНрджрд╛ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдгрдХреЛ рд╕рд╛рде рдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рд░реНрдп рд╕реЗрдЯ рдЧрд░реНрджрдЫ: рдирдпрд╛рдБ рдкреНрдпрд╛рдХреЗрдЬрдХреЛ рд╕рдВрд╕реНрдХрд░рдг, рдирдпрд╛рдБ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛рдХреЛ рд╡рд┐рд╡рд░рдг рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛ рдкреНрд░рдпреЛрдЧрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЕрдиреНрдп рд╡рд┐рд╡рд░рдгрд╣рд░реВред
  3. рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╢рд╛рд╕рдХрд▓реЗ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рд╕реБрд░реБ рдЧрд░реНрдЫред рдЙрддреНрддрд░рджрд╛рдпреА рдкреНрд▓реЗрдмреБрдХ рд▓рдиреНрдЪ рдЧрд░реНрджрдЫ, рдЬрд╕рд▓реЗ рдмрд╛рд░реАрдорд╛ рдирд┐рдореНрди рдЧрд░реНрдЫ:
    • рд╕реНрдЯреЗрдЬ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реАрдмрд╛рдЯ рдкреНрдпрд╛рдХреЗрдЬ рд▓рд┐рдиреНрдЫ рд░ рдЙрддреНрдкрд╛рджрди рднрдгреНрдбрд╛рд░рдорд╛ рдкреНрдпрд╛рдХреЗрдЬрдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред
    • рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░рд┐рдПрдХреЛ рд╕реЗрд╡рд╛рдХреЛ рдмреНрдпрд╛рдХрдПрдиреНрдбрд╣рд░реВрдХреЛ рд╕реВрдЪреА рдХрдореНрдкрд╛рдЗрд▓ рдЧрд░реНрджрдЫред
    • HAProxy рдорд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рд╣реБрдиреЗ рдкрд╣рд┐рд▓реЛ рд╕реЗрд╡рд╛ рдмрдиреНрдж рдЧрд░реНрдЫ рд░ рдпрд╕рдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдЪрд▓реНрдиреЗ рд╕рдорд╛рдкреНрдд рд╣реБрдирдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрдиреНрдЫред рд╕реБрдиреНрджрд░ рдмрдиреНрджрдХреЛ рд▓рд╛рдЧрд┐ рдзрдиреНрдпрд╡рд╛рдж, рд╣рд╛рдореА рд╡рд┐рд╢реНрд╡рд╕реНрдд рдЫреМрдВ рдХрд┐ рд╕рдмреИ рд╣рд╛рд▓рдХрд╛ рдЧреНрд░рд╛рд╣рдХ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реБрдиреЗрдЫрдиреНред
    • API рд░ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛рд╣рд░реВ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдмрдиреНрдж рднрдПрдкрдЫрд┐, рд░ HAProxy рдмрдиреНрдж рднрдПрдкрдЫрд┐, рдХреЛрдб рдЕрдкрдбреЗрдЯ рд╣реБрдиреНрдЫред
    • рдЙрддреНрддрд░рджрд╛рдпреА рд░рди рд╕реЗрд╡рд╛рд╣рд░реВред
    • рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐, рдирд┐рд╢реНрдЪрд┐рдд "рд╣реНрдпрд╛рдиреНрдбрд▓рд╣рд░реВ" рддрд╛рдирд┐рдиреНрдЫрдиреН, рдЬрд╕рд▓реЗ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреБрдЮреНрдЬреА рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛рдорд╛ рдПрдХрд╛рдЗ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрджрдЫред рдирдпрд╛рдБ рдХреЛрдбрдХреЛ рдЖрдзрд╛рд░рднреВрдд рдЬрд╛рдБрдЪ рд╣реБрдиреНрдЫред
    • рдпрджрд┐ рдЕрдШрд┐рд▓реНрд▓реЛ рдЪрд░рдгрдорд╛ рдХреБрдиреИ рддреНрд░реБрдЯрд┐ рдлреЗрд▓рд╛ рдкрд░реЗрди рднрдиреЗ, рдмреНрдпрд╛рдХрдЗрдиреНрдб рд╕рдХреНрд░рд┐рдп рд╣реБрдиреНрдЫред
    • рдЕрд░реНрдХреЛ рдмреНрдпрд╛рдХрдЗрдиреНрдбрдорд╛ рдЬрд╛рдФрдВред
  4. рд╕рдмреИ рдмреНрдпрд╛рдХрдПрдиреНрдбрд╣рд░реВ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рднрдПрдкрдЫрд┐, рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд╕реБрд░реБ рд╣реБрдиреНрдЫрдиреНред рдпрджрд┐ рддрд┐рдиреАрд╣рд░реВ рд╣рд░рд╛рдЗрд░рд╣реЗрдХрд╛ рдЫрдиреН рднрдиреЗ, рддреНрдпрд╕рдкрдЫрд┐ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд▓реЗ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реЗрдХреЛ рдХреБрдиреИ рдкрдирд┐ рдирдпрд╛рдБ рдкреНрд░рдХрд╛рд░реНрдпрддрд╛ рд╣реЗрд░реНрдЫред

рдпрд╕рд▓реЗ рдбрд┐рдкреНрд▓реЛрдЗрдореЗрдиреНрдЯ рдкреВрд░рд╛ рдЧрд░реНрдЫред

рдХрд╕рд░реА рддреНрд░реБрдЯрд┐-рд╕рд╣рд┐рд╖реНрдгреБ рд╡реЗрдм рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рд▓рд╛рдЧреВ рд╣реБрдиреНрдЫ
рд╕реЗрд╡рд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЪрдХреНрд░

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

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

рдЧрд▓реНрддреА-рд╕рд╣рд┐рд╖реНрдгреБ WEB рд╡рд╛рд╕реНрддреБрдХрд▓рд╛рдХреЛ рдмрд╛рд░реЗрдорд╛ рдореЗрд░реЛ рдЖрдлреНрдиреИ рд╡рд┐рдЪрд╛рд░рд╣рд░реВ рд╕рд╛рдЭрд╛ рдЧрд░реНрджреИ, рдо рдПрдХ рдкрдЯрдХ рдлреЗрд░рд┐ рдпрд╕рдХреЛ рдореБрдЦреНрдп рдмреБрдБрджрд╛рд╣рд░реВ рдиреЛрдЯ рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреБ:

  • рд╢рд╛рд░реАрд░рд┐рдХ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛;
  • рдиреЗрдЯрд╡рд░реНрдХ рдЧрд▓реНрддреА рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ (рдмреНрдпрд╛рд▓реЗрдиреНрд╕рд░, BGP);
  • рдкреНрд░рдпреЛрдЧ рд░ рд╡рд┐рдХрд╕рд┐рдд рд╕рдлреНрдЯрд╡реЗрдпрд░ рдХреЛ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ред

рд╕рдмреИрд▓рд╛рдИ рд╕реНрдерд┐рд░ рдЕрдкрдЯрд╛рдЗрдо!

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди