Какво С Service Mesh?

Π—Π΄Ρ€Π°Π²Π΅ΠΉΡ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ!.. Π’ Π½Π°Π²Π΅Ρ‡Π΅Ρ€ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° курса "Π‘ΠΎΡ„Ρ‚ΡƒΠ΅Ρ€Π΅Π½ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚" ΠŸΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈΠ»ΠΈ смС ΠΎΡ‰Π΅ Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡ€Π΅Π²ΠΎΠ΄.

Какво С Service Mesh?

Π‘Π΅Ρ€Π²ΠΈΠ·Π½Π°Ρ‚Π° ΠΌΡ€Π΅ΠΆΠ° Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠ΅ΠΌ инфраструктурСн слой с ниска латСнтност, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠ±Π΅ΠΌΠΈ ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΎ Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ мСТдупроцСсни ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ интСрфСйси Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° прилоТСния (API). Service Mesh позволява Π±ΡŠΡ€Π·Π°, Π½Π°Π΄Π΅ΠΆΠ΄Π½Π° ΠΈ сигурна комуникация ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΈ чСсто Π΅Ρ„ΠΈΠΌΠ΅Ρ€Π½ΠΈ инфраструктурни услуги Π½Π° прилоТСния. Service Mesh прСдоставя Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° услуги, балансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ, ΠΊΡ€ΠΈΠΏΡ‚ΠΈΡ€Π°Π½Π΅, прозрачност, прослСдимост, удостовСряванС ΠΈ оторизация ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π» Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ (ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Ρ‡).
ΠœΡ€Π΅ΠΆΠ°Ρ‚Π° Π½Π° услугата ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° Ρ‡Ρ€Π΅Π· прСдоставянС Π½Π° всСки СкзСмпляр Π½Π° услуга с прокси СкзСмпляр, Π½Π°Ρ€Π΅Ρ‡Π΅Π½ Π‘Ρ‚Ρ€Π°Π½ΠΈΡ‡Π½Π° ΠΊΠΎΠ»ΠΈΡ‡ΠΊΠ°. Π‘Ρ‚Ρ€Π°Π½ΠΈΡ‡Π½Π° ΠΊΠΎΠ»ΠΈΡ‡ΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈΡ‚Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ услугитС, Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π°Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ със сигурността, тоСст всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС абстрахира ΠΎΡ‚ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈΡ‚Π΅ услуги. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΠΈΡˆΠ°Ρ‚, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΈ обслуТват ΠΊΠΎΠ΄ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² услуги, Π° систСмнитС администратори ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° работят с Service Mesh ΠΈ Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.

Istio ΠΎΡ‚ Google, IBM ΠΈ Lyft Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅ Π½Π°ΠΉ-извСстната ΠΌΡ€Π΅ΠΆΠΎΠ²Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π·Π° услуги. И Kubernetes, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ Π² Google, сСга Π΅ СдинствСната Ρ€Π°ΠΌΠΊΠ° Π·Π° оркСстриранС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π° ΠΎΡ‚ Istio. ДоставчицитС сС ΠΎΠΏΠΈΡ‚Π²Π°Ρ‚ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π°Ρ‚ комСрсиално ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ΠΈ вСрсии Π½Π° Istio. Π©Π΅ бъдС интСрСсно Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊΠ²ΠΈ Π½ΠΎΠ²ΠΈ Π½Π΅Ρ‰Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° донСсат Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄.

Istio ΠΎΠ±Π°Ρ‡Π΅ Π½Π΅ Π΅ СдинствСната опция, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ сС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Service Mesh. ΠΌΠΎΠ΄Π΅Π» sidecar proxy Π΅ Π½Π°ΠΉ-популярната рСализация, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС съди ΠΏΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ‚Π΅ Buoyant, HashiCorp, Solo.io ΠΈ Π΄Ρ€. Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ ΠΈ Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ: тСхнологичният инструмСнтариум Π½Π° Netflix Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚Π΅, ΠΏΡ€ΠΈ ΠΊΠΎΠΉΡ‚ΠΎ функционалността Π½Π° Service Mesh сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° Ρ‡Ρ€Π΅Π· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ Ribbon, Hysterix, Eureka, Archaius, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ ΠΊΠ°Ρ‚ΠΎ Azure Service Fabric.

Service Mesh ΡΡŠΡ‰ΠΎ ΠΈΠΌΠ° своя собствСна тСрминология Π·Π° сСрвизни ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

  • Π Π°ΠΌΠΊΠ° Π·Π° оркСстриранС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ. Въй ΠΊΠ°Ρ‚ΠΎ всС ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ сС добавят към инфраструктурата Π½Π° прилоТСнията, ΠΈΠΌΠ° Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ инструмСнт Π·Π° наблюдСниС ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ - Ρ€Π°ΠΌΠΊΠ° Π·Π° оркСстриранС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ. Kubernetes Ρ‚Π²ΡŠΡ€Π΄ΠΎ Π·Π°Π΅ Ρ‚Π°Π·ΠΈ ниша, Π΄ΠΎΡ‚ΠΎΠ»ΠΊΠΎΠ²Π°, Ρ‡Π΅ Π΄ΠΎΡ€ΠΈ основнитС ΠΌΡƒ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΈ Docker Swarm ΠΈ Mesosphere DC/OS ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ интСграция с Kubernetes ΠΊΠ°Ρ‚ΠΎ Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°.
  • Услуги ΠΈ инстанции (Kubernetes Pods). Π•ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ€ΡŠΡ‚ Π΅ Π΅Π΄Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΎ ΠΊΠΎΠΏΠΈΠ΅ Π½Π° микроуслуга. Понякога Π΅Π΄ΠΈΠ½ СкзСмпляр Π΅ Π΅Π΄ΠΈΠ½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. Π’ Kubernetes Π΅ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ€ΡŠΡ‚ сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ ΠΌΠ°Π»ΠΊΠ° Π³Ρ€ΡƒΠΏΠ° нСзависими ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, Π½Π°Ρ€Π΅Ρ‡Π΅Π½ΠΈ pod. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ рядко ΠΈΠΌΠ°Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π΅Π½ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ инстанция ΠΈΠ»ΠΈ pod; ΠΏΠΎ-чСсто Ρ‚Π΅ ΠΈΠΌΠ°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ услуга, която Π΅ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΈ, ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΈ ΠΈ устойчиви Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ инстанции ΠΈΠ»ΠΈ pod (Ρ€Π΅ΠΏΠ»ΠΈΠΊΠΈ).
  • Sidecar Proxy. Sidecar Proxy Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π΅Π΄ΠΈΠ½ СкзСмпляр ΠΈΠ»ΠΈ pod. Π¦Π΅Π»Ρ‚Π° Π½Π° Sidecar Proxy Π΅ Π΄Π° насочва ΠΈΠ»ΠΈ прокси Ρ‚Ρ€Π°Ρ„ΠΈΠΊ, ΠΈΠ΄Π²Π°Ρ‰ ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, с ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ, ΠΈ Π΄Π° Π²Ρ€ΡŠΡ‰Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊ. Sidecar взаимодСйства с Π΄Ρ€ΡƒΠ³ΠΈ проксита Sidecar ΠΈ сС управлява ΠΎΡ‚ Ρ€Π°ΠΌΠΊΠ° Π·Π° оркСстрация. Много внСдрявания Π½Π° Service Mesh ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Sidecar Proxy Π·Π° ΠΏΡ€ΠΈΡ…Π²Π°Ρ‰Π°Π½Π΅ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° цСлия Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π² ΠΈ извън СкзСмпляр ΠΈΠ»ΠΈ pod.
  • ΠžΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° услугата. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π΅Π΄ΠΈΠ½ СкзСмпляр трябва Π΄Π° ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠΈΡ€Π° с Π΄Ρ€ΡƒΠ³Π° услуга, Ρ‚ΠΎΠΉ трябва Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈ (ΠΎΡ‚ΠΊΡ€ΠΈΠ΅) Π·Π΄Ρ€Π°Π² ΠΈ Π½Π°Π»ΠΈΡ‡Π΅Π½ СкзСмпляр Π½Π° Π΄Ρ€ΡƒΠ³Π°Ρ‚Π° услуга. ОбикновСно Π΅ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ€ΡŠΡ‚ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° DNS Ρ‚ΡŠΡ€ΡΠ΅Π½ΠΈΡ. Π Π°ΠΌΠΊΠ°Ρ‚Π° Π·Π° оркСстрация Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° списък с СкзСмпляри, ΠΊΠΎΠΈΡ‚ΠΎ са Π³ΠΎΡ‚ΠΎΠ²ΠΈ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ заявки, ΠΈ прСдоставя интСрфСйс Π·Π° DNS заявки.
  • БалансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ. ΠŸΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ Ρ€Π°ΠΌΠΊΠΈ Π·Π° оркСстриранС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ осигуряват балансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° слой 4 (транспорт). Service Mesh ΠΏΡ€ΠΈΠ»Π°Π³Π° ΠΏΠΎ-слоТно балансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½ΠΈΠ²ΠΎ 7 (Π½ΠΈΠ²ΠΎ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅), Π±ΠΎΠ³Π°Ρ‚ΠΎ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ ΠΈ ΠΏΠΎ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°. НастройкитС Π·Π° балансиранС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС промСнят с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° API, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ синьо-Π·Π΅Π»Π΅Π½ΠΎ ΠΈΠ»ΠΈ ΠΊΠ°Π½Π°Ρ€Ρ‡Π΅ внСдряванС.
  • Π¨ΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅. Service Mesh ΠΌΠΎΠΆΠ΅ Π΄Π° ΡˆΠΈΡ„Ρ€ΠΎΠ²Π° ΠΈ Π΄Π΅ΡˆΠΈΡ„Ρ€ΠΈΡ€Π° заявки ΠΈ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ, ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°ΠΉΠΊΠΈ Ρ‚ΠΎΠ²Π° Π±Ρ€Π΅ΠΌΠ΅ ΠΎΡ‚ услугитС. Service Mesh ΠΌΠΎΠΆΠ΅ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΈ производитСлността Ρ‡Ρ€Π΅Π· ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ постоянни Π²Ρ€ΡŠΠ·ΠΊΠΈ, намалявайки нСобходимостта ΠΎΡ‚ скъпи изчислСния Π·Π° създаванС Π½Π° Π½ΠΎΠ²ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ. Най-чСсто срСщаното ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΊΡ€ΠΈΠΏΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° Π΅ Π²Π·Π°ΠΈΠΌΠ΅Π½ TLS (mTLS), ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ инфраструктура с ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½ ΠΊΠ»ΡŽΡ‡ (PKI) Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° ΠΈ разпространява сСртификати ΠΈ ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΎΡ‚ Sidecar Proxy.
  • УдостовСряванС ΠΈ оторизация. Service Mesh ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€Π° ΠΈ удостовСрява заявки, Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈ ΠΎΡ‚Π²ΡŠΠ½ ΠΈΠ»ΠΈ Π²ΡŠΡ‚Ρ€Π΅ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° само Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½ΠΈ заявки Π΄ΠΎ инстанции.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° шаблон Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅. Service Mesh ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΌΠΎΠ΄Π΅Π» Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡ€Π° нСздравословнитС СкзСмпляри ΠΈ слСд Ρ‚ΠΎΠ²Π° постСпСнно Π³ΠΈ Π²Ρ€ΡŠΡ‰Π° Π² ΠΏΡƒΠ»Π° ΠΎΡ‚ Π·Π΄Ρ€Π°Π²ΠΈ СкзСмпляри, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

Извиква сС частта ΠΎΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Service Mesh, която управлява мрСТовия Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΌΠ΅ΠΆΠ΄Ρƒ СкзСмпляритС Π Π°Π²Π½ΠΈΠ½Π° Π½Π° Π΄Π°Π½Π½ΠΈ. Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΈ Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Ρ‚Π΅ конфигурация, която ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π Π°Π²Π½ΠΈΠ½Π° Π½Π° Π΄Π°Π½Π½ΠΈ, сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΎΡ‚Π΄Π΅Π»Π΅Π½ ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° Ρ€Π°Π²Π½ΠΈΠ½Π°. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π° Ρ€Π°Π²Π½ΠΈΠ½Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π²Π° ΠΈΠ»ΠΈ Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½ Π΄Π° сС ΡΠ²ΡŠΡ€Π·Π²Π° с API, CLI ΠΈΠ»ΠΈ GUI Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.

Какво С Service Mesh?
ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π°Ρ‚Π° Ρ€Π°Π²Π½ΠΈΠ½Π° Π² Service Mesh разпрСдСля конфигурацията ΠΌΠ΅ΠΆΠ΄Ρƒ Sidecar Proxy ΠΈ Data Plane.

Service Mesh Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° чСсто сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° слоТни ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΈ микроуслуги. ΠŸΠΈΠΎΠ½Π΅Ρ€ΠΈ Π² областта микроуслуги са ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ Lyft, Netflix ΠΈ Twitter, ΠΊΠΎΠΈΡ‚ΠΎ прСдоставят стабилни услуги Π½Π° ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ ΠΏΠΎ цСлия свят. (Π•Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π΅Π½ ΠΏΠΎΠ³Π»Π΅Π΄ Π²ΡŠΡ€Ρ…Ρƒ някои ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈΡ‚Π΅ прСдизвикатСлства, ΠΏΡ€Π΅Π΄ ΠΊΠΎΠΈΡ‚ΠΎ Π΅ ΠΈΠ·ΠΏΡ€Π°Π²Π΅Π½ Netflix.). Π—Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ взискатСлни прилоТСния ΠΏΠΎ-проститС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ вСроятно Ρ‰Π΅ са Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ.

АрхитСктурата Π½Π° Service Mesh Π΅Π΄Π²Π° Π»ΠΈ някога Ρ‰Π΅ бъдС ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΡŠΡ‚ Π½Π° всички ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΈ доставката Π½Π° прилоТСния. АрхитСктитС ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°Ρ‚ с ΠΎΠ³Ρ€ΠΎΠΌΠ΅Π½ арсСнал ΠΎΡ‚ инструмСнти ΠΈ само Π΅Π΄ΠΈΠ½ ΠΎΡ‚ тях Π΅ Ρ‡ΡƒΠΊ, ΠΊΠΎΠΉΡ‚ΠΎ срСд ΠΌΠ½ΠΎΠ³ΠΎΡ‚ΠΎ Π·Π°Π΄Π°Ρ‡ΠΈ трябва Π΄Π° Ρ€Π΅ΡˆΠΈ само Π΅Π΄Π½Π° - ΠΈΠ·ΠΊΠΎΠ²Π°Π²Π°Π½Π΅ Π½Π° ΠΏΠΈΡ€ΠΎΠ½ΠΈ. Π Π΅Ρ„Π΅Ρ€Π΅Π½Ρ‚Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π½Π° микроуслуги ΠΎΡ‚ NGINX, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΊΠ»ΡŽΡ‡Π²Π° няколко Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΌΠΎΠ΄Π΅Π»Π°, ΠΊΠΎΠΈΡ‚ΠΎ осигуряват ΠΊΠΎΠ½Ρ‚ΠΈΠ½ΡƒΡƒΠΌ ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈ Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° микроуслуги.

Π•Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС обСдиняват Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π½Π° Service Mesh, ΠΊΠ°Ρ‚ΠΎ NGINX, ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, Kubernetes ΠΈ микроуслуги ΠΊΠ°Ρ‚ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅Π½ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π΅Π΄Π½Π°ΠΊΠ²ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΈ Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±Π΅Π· Service Mesh. НапримСр Istio Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½ ΠΊΠ°Ρ‚ΠΎ цялостна ΠΌΡ€Π΅ΠΆΠΎΠ²Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π·Π° услуги, Π½ΠΎ Π½Π΅ΠΉΠ½Π°Ρ‚Π° модулност ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚ ΠΈ ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚ само Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ сС нуТдаят. Имайки Ρ‚ΠΎΠ²Π° ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄, Π²Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° Ρ€Π°Π·Π²ΠΈΠ΅Ρ‚Π΅ ясно Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° концСпцията Service Mesh, Π΄ΠΎΡ€ΠΈ Π°ΠΊΠΎ Π½Π΅ стС сигурни, Ρ‡Π΅ някога Ρ‰Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° я Π²Π½Π΅Π΄Ρ€ΠΈΡ‚Π΅ напълно във Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

ΠœΠΎΠ΄ΡƒΠ»Π½ΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚ΠΈ ΠΈ DDD

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€