Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рд╣рд╛рдореА рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рдПрдкреНрд▓рд┐рдХреЗрд╕рдирдмрд╛рдЯ рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрднрд┐рд╕реЗрд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдорд╛ рдЬрд╛рдБрджрд╛, рд╣рд╛рдореАрд▓реЗ рдирдпрд╛рдБ рдЪреБрдиреМрддреАрд╣рд░реВрдХреЛ рд╕рд╛рдордирд╛ рдЧрд░реНрдЫреМрдВред

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

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рдо рдпрд╕реНрддреЛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдХреЛ рд╕рд╛рдордирд╛ рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдиреЗ рдЙрдкрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рд▓рд╛рдореЛ рд╕рдордпрджреЗрдЦрд┐ рдЦреЛрдЬреНрджреИ рдЫреБ (рдореИрд▓реЗ рдпрд╕ рдмрд╛рд░реЗ Habr├й рдорд╛ рд▓реЗрдЦреЗрдХреЛ рдЫреБ: 1, 2), рддрд░ рдЕрдиреНрддрдорд╛ рдореИрд▓реЗ рдореЗрд░реЛ рдЖрдлреНрдиреИ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдорд╛рдзрд╛рди рдЧрд░реЗрдВред рдпрд╕ рд▓реЗрдЦрдорд╛ рдо рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдлрд╛рдЗрджрд╛рд╣рд░реБ рдХреЛ рдмрд╛рд░реЗ рдорд╛ рдХреБрд░рд╛ рдЧрд░реНрдЫреБ рд░ рдпрд╕рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд▓рд╛рдЧреА рдПрдХ рдирдпрд╛рдБ рдЙрдкрдХрд░рдг рд╕рд╛рдЭрд╛ред

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

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

рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг

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

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рд╕рдорд╛рдзрд╛рдирд╣рд░реВ

рдпрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдгрдХреЛ рдзреЗрд░реИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд╣рд░реВ рдкрд╣рд┐рд▓реЗ рдиреИ рдЫрдиреН: рдЗрд╕реНрддрд┐рдУ ╨╕ linkerd2ред рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдмрдХреНрд╕ рдмрд╛рд╣рд┐рд░ рдзреЗрд░реИ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рддрд░ рдПрдХреИ рд╕рдордпрдорд╛, рддреНрдпрд╣рд╛рдБ рд╕реНрд░реЛрддрд╣рд░реВрдорд╛ рдареВрд▓реЛ рдУрднрд░рд╣реЗрдб рдЖрдЙрдБрдЫред рдпрд╕рдмрд╛рд╣реЗрдХ, рдпрд╕реНрддреЛ рдкреНрд░рдгрд╛рд▓реА рдЬрддрд┐ рдареВрд▓реЛ рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рд╕рдЮреНрдЪрд╛рд▓рди рд╣реБрдиреНрдЫ, рдирдпрд╛рдБ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рд╣рд░реВ рдХрд╛рдпрдо рд░рд╛рдЦреНрди рдердк рд╕реНрд░реЛрддрд╣рд░реВ рдЪрд╛рд╣рд┐рдиреНрдЫред Avito рдорд╛, рд╣рд╛рдореА kubernetes рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВ рд╕рдЮреНрдЪрд╛рд▓рди рдЧрд░реНрдЫреМрдВ рдЬрд╕рдорд╛ рд╣рдЬрд╛рд░реМрдВ рд╕реЗрд╡рд╛ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рдЫрдиреН (рд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рджреНрд░реБрдд рд░реВрдкрдорд╛ рдмрдвреНрди рдЬрд╛рд░реА рдЫ)ред рдпрд╕рдХреЛ рд╣рд╛рд▓рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдорд╛, Istio рд▓реЗ рдкреНрд░рддрд┐ рд╕реЗрд╡рд╛ рдЙрджрд╛рд╣рд░рдг ~ 300Mb RAM рдЦрдкрдд рдЧрд░реНрджрдЫред рд╕рдореНрднрд╛рд╡рдирд╛рд╣рд░реВрдХреЛ рдареВрд▓реЛ рд╕рдВрдЦреНрдпрд╛рдХреЛ рдХрд╛рд░рдгрд▓реЗ рдЧрд░реНрджрд╛, рдкрд╛рд░рджрд░реНрд╢реА рд╕рдиреНрддреБрд▓рдирд▓реЗ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рд╕рдордЧреНрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп (10ms рд╕рдореНрдо) рд▓рд╛рдИ рдкрдирд┐ рдЕрд╕рд░ рдЧрд░реНрдЫред

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

рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдирд┐рд░реНрдгрдпрдорд╛ рдкреБрдЧреНрдпреМрдВ:тАК рдиреЗрддреНрд░рдореЗрд╢.

рдиреЗрддреНрд░рдореЗрд╢

рдиреЗрддреНрд░рдореЗрд╢ рдкреНрд░рдгрд╛рд▓реАрдорд╛ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛рд▓рд╛рдИ рдзреНрдпрд╛рди рдирджрд┐рдИ рдЕрд╕реАрдо рдорд╛рдкрди рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рдХреЛ рд╕рд╛рде рдПрдХ рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди рд╣реЛред

рдирдпрд╛рдБ рд╕рдорд╛рдзрд╛рдирдХреЛ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдпрд╣рд░реВ рдХрдо рд╕реНрд░реЛрдд рдУрднрд░рд╣реЗрдб рд░ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рдерд┐рдПред рдореБрдЦреНрдп рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдордзреНрдпреЗ, рд╣рд╛рдореА рддреБрд░реБрдиреНрддреИ рд╣рд╛рдореНрд░реЛ Jaeger рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдкрдорд╛ рдЯреНрд░реЗрд╕рд┐рдЩ рд╕реНрдкреНрдпрд╛рдирд╣рд░реВ рдкрдард╛рдЙрди рд╕рдХреНрд╖рдо рд╣реБрди рдЪрд╛рд╣рдиреНрдереНрдпреМрдВред

рдЖрдЬ, рдЕрдзрд┐рдХрд╛рдВрд╢ рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рдирд╣рд░реВ Golang рдорд╛ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫред рд░, рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рд░рдгрд╣рд░реВ рдЫрдиреНред Golang рдорд╛ рд╕рдЮреНрдЬрд╛рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд▓реЗрдЦреНрди рдЬреБрди I/O рд╕рдБрдЧ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрдиреБрд╕рд╛рд░ рдХреЛрд░рд╣рд░реВ рдорд╛рдкрди рдЧрд░реНрди рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░ рдПрдХрджрдо рд╕рд░рд▓ рдЫред рд░, рдХреЗ рдкрдирд┐ рдзреЗрд░реИ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫ, рдкреНрд░рджрд░реНрд╢рди рдпреЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдкрд░реНрдпрд╛рдкреНрдд рдЫред рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рдЧреЛрд▓рд╛рдЩрд▓рд╛рдИ рдкрдирд┐ рд░реЛрдЬреНрдпреМрдВред

рдЙрддреНрдкрд╛рджрдХрддрд╛

рд╣рд╛рдореАрд▓реЗ рдЕрдзрд┐рдХрддрдо рдЙрддреНрдкрд╛рджрдХрддреНрд╡ рд╣рд╛рд╕рд┐рд▓ рдЧрд░реНрди рд╣рд╛рдореНрд░реЛ рдкреНрд░рдпрд╛рд╕рд▓рд╛рдИ рдХреЗрдиреНрджреНрд░рд┐рдд рдЧрд░реЗрдХрд╛ рдЫреМрдВред рд╕реЗрд╡рд╛рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдгрдХреЛ рдЫреЗрдЙрдорд╛ рддреИрдирд╛рде рдЧрд░рд┐рдПрдХреЛ рд╕рдорд╛рдзрд╛рдирдХреЛ рд▓рд╛рдЧрд┐, RAM рд░ CPU рд╕рдордпрдХреЛ рд╕рд╛рдиреЛ рдЦрдкрдд рдЖрд╡рд╢реНрдпрдХ рдЫред рд░, рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдврд┐рд▓рд╛рдЗ рдкрдирд┐ рд╕рд╛рдиреЛ рд╣реБрдиреБрдкрд░реНрдЫред

рд╣реЗрд░реМрдВ рдирддрд┐рдЬрд╛ рдХреЗ рднрдпреЛред

рд░рд╛рдо

Netramesh рд▓реЗ рдЯреНрд░рд╛рдлрд┐рдХ рдмрд┐рдирд╛ ~ 10Mb рдЦрдкрдд рдЧрд░реНрдЫ рд░ 50Mb рдЕрдзрд┐рдХрддрдо 10000 RPS рдкреНрд░рддрд┐ рдЙрджрд╛рд╣рд░рдг рд▓реЛрдб рд╣реБрдиреНрдЫред

Istio envoy proxy рд▓реЗ рд╣рд╛рдореНрд░рд╛ рдХреНрд▓рд╕реНрдЯрд░рд╣рд░реВрдорд╛ рд╣рдЬрд╛рд░реМрдВ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВрдорд╛ рд╕рдзреИрдВ ~300Mb рдЦрдкрдд рдЧрд░реНрдЫред рдпрд╕рд▓реЗ рдпрд╕рд▓рд╛рдИ рд╕рдореНрдкреВрд░реНрдг рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рдорд╛рдкрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдБрджреИрдиред

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рдиреЗрддреНрд░рдореЗрд╢рд╕рдБрдЧ рд╣рд╛рдореАрд▓реЗ рдореЗрдореЛрд░реА рдЦрдкрддрдорд╛ ~10x рдХрдореА рдкрд╛рдпреМрдВред

CPU

CPU рдЙрдкрдпреЛрдЧ рд▓реЛрдб рдЕрдиреНрддрд░реНрдЧрдд рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдмрд░рд╛рдмрд░ рдЫред рдпреЛ рд╕рд╛рдЗрдбрдХрд╛рд░рдорд╛ рдкреНрд░рддрд┐ рдПрдХрд╛рдЗ рд╕рдордп рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛рдорд╛ рдирд┐рд░реНрднрд░ рдЧрд░реНрджрдЫред рд╢рд┐рдЦрд░рдорд╛ рдкреНрд░рддрд┐ рд╕реЗрдХреЗрдиреНрдб 3000 рдЕрдиреБрд░реЛрдзрд╣рд░реВрдорд╛ рдорд╛рдирд╣рд░реВ:

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рддреНрдпрд╣рд╛рдБ рдЕрд░реНрдХреЛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдмрд┐рдиреНрджреБ рдЫ: Netramesh - рдПрдХ рдирд┐рдпрдиреНрддреНрд░рдг рд╡рд┐рдорд╛рди рдмрд┐рдирд╛ рд╕рдорд╛рдзрд╛рди рд░ рд▓реЛрдб рдмрд┐рдирд╛ CPU рд╕рдордп рдЦрдкрдд рдЧрд░реНрджреИрдиред Istio рд╕рдВрдЧ, sidecars рд╕рдзреИрдВ рд╕реЗрд╡рд╛ рд╕рдорд╛рдкреНрддрд┐ рдмрд┐рдиреНрджреБрд╣рд░реВ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХред рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рд╣рд╛рдореА рд▓реЛрдб рдмрд┐рдирд╛ рдпреЛ рддрд╕реНрд╡реАрд░ рджреЗрдЦреНрди рд╕рдХреНрдЫреМрдВ:

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рд╣рд╛рдореА рд╕реЗрд╡рд╛рд╣рд░реВ рдмреАрдЪ рд╕рдЮреНрдЪрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ HTTP/1 рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред рджреВрдд рдорд╛рд░реНрдлрдд рдкреНрд░реЛрдХреНрд╕реА рдЧрд░реНрджрд╛ Istio рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдорд╛ рд╡реГрджреНрдзрд┐ 5-10ms рд╕рдореНрдо рдерд┐рдпреЛ, рдЬреБрди рдПрдХ рдорд┐рд▓рд┐рд╕реЗрдХреЗрдиреНрдб рдорд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЧрд░реНрди рддрдпрд╛рд░ рд╕реЗрд╡рд╛рд╣рд░реБ рдХреЛ рд▓рд╛рдЧреА рдзреЗрд░реИ рдзреЗрд░реИ рдЫред рдиреЗрддреНрд░рдореЗрд╢рдХреЛ рд╕рд╛рде рдпреЛ рд╕рдордп реж.рел-реи рдорд┐рд▓рд┐рдПрд╕рдорд╛ рдШрдЯреЗрдХреЛ рдЫред

рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА

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

рд╕реЗрд╡рд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рдиреЗрддреНрд░рдореЗрд╢рд▓реЗ рд╕реЗрд╡рд╛ рдЦреЛрдЬрдХреЛ рд▓рд╛рдЧрд┐ рдХреБрдиреИ рдкрдирд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрдпрдиреНрддреНрд░ рдердкреНрджреИрдиред рд╕рдмреИ рдпрд╛рддрд╛рдпрд╛рдд рдиреЗрддреНрд░рд╛ рд╕рд╛рдЗрдбрдХрд╛рд░ рдорд╛рд░реНрдлрдд рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдкрдорд╛ рдкреНрд░реЛрдХреНрд╕реА рдЧрд░рд┐рдПрдХреЛ рдЫред

Netramesh HTTP/1 рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░реЛрдЯреЛрдХрд▓ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред рдпрд╕рд▓рд╛рдИ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди, рдкреЛрд░реНрдЯрд╣рд░реВрдХреЛ рдХрдиреНрдлрд┐рдЧрд░ рдпреЛрдЧреНрдп рд╕реВрдЪреА рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдзреЗрд░реИ рдкреЛрд░реНрдЯрд╣рд░реВ рдЫрдиреН рдЬрд╕рдХреЛ рдорд╛рдзреНрдпрдордмрд╛рдЯ HTTP рд╕рдВрдЪрд╛рд░ рд╣реБрдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореА рд╕реЗрд╡рд╛рд╣рд░реВ рд░ рдмрд╛рд╣реНрдп рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдмреАрдЪ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рдХреЛ рд▓рд╛рдЧрд┐ 80, 8890, 8080 рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рддрд┐рдиреАрд╣рд░реВ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕реЗрдЯ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред NETRA_HTTP_PORTS.

рдпрджрд┐ рддрдкрд╛рдЗрдБ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рд▓рд╛рдИ рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░рдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рд░ рд╕реЗрд╡рд╛рд╣рд░реВ рдмреАрдЪрдХреЛ рдЕрдиреНрддрд░-рдХреНрд▓рд╕реНрдЯрд░ рд╕рдЮреНрдЪрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ рдпрд╕рдХреЛ рд╕реЗрд╡рд╛ рдирд┐рдХрд╛рдп рд╕рдВрдпрдиреНрддреНрд░рдХреЛ рд░реВрдкрдорд╛, рддрдм рд╕рдВрдпрдиреНрддреНрд░ рдареНрдпрд╛рдХреНрдХреИ рдЙрд╕реНрддреИ рд░рд╣рдиреНрдЫред рдкрд╣рд┐рд▓реЗ, рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрднрд┐рд╕рд▓реЗ kube-dns рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕реЗрд╡рд╛ IP рдареЗрдЧрд╛рдирд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдЫ рд░ рдпрд╕рдорд╛ рдирдпрд╛рдБ рдЬрдбрд╛рди рдЦреЛрд▓реНрдЫред рдпреЛ рдЬрдбрд╛рди рдкрд╣рд┐рд▓реЛ рдкрдЯрдХ рд╕реНрдерд╛рдиреАрдп рдиреЗрддреНрд░рд╛-рд╕рд╛рдЗрдбрдХрд╛рд░рд╕рдБрдЧ рд╕реНрдерд╛рдкрд┐рдд рд╣реБрдиреНрдЫ рд░ рд╕рдмреИ TCP рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВ рд╕реБрд░реБрдорд╛ рдиреЗрддреНрд░рд╛рдорд╛ рдЖрдЗрдкреБрдЧреНрдЫрдиреНред рдЕрд░реНрдХреЛ, рдиреЗрдЯреНрд░рд╛-рд╕рд╛рдЗрдбрдХрд╛рд░рд▓реЗ рдореВрд▓ рдЧрдиреНрддрд╡реНрдпрд╕рдБрдЧ рдЬрдбрд╛рди рд╕реНрдерд╛рдкрд┐рдд рдЧрд░реНрджрдЫред рдиреЛрдбрдорд╛ рдкреЛрдб рдЖрдИрдкреАрдорд╛ NAT рдареНрдпрд╛рдХреНрдХреИ рдиреЗрдЯреНрд░рд╛ рдмрд┐рдирд╛ рдЬрд╕реНрддреИ рд░рд╣рдиреНрдЫред

рд╡рд┐рддрд░рд┐рдд рдЯреНрд░реЗрд╕рд┐рдЩ рд░ рд╕рдиреНрджрд░реНрдн рдлрд░реНрд╡рд╛рд░реНрдбрд┐рдЩ

рдиреЗрддреНрд░рдореЗрд╢рд▓реЗ HTTP рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдмрд╛рд░реЗ рдЯреНрд░реЗрд╕рд┐рдЩ рд╕реНрдкреНрдпрд╛рдирд╣рд░реВ рдкрдард╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдиреЗрдЯреНрд░рд╛-рд╕рд╛рдЗрдбрдХрд╛рд░рд▓реЗ HTTP рдкреНрд░реЛрдЯреЛрдХрд▓ рдкрд╛рд░реНрд╕ рдЧрд░реНрджрдЫ, рдЕрдиреБрд░реЛрдз рдврд┐рд▓рд╛рдЗ рдЙрдкрд╛рдп рдЧрд░реНрджрдЫ, рд░ HTTP рд╣реЗрдбрд░рд╣рд░реВрдмрд╛рдЯ рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓реНрдЫред рдЕрдиреНрддрддрдГ, рд╣рд╛рдореАрд▓реЗ рдПрдХрд▓ рдЬреЗрдЧрд░ рдкреНрд░рдгрд╛рд▓реАрдорд╛ рд╕рдмреИ рдЯреНрд░реЗрд╕рд╣рд░реВ рдкрд╛рдЙрдБрдЫреМрдВред рдлрд╛рдЗрди-рдЧреНрд░реЗрдиреНрдб рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпрджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдЧрд░рд┐рдПрдХреЛ рд╡рд╛рддрд╛рд╡рд░рдгреАрдп рдЪрд░рд╣рд░реВ рдкрдирд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред jaeger go рдкреБрд╕реНрддрдХрд╛рд▓рдп.

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

рддрд░ рддреНрдпрд╣рд╛рдБ рд╕рдорд╕реНрдпрд╛ рдЫред рд╕реЗрд╡рд╛рд╣рд░реВрд▓реЗ рд╡рд┐рд╢реЗрд╖ uber рд╣реЗрдбрд░ рдЙрддреНрдкрдиреНрди рд░ рдкрдард╛рдЙрдБрджреИрди, рд╣рд╛рдореА рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдЬрдбрд╛рди рдЯреНрд░реЗрд╕рд┐рдЩ рд╕реНрдкреНрдпрд╛рдирд╣рд░реВ рджреЗрдЦреНрдиреЗ рдЫреИрдиреМрдВред рд░ рдпреЛ рд╣рд╛рдореАрд▓реЗ рдЪрд╛рдБрдбреИ рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдХреЛ рдХрд╛рд░рдг рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпрд╣рд╛рдБ рдлреЗрд░рд┐ рдиреЗрддреНрд░рдореЗрд╢рд╕рдБрдЧ рд╕рдорд╛рдзрд╛рди рдЫред рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВрд▓реЗ HTTP рд╣реЗрдбрд░рд╣рд░реВ рдкрдвреНрдЫрдиреН рд░, рдпрджрд┐ рддрд┐рдиреАрд╣рд░реВрдорд╛ uber рдЯреНрд░реЗрд╕ рдЖрдИрдбреА рд╕рдорд╛рд╡реЗрд╢ рдЫреИрди рднрдиреЗ, рдПрдЙрдЯрд╛ рдЙрддреНрдкрдиреНрди рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдиреЗрддреНрд░рдореЗрд╢рд▓реЗ рд╕рд╛рдЗрдбрдХрд╛рд░рдорд╛ рдЖрдЧрдорди рд░ рдмрд╣рд┐рд░реНрдЧрдорди рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реА рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрджрдЫ рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рдмрд╣рд┐рд░реНрдЧрдорди рдЕрдиреБрд░реЛрдз рд╣реЗрдбрд░рд╣рд░реВрд╕рдБрдЧ рд╕рдореГрджреНрдз рдмрдирд╛рдПрд░ рдореЗрд▓ рдЦрд╛рдиреНрдЫред рддрдкрд╛рдИрдВрд▓реЗ рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рдЧрд░реНрдиреБрдкрд░реНрдиреЗ рднрдиреЗрдХреЛ рдХреЗрд╡рд▓ рдПрдЙрдЯрд╛ рд╣реЗрдбрд░ рдкрдард╛рдЙрдиреБ рд╣реЛ X-Request-Id, рдЬреБрди рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ NETRA_HTTP_REQUEST_ID_HEADER_NAMEред Netramesh рдорд╛ рд╕рдиреНрджрд░реНрднрдХреЛ рдЖрдХрд╛рд░ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрди, рддрдкрд╛рдЗрдБ рдирд┐рдореНрди рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ: NETRA_TRACING_CONTEXT_EXPIRATION_MILLISECONDS (рд╕рдордп рдЬрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдиреНрджрд░реНрдн рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдиреЗрдЫ) рд░ NETRA_TRACING_CONTEXT_CLEANUP_INTERVAL (рд╕рдиреНрджрд░реНрдн рд╕рдлрд╛рдИ рдХреЛ рдЖрд╡реГрддреНрддрд┐)ред

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

рдЕрдиреБрд░реЛрдз рд╕реНрд░реЛрдд рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрджреИ

рдЕрдиреБрд░реЛрдз рдХрд╣рд╛рдБрдмрд╛рдЯ рдЖрдпреЛ рднрдиреЗрд░ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрди, рддрдкрд╛рдЗрдБ рд╕реНрд░реЛрддрдХреЛ рд╕рд╛рде рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рд╣реЗрдбрд░ рдердкреНрдиреЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ NETRA_HTTP_X_SOURCE_HEADER_NAME рддрдкрд╛рдИрд▓реЗ рд╣реЗрдбрд░ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдЬреБрди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рд╕реНрдерд╛рдкрд┐рдд рд╣реБрдиреЗрдЫред рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ NETRA_HTTP_X_SOURCE_VALUE рддрдкрд╛рдИрд▓реЗ рд╕рдмреИ рдмрд╣рд┐рд░реНрдЧрдорди рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ X-рд╕реНрд░реЛрдд рд╣реЗрдбрд░ рд╕реЗрдЯ рдЧрд░рд┐рдиреЗ рдорд╛рди рд╕реЗрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдпрд╕рд▓реЗ рдпреЛ рдЙрдкрдпреЛрдЧреА рд╣реЗрдбрд░рдХреЛ рд╡рд┐рддрд░рдгрд▓рд╛рдИ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рд╕рдорд╛рди рд░реВрдкрдорд╛ рд╡рд┐рддрд░рдг рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рддреНрдпрд╕рдкрдЫрд┐ рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рд▓рдЧ рд░ рдореЗрдЯреНрд░рд┐рдХреНрд╕рдорд╛ рдердкреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдЯреНрд░рд╛рдлрд┐рдХ рдорд╛рд░реНрдЧ рд░ рдиреЗрддреНрд░рдореЗрд╢ рдЖрдиреНрддрд░рд┐рдХ

рдиреЗрддреНрд░рдореЗрд╢ рджреБрдИ рдореБрдЦреНрдп рдШрдЯрдХрд╣рд░реВ рдорд┐рд▓реЗрд░ рдмрдиреЗрдХреЛ рдЫред рдкрд╣рд┐рд▓реЛ, netra-init, рдЯреНрд░рд╛рдлрд┐рдХ рдЕрд╡рд░реЛрдз рдЧрд░реНрди рдиреЗрдЯрд╡рд░реНрдХ рдирд┐рдпрдорд╣рд░реВ рд╕реЗрдЯ рдЧрд░реНрджрдЫред рдЙрд╕рд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫ iptables рдирд┐рдпрдорд╣рд░реВ рдкреБрди: рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЧрд░реНрджрдЫ рдиреЗрддреНрд░рдореЗрд╢рдХреЛ рджреЛрд╕реНрд░реЛ рдореБрдЦреНрдп рдХрдореНрдкреЛрдиреЗрдиреНрдЯ рд╣реЛ, рд╕рд╛рдЗрдбрдХрд╛рд░рдорд╛ рдЯреНрд░рд╛рдлрд┐рдХрдХреЛ рд╕рдмреИ рд╡рд╛ рдХреЗрд╣реА рдЕрдВрд╢ рд░реЛрдХреНрдиред рддрдкрд╛рдИрдВрд▓реЗ рдЖрдЧрдорди рд░ рдмрд╛рд╣рд┐рд░ рдЬрд╛рдиреЗ TCP рд╕рддреНрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдХреБрди рдкреЛрд░реНрдЯрд╣рд░реВ рдЕрд╡рд░реЛрдз рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ: INBOUND_INTERCEPT_PORTS, OUTBOUND_INTERCEPT_PORTS.

рдЙрдкрдХрд░рдгрдорд╛ рдПрдХ рд░реЛрдЪрдХ рд╕реБрд╡рд┐рдзрд╛ рдкрдирд┐ рдЫ - рд╕рдореНрднрд╛рд╡рд┐рдд рдорд╛рд░реНрдЧред рдпрджрд┐ рддрдкрд╛рдЗрдБ рдЯреНрд░реЗрд╕рд┐рдЩ рд╕реНрдкреНрдпрд╛рдирд╣рд░реВ рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢реЗрд╖ рд░реВрдкрдорд╛ рдиреЗрддреНрд░рдореЗрд╢ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддреНрдпрд╕рдкрдЫрд┐ рдЙрддреНрдкрд╛рджрди рд╡рд╛рддрд╛рд╡рд░рдгрдорд╛ рддрдкрд╛рдЗрдБ рд╕реНрд░реЛрддрд╣рд░реВ рдмрдЪрдд рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рднреЗрд░рд┐рдПрдмрд▓рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕рдореНрднрд╛рд╡реНрдп рд░реВрдЯрд┐рдЩ рд╕рдХреНрд╖рдо рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред NETRA_INBOUND_PROBABILITY ╨╕ NETRA_OUTBOUND_PROBABILITY (реж рджреЗрдЦрд┐ рез рд╕рдореНрдо)ред рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдорд╛рди 0 рд╣реЛ (рд╕рдмреИ рдпрд╛рддрд╛рдпрд╛рдд рд░реЛрдХрд┐рдПрдХреЛ рдЫ)ред

рд╕рдлрд▓ рдЕрд╡рд░реЛрдз рдкрдЫрд┐, рдиреЗрддреНрд░рд╛ рд╕рд╛рдЗрдбрдХрд╛рд░рд▓реЗ рдирдпрд╛рдБ рдЬрдбрд╛рди рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрджрдЫ рд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ SO_ORIGINAL_DST рдореВрд▓ рдЧрдиреНрддрд╡реНрдп рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдХреЗрдЯ рд╡рд┐рдХрд▓реНрдкред рддреНрдпрд╕рдкрдЫрд┐ рдиреЗрддреНрд░рд╛рд▓реЗ рдореВрд▓ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рдорд╛ рдирдпрд╛рдБ рдЬрдбрд╛рди рдЦреЛрд▓реНрдЫ рд░ рддреНрдпрд╣рд╛рдБрдмрд╛рдЯ рдЬрд╛рдиреЗ рд╕рдмреИ рдЯреНрд░рд╛рдлрд┐рдХрд╣рд░реВ рд╕реБрдиреЗрд░, рдкрдХреНрд╖рд╣рд░реВ рдмреАрдЪ рджреБрдИ-рддрд░реНрдлреА TCP рд╕рдВрдЪрд╛рд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрджрдЫред рдпрджрд┐ рдкреЛрд░реНрдЯ HTTP рдХреЛ рд░реВрдкрдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ рднрдиреЗ, рдиреЗрддреНрд░рд╛рд▓реЗ рдпрд╕рд▓рд╛рдИ рдкрд╛рд░реНрд╕ рд░ рдЯреНрд░реЗрд╕ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрджрдЫред рдпрджрд┐ HTTP рдкрд╛рд░реНрд╕рд┐рдЩ рдЕрд╕рдлрд▓ рднрдпреЛ рднрдиреЗ, Netra TCP рдорд╛ рдлрд░реНрдХрд┐рдиреНрдЫ рд░ рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдкрдорд╛ рдмрд╛рдЗрдЯрд╣рд░реВ рдкреНрд░реЛрдХреНрд╕реА рдЧрд░реНрджрдЫред

рдирд┐рд░реНрднрд░рддрд╛ рдЧреНрд░рд╛рдл рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджреИ

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

рдпрджрд┐ рддрдкрд╛рдЗрдБ рдЯреНрд░реЗрд╕рд┐рдЩ рд╕реНрдкреНрдпрд╛рдирд╣рд░реВ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди Elasticsearch рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдПрдХ рд╕рд╛рдзрд╛рд░рдг Golang рдЙрдкрдпреЛрдЧрд┐рддрд╛, рдЬрд╕рд▓реЗ Elasticsearch рдХреЛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд░ рдХреНрд╖рдорддрд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдорд┐рдиреЗрдЯрдорд╛ рд╕рдорд╛рди рдЧреНрд░рд╛рдл рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрдиреЗрдЫред

Netramesh - рд╣рд▓реНрдХрд╛ рд╕реЗрд╡рд╛ рдЬрд╛рд▓ рд╕рдорд╛рдзрд╛рди

Netramesh рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ

рдиреЗрддреНрд░рд╛ рдХреБрдиреИ рдкрдирд┐ рдЕрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯрд░ рдЪрд▓рд╛рдЙрдиреЗ рдХреБрдиреИ рдкрдирд┐ рд╕реЗрд╡рд╛рдорд╛ рд╕рдЬрд┐рд▓реИ рдердкреНрди рд╕рдХрд┐рдиреНрдЫред рддрдкрд╛рдИрдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдпрд╣рд╛рдБ.

рд╣рд╛рд▓, рдиреЗрддреНрд░рд╛рд╕рдБрдЧ рд╕реЗрд╡рд╛рд╣рд░реВрдорд╛ рд╕рд╛рдЗрдбрдХрд╛рд░рд╣рд░реВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдЫреИрди, рддрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХрд╛ рд▓рд╛рдЧрд┐ рдпреЛрдЬрдирд╛рд╣рд░реВ рдЫрдиреНред

рдиреЗрддреНрд░рдореЗрд╢рдХреЛ рднрд╡рд┐рд╖реНрдп

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

рднрд╡рд┐рд╖реНрдпрдорд╛, рдиреЗрддреНрд░рдореЗрд╢рд▓реЗ HTTP рдмрд╛рд╣реЗрдХ рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рддрд╣ рдкреНрд░реЛрдЯреЛрдХрд▓рд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрдиреЗрдЫред L7 рд░рд╛рдЙрдЯрд┐рдЩ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдпрдорд╛ рдЙрдкрд▓рдмреНрдз рд╣реБрдиреЗрдЫред

рдпрджрд┐ рддрдкрд╛рдЗрдБ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рд╕рд╛рдордирд╛ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ рдиреЗрддреНрд░рдореЗрд╢ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдкреНрд░рд╢реНрди рд░ рд╕реБрдЭрд╛рд╡рд╣рд░реВрдХреЛ рд╕рд╛рде рд╣рд╛рдореАрд▓рд╛рдИ рд▓реЗрдЦреНрдиреБрд╣реЛрд╕реНред

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

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