Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, мСня Π·ΠΎΠ²ΡƒΡ‚ Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ ΠšΡ€Π°ΡΠ½ΠΎΠ². Π£ΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ пяти Π»Π΅Ρ‚ я занимаюсь администрированиСм кластСров Kubernetes ΠΈ построСниСм слоТных микросСрвисных Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€. Π’ Π½Π°Ρ‡Π°Π»Π΅ этого Π³ΠΎΠ΄Π° ΠΌΡ‹ запустили сСрвис ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ кластСрами Kubernetes Π½Π° Π±Π°Π·Π΅ Containerum. ΠŸΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ ΠΏΠΎΠ²ΠΎΠ΄ΠΎΠΌ расскаТу, Ρ‡Ρ‚ΠΎ прСдставляСт собой этот самый Kubernetes ΠΈ Ρ‡Π΅ΠΌ интСграция с Π²Π΅Π½Π΄ΠΎΡ€ΠΎΠΌ отличаСтся ΠΎΡ‚ open source.

Для Π½Π°Ρ‡Π°Π»Π°, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Kubernetes. Π­Ρ‚ΠΎ систСма для управлСния ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π½Π° большом количСствС хостов. Π‘ грСчСского, кстати, пСрСводится ΠΊΠ°ΠΊ Β«ΠΏΠΈΠ»ΠΎΡ‚Β» ΠΈΠ»ΠΈ Β«Ρ€ΡƒΠ»Π΅Π²ΠΎΠΉΒ». Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Google, послС Ρ‡Π΅Π³ΠΎ Π² качСствС тСхнологичСского Π²ΠΊΠ»Π°Π΄Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π° Cloud Native Computing Foundation, ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ нСкоммСрчСской ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, которая ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π²Π΅Π΄ΡƒΡ‰ΠΈΡ… ΠΌΠΈΡ€ΠΎΠ²Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ поставщиков ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.

Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

Π ΡƒΠ»ΠΈΡ‚ΡŒ большим числом ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ²

Π’Π΅ΠΏΠ΅Ρ€ΡŒ разбСрСмся, Ρ‡Ρ‚ΠΎ это Π΅Ρ‰Π΅ Π·Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ со всСм Π΅Π³ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ – Π² основном, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… зависит Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ВсС это Π·Π°ΠΏΠ°ΠΊΠΎΠ²Π°Π½ΠΎ Π² Π°Ρ€Ρ…ΠΈΠ²Ρ‹ ΠΈ прСдставлСно Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±Ρ€Π°Π·Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π²Π½Π΅ зависимости ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ. Но Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π½Π° большом количСствС хостов ΠΎΡ‡Π΅Π½ΡŒ слоТно. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΈ Π±Ρ‹Π» создан Kubernetes.

ΠžΠ±Ρ€Π°Π· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° прСдставляСт собой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ плюс Π΅Π³ΠΎ зависимости. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΅Π³ΠΎ зависимости ΠΈ ΠΎΠ±Ρ€Π°Π· Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы ОБ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… частях ΠΎΠ±Ρ€Π°Π·Π°, Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… слоях. Π‘Π»ΠΎΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². НапримСр, для всСх ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ слой Ubuntu. ΠŸΡ€ΠΈ запускС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π½Π΅Ρ‚ Π½ΡƒΠΆΠ΄Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π½Π° хостС мноТСство ΠΊΠΎΠΏΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ слоя. Π­Ρ‚ΠΎ позволяСт ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ доставку ΠΎΠ±Ρ€Π°Π·ΠΎΠ².

Когда ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Π½ΡƒΠΆΠ½Ρ‹Π΅ слои Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π° ΠΈ образуСтся овСрлСйная файловая систСма. Π‘Π²Π΅Ρ€Ρ…Ρƒ накладываСтся слой для записи, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΏΡ€ΠΈ остановкС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, удаляСтся. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ запускС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Ρƒ прилоТСния всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ окруТСния Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… хостовых ОБ. Π‘ΡƒΠ΄ΡŒ Ρ‚ΠΎ Ubuntu ΠΈΠ»ΠΈ CentOS, β€” ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½ ΠΎΡ‚ хоста ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ встроСнных Π² ядро Linux ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ². ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ Π½Π΅ видят Ρ„Π°ΠΉΠ»Ρ‹, процСссы хоста ΠΈ сосСдних ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². Вакая изоляция ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡ‚ хостовой ОБ Π΄Π°Ρ‘Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ слой бСзопасности.

Для управлСния ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π½Π° хостС Π΅ΡΡ‚ΡŒ мноТСство инструмСнтов. Π‘Π°ΠΌΡ‹ΠΉ популярный ΠΈΠ· Π½ΠΈΡ…, β€” это Docker. Он позволяСт ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². Однако ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ хостС. ΠŸΡ€ΠΈ нСобходимости управлСния ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π½Π° мноТСствС хостов Docker ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Тизнь ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² Π² Π°Π΄. ΠŸΠΎΡ‚ΠΎΠΌΡƒ ΠΈ Π±Ρ‹Π» создан Kubernetes.

Π’ΠΎΡΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ Kubernetes ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ обусловлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ€ΡƒΠ»ΠΈΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π½Π° мноТСствС хостов ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΈΠΌΠΈ Π΅Π΄ΠΈΠ½Ρ‹ΠΌΠΈ сущностями. ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ систСмС обСспСчиваСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ DevOps ΠΈΠ»ΠΈ Development Operations, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Kubernetes ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для запуска процСссов этого самого DevOps.

Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

Рисунок 1. Π‘Ρ…Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Kubernetes

Полная автоматизация

DevOps, Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, прСдставляСт собой Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π“Ρ€ΡƒΠ±ΠΎ говоря, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΈΡˆΡƒΡ‚ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ заливаСтся Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π—Π°Ρ‚Π΅ΠΌ этот ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ автоматичСски ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒΡΡ сразу Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ со всСми Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Β«Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡΒ» Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΡΡ‚Π°Π΄ΠΈΡŽ – Staging, Π° Π·Π°Ρ‚Π΅ΠΌ сразу ΠΈ Π½Π° Production.

ВмСстС с Kubernetes DevOps позволяСт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот процСсс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°Π» практичСски Π±Π΅Π· участия самих Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π—Π° счСт этого Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ускоряСтся сборка, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ Π½Π΅ приходится Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ этим Ρƒ сСбя Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ β€” ΠΎΠ½ просто ΠΏΠΈΡˆΠ΅Ρ‚ кусок ΠΊΠΎΠ΄Π°, ΠΏΡƒΡˆΠΈΡ‚ ΠΊΠΎΠ΄ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, послС Ρ‡Π΅Π³ΠΎ запускаСтся pipeline, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбя процСсс сборки, тСстирования, Π²Ρ‹ΠΊΠ°Ρ‚ΠΊΠΈ. И Ρ‚Π°ΠΊ происходит с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ, поэтому тСстированиС происходит Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎ.

ΠŸΡ€ΠΈ этом использованиС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° позволяСт Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всС ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹ΠΉΠ΄Π΅Ρ‚ Π² production ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈΠ· разряда Β«Π½Π° тСстС Π±Ρ‹Π»ΠΈ ΠΎΠ΄Π½ΠΈ вСрсии, Π² production – Π΄Ρ€ΡƒΠ³ΠΈΠ΅, Π° поставили – всС ΡƒΠΏΠ°Π»ΠΎΒ». А ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сСгодня ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ Ρ‚Ρ€Π΅Π½Π΄ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΡΠ΅Ρ€Π²ΠΈΡΠ½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ, ΠΊΠΎΠ³Π΄Π° вмСсто ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ³ΠΎ прилоТСния Π΅ΡΡ‚ΡŒ сотни ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ…, Ρ‚ΠΎ для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, β€” потрСбуСтся ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΉ ΡˆΡ‚Π°Ρ‚ сотрудников. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Kubernetes.

ΠŸΠ»ΡŽΡΡ‹, ΠΏΠ»ΡŽΡΡ‹, ΠΏΠ»ΡŽΡΡ‹


Если Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ достоинствах Kubernetes ΠΊΠ°ΠΊ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚ΠΎ Ρƒ Π½Π΅Π³ΠΎ сущСствСнныС ΠΏΠ»ΡŽΡΡ‹ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния управлСния микросСрвисной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ.

  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ мноТСством Ρ€Π΅ΠΏΠ»ΠΈΠΊ. Π‘Π°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅ β€” это ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π½Π° мноТСствС хостов. И Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, β€” ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ мноТСством Ρ€Π΅ΠΏΠ»ΠΈΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠΉ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒΡŽ. Благодаря этому ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅. Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² ΡƒΠΏΠ°Π΄Ρ‘Ρ‚, Ρ‚ΠΎ Kubernetes ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ это ΠΈ пСрСзапустит Π΅Π³ΠΎ снова.
  • ΠšΠ»Π°ΡΡ‚Π΅Ρ€Π½Π°Ρ ΡΠ΅Ρ‚ΡŒ. Π’Π°ΠΊΠΆΠ΅ Ρƒ Kubernetes Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊ называСмая кластСрная ΡΠ΅Ρ‚ΡŒ с собствСнным адрСсным пространством. Благодаря этому ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ‚ свой адрСс. Под ΠΏΠΎΠ΄ΠΎΠΌ понимаСтся минимальная структурная Π΅Π΄ΠΈΠ½ΠΈΡ†Π° кластСра, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ нСпосрСдствСнно Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρƒ Kubernetes Π΅ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ совмСщаСт Π² сСбС балансировщик Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Service Discovery. Π­Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ управлСния IP-адрСсами ΠΈ Π²ΠΎΠ·Π»ΠΎΠΆΠΈΡ‚ΡŒ эту Π·Π°Π΄Π°Ρ‡Ρƒ Π½Π° ΠΏΠ»Π΅Ρ‡ΠΈ Kubernetes. А автоматичСскиС health check`ΠΈ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ ΠΏΠΎΠ΄Ρ‹.
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ конфигурациями. ΠŸΡ€ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ большим количСством ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ становится слоТно ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Для этого Π² Kubernetes Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ рСсурсы ConfigMap`Ρ‹. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… Π² ΠΏΠΎΠ΄Ρ‹ ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Π°ΠΊΠΎΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ позволяСт Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΡΠΈΡΡ‚Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ…ΠΎΡ‚ΡŒ Π² дСсяти, Ρ…ΠΎΡ‚ΡŒ Π² сотнС Ρ€Π΅ΠΏΠ»ΠΈΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
  • Persistent Volumes. ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΏΠΎ своСй сути ΠΈΠΌΠΌΡƒΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹ ΠΈ ΠΏΡ€ΠΈ остановкС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° всС Π΄Π°Π½Π½Ρ‹Π΅, записанныС Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму, Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½Ρ‹. Но Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прилоТСния хранят Π΄Π°Π½Π½Ρ‹Π΅ прямо Π½Π° дискС. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Kubernetes Π΅ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» управлСния дисковым Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ β€” Persistent Volumes. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ внСшнСС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ для Π΄Π°Π½Π½Ρ‹Ρ…, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΊΠΈΠ΄Ρ‹Π²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ постоянноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, Π±Π»ΠΎΡ‡Π½ΠΎΠ΅ ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ΅. Π’Π°ΠΊΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Π²ΠΎΡ€ΠΊΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ спасаСт ΠΈΡ… ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΠΎΠΌΠΊΠ΅ этих самых Π²ΠΎΡ€ΠΊΠ΅Ρ€ΠΎΠ².
  • Load Balancer. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Kubernetes ΠΌΡ‹ управляСм абстрактными сущностями Ρ‚ΠΈΠΏΠ° Deployment, StatefulSet ΠΈ Ρ‚.Π΄., Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ счётС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… ΠΈΠ»ΠΈ ΠΆΠ΅Π»Π΅Π·Π½Ρ‹Ρ… сСрвСрах. Они Π½Π΅ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠΏΠ°ΡΡ‚ΡŒ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚. Kubernetes это ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ ΠΈ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅ΠΏΠ»ΠΈΠΊΠΈ. Но Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ с Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ·Π²Π½Π΅? Если просто Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²ΠΎΡ€ΠΊΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ Π² случаС Π΅Π³ΠΎ падСния сСрвис станСт нСдоступСн. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Kubernetes Π΅ΡΡ‚ΡŒ сСрвисы Ρ‚ΠΈΠΏΠ° Load Balancer. Они ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для автоматичСской настройки внСшнСго ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ Π±Π°Π»Π°Π½ΡΠΈΡ€ΠΎΠ²ΡˆΠΈΠΊΠ° Π½Π° всС Π²ΠΎΡ€ΠΊΠ΅Ρ€Ρ‹ Π² кластСрС. Π­Ρ‚ΠΎΡ‚ внСшний балансировщик направляСт внСшний Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° Π²ΠΎΡ€ΠΊΠ΅Ρ€Ρ‹ ΠΈ сам слСдит Π·Π° ΠΈΡ… статусом. Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько Π²ΠΎΡ€ΠΊΠ΅Ρ€ΠΎΠ² становятся нСдоступны, Ρ‚ΠΎ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ пСрСнаправляСтся Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π­Ρ‚ΠΎ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ высокодоступныС сСрвисы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Kubernetes.

Π›ΡƒΡ‡ΡˆΠ΅ всСго Kubernetes сСбя проявляСт ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΈ запускС микросСрвисных Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€. Π’Π½Π΅Π΄Ρ€ΡΡ‚ΡŒ систСму Π² ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ бСссмыслСнно. Если ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°Ρ…, Ρ‚ΠΎ какая ΡΡƒΡ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Π° – Π² Kubernetes ΠΈΠ»ΠΈ Π½Π΅Ρ‚?

Open source Kubernetes


Open source Kubernetes – отличная Π²Π΅Ρ‰ΡŒ: поставил ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. МоТно Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π° своих ΠΆΠ΅Π»Π΅Π·Π½Ρ‹Ρ… сСрвСрах, Π½Π° своСй инфраструктурС, ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ мастСра ΠΈ Π²ΠΎΡ€ΠΊΠ΅Ρ€Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ всС прилоТСния. А Π³Π»Π°Π²Π½ΠΎΠ΅ β€” всС это бСсплатно. Однако Π΅ΡΡ‚ΡŒ Π½ΡŽΠ°Π½ΡΡ‹.

  • ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ – Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊ знаниям ΠΈ ΠΎΠΏΡ‹Ρ‚Ρƒ администраторов ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ всС это Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΡƒΡŽ свободу дСйствий Π² кластСрС, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ кластСра ΠΎΠ½ нСсСт сам. А ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ здСсь всС ΠΎΡ‡Π΅Π½ΡŒ просто.
  • Π’Ρ‚ΠΎΡ€ΠΎΠΉ – отсутствиС ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΉ. Если Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Kubernetes, Π½Π΅ имСя ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ популярной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ всСх прСимущСств ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ использованиС Persistent Volumes ΠΈ сСрвисов Load balancer.

Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

Рисунок 2. АрхитСктура k8s

Kubernetes ΠΎΡ‚ Π²Π΅Π½Π΄ΠΎΡ€Π°


Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠΌ Π΄Π°Π΅Ρ‚ Π΄Π²Π΅ возмоТности:

  • Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ просто Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ кластСр» ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΡƒΠΆΠ΅ настроСнный ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ кластСр.
  • Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π²Π΅Π½Π΄ΠΎΡ€ сам ставит кластСр ΠΈ настраиваСт ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ с ΠΎΠ±Π»Π°ΠΊΠΎΠΌ.

Как это происходит Ρƒ нас. Π˜Π½ΠΆΠ΅Π½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСт кластСр, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько Π΅ΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ Π²ΠΎΡ€ΠΊΠ΅Ρ€ΠΎΠ² ΠΈ с ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 5 Π²ΠΎΡ€ΠΊΠ΅Ρ€ΠΎΠ², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π½Π° 10 ЦПУ, 16 Π“Π‘ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти ΠΈ, скаТСм, 100 Π“Π‘ диска). ПослС Ρ‡Π΅Π³ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ доступ Π² ΡƒΠΆΠ΅ сформированный кластСр. ΠŸΡ€ΠΈ этом Π²ΠΎΡ€ΠΊΠ΅Ρ€Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… запускаСтся Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ°, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚Π΄Π°ΡŽΡ‚ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, Π½ΠΎ вСсь management plane остаСтся Π² Π·ΠΎΠ½Π΅ отвСтствСнности Π²Π΅Π½Π΄ΠΎΡ€Π° (Π² случаС, Ссли сСрвис прСдоставляСтся ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ managed service).

Однако такая схСма ΠΈΠΌΠ΅Π΅Ρ‚ свои нСдостатки. Из-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ management plane остаётся Ρƒ Π²Π΅Π½Π΄ΠΎΡ€Π°, Ρ‚ΠΎ Π²Π΅Π½Π΄ΠΎΡ€ Π½Π΅ Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, ΠΈ это сниТаСт Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ с Kubernetes. Иногда Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΏΡ€ΠΈΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ ΠΊ Kubernetes ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ спСцифичный Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· LDAP, Π° конфигурация management plane этого Π½Π΅ позволяСт.

Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

Рисунок 3. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ кластСра Kubernetes ΠΎΡ‚ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°

Π§Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ: open source ΠΈΠ»ΠΈ вСндорский


Π˜Ρ‚Π°ΠΊ, open source Kubernetes ΠΈΠ»ΠΈ вСндорский? Если Π±Ρ€Π°Ρ‚ΡŒ open source Kubernetes, Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚, Ρ‚ΠΎ с Π½ΠΈΠΌ ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚. Но Π²Π΅Π»ΠΈΠΊ шанс самому сСбС Π²Ρ‹ΡΡ‚Ρ€Π΅Π»ΠΈΡ‚ΡŒ Π² Π½ΠΎΠ³Ρƒ. Π‘ вСндорским это слоТнСС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ ΠΊΠ°ΠΊ Π·Π° компанию всС ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½ΠΎ ΠΈ настроСно. Π‘Π°ΠΌΡ‹ΠΌ большим нСдостатком опСнсорсного Kubernetes являСтся Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ спСциалистам. Π‘ вСндорским компания ΠΎΡ‚ этой Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ ΠΈΠ·Π±Π°Π²Π»Π΅Π½Π°, Π½ΠΎ Π΅ΠΉ придСтся Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ: ΠΏΠ»Π°Ρ‚ΠΈΡ‚ΡŒ своим спСциалистам ΠΈΠ»ΠΈ Π²Π΅Π½Π΄ΠΎΡ€Ρƒ.

Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

Kubernetes: open source ΠΏΡ€ΠΎΡ‚ΠΈΠ² вСндорского

Ну Ρ‡Ρ‚ΠΎ, ΠΏΠ»ΡŽΡΡ‹ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹, минусы Ρ‚ΠΎΠΆΠ΅ извСстны. НСизмСнно ΠΎΠ΄Π½ΠΎ: Kubernetes Ρ€Π΅ΡˆΠ°Π΅Ρ‚ массу ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, автоматизируя ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ мноТСством ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². А ΠΊΠ°ΠΊΠΎΠΉ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, open source ΠΈΠ»ΠΈ вСндорский, β€” ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ сам.

Π‘Ρ‚Π°Ρ‚ΡŒΡŽ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ ΠšΡ€Π°ΡΠ½ΠΎΠ², Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ сСрвиса Containerum ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° #CloudMTS

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