Π“ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Kubernetes-кластСр просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ? АнонсируСм addon-operator

Π“ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Kubernetes-кластСр просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ? АнонсируСм addon-operator

ВслСд Π·Π° shell-operator ΠΌΡ‹ прСдставляСм Π΅Π³ΠΎ ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ Π±Ρ€Π°Ρ‚Π° β€” addon-operator. Π­Ρ‚ΠΎ Open Source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для установки Π² кластСр Kubernetes систСмных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΌ словом β€” дополнСния.

Π—Π°Ρ‡Π΅ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ дополнСния?

НС сСкрСт, Ρ‡Ρ‚ΠΎ Kubernetes это Π½Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ всё-Π²-ΠΎΠ΄Π½ΠΎΠΌ, ΠΈ для построСния «взрослого» кластСра понадобятся Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ дополнСния. Addon-operator ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ эти дополнСния Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии.

ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π² кластСрС раскрыта Π² Π΄ΠΎΠΊΠ»Π°Π΄Π΅ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ driusha. Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅, ситуация с Kubernetes Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‚Π°ΠΊΠΎΠ²Π°, Ρ‡Ρ‚ΠΎ для простой установки Β«ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒΡΡΒ» ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ тСстирования ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ingress, Π° Π²ΠΎΡ‚ для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ установки, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ «ваш production Π³ΠΎΡ‚ΠΎΠ²Β», Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ с дСсяток Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ: Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ для Π»ΠΎΠ³ΠΎΠ², Π½Π΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ingress ΠΈ cert-manager, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΡƒΠ·Π»ΠΎΠ², Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ сСтСвыС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ, ΠΏΡ€ΠΈΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ настройками sysctl ΠΈ pod autoscaler’ом…

Π“ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Kubernetes-кластСр просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ? АнонсируСм addon-operator

Π’ Ρ‡Π΅ΠΌ спСцифика Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ?

Как ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, ΠΎΠ΄Π½ΠΎΠΉ установкой Π΄Π΅Π»ΠΎ Π½Π΅ ограничиваСтся. Для ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с кластСром дополнСния Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ (ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈΠ· кластСра), Π° Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ захочСтся ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ установкой Π² production-кластСр.

Π’Π°ΠΊ, ΠΌΠΎΠΆΠ΅Ρ‚, Ρ‚ΡƒΡ‚ ΠΈ Ansible Ρ…Π²Π°Ρ‚ΠΈΡ‚? Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Но ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹Π΅ дополнСния Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС Π½Π΅ ΠΆΠΈΠ²ΡƒΡ‚ Π±Π΅Π· настроСк. Π­Ρ‚ΠΈ настройки ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° кластСра (aws, gce, azure, bare-metal, do, …). НСкоторыС настройки нСльзя Π·Π°Π΄Π°Ρ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ β€” ΠΈΡ… Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΠ· кластСра. А кластСр Π½Π΅ статичСн: для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… настроСк придётся ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° измСнСниями. И Ρ‚ΡƒΡ‚ ΡƒΠΆΠ΅ Ansible Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚: Π½ΡƒΠΆΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая ΠΆΠΈΠ²Ρ‘Ρ‚ Π² кластСрС, Ρ‚.Π΅. Kubernetes Operator.

Π’Π΅, ΠΊΡ‚ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Π² Ρ€Π°Π±ΠΎΡ‚Π΅ shell-operator, скаТут, Ρ‡Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡ΠΈ установки ΠΈ обновлСния Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΈ слСТСния Π·Π° настройками Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ…ΡƒΠΊΠΎΠ² для shell-operator. МоТно Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ условный kubectl apply ΠΈ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° ConfigMap, Π³Π΄Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ настройки. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ это ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π² addon-operator.

Как это ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π² addon-operator?

Боздавая Π½ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΌΡ‹ исходили ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ²:

  • Установщик Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ. НС Π΄Π΅Π»Π°Π΅ΠΌ магичСских скриптов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ дополнСния. Addon-operator ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Helm для установки Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ. Для установки Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‡Π°Ρ€Ρ‚ ΠΈ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ values, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для настройки.
  • Настройки ΠΌΠΎΠΆΠ½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ установкС, ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· кластСра, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ обновлСния, слСдя Π·Π° рСсурсами кластСра. Π­Ρ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ…ΡƒΠΊΠΎΠ².
  • Настройки ΠΌΠΎΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² кластСрС. Для хранСния настроСк Π² кластСрС создаётся ConfigMap/addon-operator ΠΈ Addon-operator слСдит Π·Π° измСнСниями этого ConfigMap. Addon-operator Π΄Π°Ρ‘Ρ‚ Ρ…ΡƒΠΊΠ°ΠΌ доступ ΠΊ настройкам с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ простых соглашСний.
  • Π”ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ зависит ΠΎΡ‚ настроСк. Если настройки измСнились, Ρ‚ΠΎ Addon-operator Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Helm-Ρ‡Π°Ρ€Ρ‚ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ values. ОбъСдинСниС Helm-Ρ‡Π°Ρ€Ρ‚Π°, values для Π½Π΅Π³ΠΎ ΠΈ Ρ…ΡƒΠΊΠΎΠ² ΠΌΡ‹ Π½Π°Π·Π²Π°Π»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. Π½ΠΈΠΆΠ΅).
  • Π‘Ρ‚Π΅ΠΉΠ΄ΠΆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. НСт магичСских Ρ€Π΅Π»ΠΈΠ·-скриптов. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ β€” ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ дополнСния ΠΈ addon-operator Π² ΠΎΠ±Ρ€Π°Π·, ΠΏΡ€ΠΎΡ‚Π΅Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ.
  • ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. Addon-operator ΡƒΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ для Prometheus.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² addon-operator?

Π”ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всё, Ρ‡Ρ‚ΠΎ добавляСт Π² кластСр Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. НапримСр, установка Ingress β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ дополнСния. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любой ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ со своим CRD: prometheus-operator, cert-manager, kube-controller-manager, ΠΈ Ρ‚.Π΄. Или Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ нСбольшоС, Π½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰Π΅Π΅ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, secret copier, ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ registry-сСкрСты Π² Π½ΠΎΠ²Ρ‹Π΅ пространства ΠΈΠΌΡ‘Π½, ΠΈΠ»ΠΈ sysctl tuner, Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ sysctl Π½Π° Π½ΠΎΠ²Ρ‹Ρ… ΡƒΠ·Π»Π°Ρ….

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Addon-operator прСдоставляСт нСсколько ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ:

  • Helm-Ρ‡Π°Ρ€Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π² кластСр Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ΅ ПО β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Prometheus, Grafana, nginx-ingress. Если Ρƒ Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π΅ΡΡ‚ΡŒ Helm-Ρ‡Π°Ρ€Ρ‚, Ρ‚ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Addon-operator Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ просто.
  • Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ values. Π£ Helm-Ρ‡Π°Ρ€Ρ‚ΠΎΠ² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ… настроСк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. Addon-operator ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ этих настроСк ΠΈ ΡƒΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° ΠΈΡ… измСнСниями, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Helm-Ρ‡Π°Ρ€Ρ‚ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ значСниями.
  • Π₯ΡƒΠΊΠΈ β€” это исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Addon-operator запускаСт ΠΏΠΎ событиям ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ доступ ΠΊ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ values. Π₯ΡƒΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° измСнСниями Π² кластСрС ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ значСния Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ values. Π’.Π΅. с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ…ΡƒΠΊΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ discovery, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ значСния ΠΈΠ· кластСра ΠΏΡ€ΠΈ стартС ΠΈΠ»ΠΈ ΠΏΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ, Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΈ continuous discovery, собирая значСния ΠΈΠ· кластСра ΠΏΠΎ измСнСниям Π² кластСрС.
  • ΠœΠΎΠ΄ΡƒΠ»ΡŒ β€” это объСдинСниС Helm-Ρ‡Π°Ρ€Ρ‚Π°, Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° values ΠΈ Ρ…ΡƒΠΊΠΎΠ². ΠœΠΎΠ΄ΡƒΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ. ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ модуля β€” это ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ всСх Ρ€Π΅Π»ΠΈΠ·ΠΎΠ² Helm-Ρ‡Π°Ρ€Ρ‚Π°. ΠœΠΎΠ΄ΡƒΠ»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ сами сСбя динамичСски, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΅ΠΌΡƒ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠ»ΠΈ Ссли discovery Π² Ρ…ΡƒΠΊΠ°Ρ… Π½Π°ΡˆΡ‘Π» Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ β€” это дСлаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ enabled-скрипта.
  • Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ…ΡƒΠΊΠΈ. Π­Ρ‚ΠΎ Ρ…ΡƒΠΊΠΈ «сами ΠΏΠΎ сСбС», ΠΎΠ½ΠΈ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ доступ ΠΊ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ values, значСния ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ доступно всСм Ρ…ΡƒΠΊΠ°ΠΌ Π² модулях.

Как эти части Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ вмСстС? Рассмотрим ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈΠ· Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ:

Π“ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Kubernetes-кластСр просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ? АнонсируСм addon-operator

БцСнария Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π²Π°:

  1. Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ…ΡƒΠΊ запускаСтся ΠΏΠΎ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ рСсурса Π² кластСрС. Π­Ρ‚ΠΎΡ‚ Ρ…ΡƒΠΊ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ измСнСния ΠΈ записываСт Π½ΠΎΠ²Ρ‹Π΅ значСния Π² глобальноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ values. Addon-operator Π·Π°ΠΌΠ΅Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ глобальноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ измСнилось ΠΈ запускаСт всС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ своих Ρ…ΡƒΠΊΠΎΠ² опрСдСляСт, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π΅ΠΌΡƒ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ, ΠΈ обновляСт своё Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ values. Если ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, Ρ‚ΠΎ Addon-operator запускаСт установку Helm-Ρ‡Π°Ρ€Ρ‚Π°. Helm-Ρ‡Π°Ρ€Ρ‚Ρƒ ΠΏΡ€ΠΈ этом доступны values ΠΈΠ· Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° модуля ΠΈ ΠΈΠ· глобального Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.
  2. Π’Ρ‚ΠΎΡ€ΠΎΠΉ сцСнарий ΠΏΡ€ΠΎΡ‰Π΅: ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΉ Ρ…ΡƒΠΊ запускаСтся ΠΏΠΎ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ, измСняСт значСния Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ values модуля. Addon-operator это Π·Π°ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ ΠΈ запускаСт Helm-Ρ‡Π°Ρ€Ρ‚ с ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ values.

Π”ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π²ΠΈΠ΄Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ СдинствСнного Ρ…ΡƒΠΊΠ° ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ Helm-Ρ‡Π°Ρ€Ρ‚, ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΊΠ°ΠΊ нСсколько зависимых ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ β€” это зависит ΠΎΡ‚ слоТности устанавливаСмого Π² кластСр ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈ ΠΎΡ‚ Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ уровня гибкости настроСк. НапримСр, Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ (/examples) Π΅ΡΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ sysctl-tuner, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ Π² Π²ΠΈΠ΄Π΅ простого модуля с Ρ…ΡƒΠΊΠΎΠΌ ΠΈ Helm-Ρ‡Π°Ρ€Ρ‚ΠΎΠΌ, Ρ‚Π°ΠΊ ΠΈ с использованиСм Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° values, Ρ‡Ρ‚ΠΎ Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ настройки Ρ‡Π΅Ρ€Π΅Π· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ConfigMap.

Доставка ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ

НСсколько слов ΠΏΡ€ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ устанавливаСт Addon-operator.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Addon-operator Π² кластСрС, Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π· с дополнСниями Π² Π²ΠΈΠ΄Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ…ΡƒΠΊΠΎΠ² ΠΈ Helm-Ρ‡Π°Ρ€Ρ‚ΠΎΠ², Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» addon-operator ΠΈ всё, Ρ‡Ρ‚ΠΎ понадобится для Ρ…ΡƒΠΊΠΎΠ²: bash, kubectl, jq, python ΠΈ Ρ‚.Π΄. Π”Π°Π»ΡŒΡˆΠ΅ этот ΠΎΠ±Ρ€Π°Π· ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π² кластСр ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ скорСС всСго Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ схСму тСгирования. Если кластСров Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΎΠΉΡ‚ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΈ с прилоТСниями: Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ·, новая вСрсия, ΠΏΠΎΠΉΡ‚ΠΈ ΠΏΠΎ всСм кластСрам ΠΈ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ image Ρƒ Pod’ов. Однако, Π² случаС Π²Ρ‹ΠΊΠ°Ρ‚Π° Π½Π° ΠΎΡ‰ΡƒΡ‚ΠΈΠΌΠΎΠ΅ количСство кластСров, Π½Π°ΠΌ большС подошла концСпция самообновлСния ΠΈΠ· ΠΊΠ°Π½Π°Π»Π°.

Π£ нас это устроСно Ρ‚Π°ΠΊ:

  • Канал β€” это ΠΏΠΎ сути ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, dev/stage/ea/stable).
  • Имя ΠΊΠ°Π½Π°Π»Π° β€” это Ρ‚Π΅Π³ ΠΎΠ±Ρ€Π°Π·Π°. Когда Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ обновлСния Π² ΠΊΠ°Π½Π°Π», Ρ‚ΠΎ собираСтся Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π· ΠΈ тСгируСтся ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΊΠ°Π½Π°Π»Π°.
  • Когда Π² registry появляСтся Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π·, Addon-operator рСстартуСтся ΠΈ запускаСтся с Π½ΠΎΠ²Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

Π­Ρ‚ΠΎ Π½Π΅ best practice, ΠΎ Ρ‡Π΅ΠΌ написано Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Kubernetes. Π’Π°ΠΊ Π΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ рСкомСндуСтся, Π½ΠΎ Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΏΡ€ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΆΠΈΠ²Ρ‘Ρ‚ Π² ΠΎΠ΄Π½ΠΎΠΌ кластСрС. Π’ случаС Addon-operator ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β€” это мноТСство Deployments, разбросанных ΠΏΠΎ кластСрам, ΠΈ самообновлСниС ΠΎΡ‡Π΅Π½ΡŒ сильно ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Тизнь.

ΠšΠ°Π½Π°Π»Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΈ Π² тСстировании: Ссли Π΅ΡΡ‚ΡŒ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ кластСр, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° ΠΊΠ°Π½Π°Π» stage ΠΈ ΠΊΠ°Ρ‚Π°Ρ‚ΡŒ обновлСния Π² Π½Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΊΠ°Ρ‚ΠΎΠΌ Π² ΠΊΠ°Π½Π°Π»Ρ‹ ea ΠΈ stable. Если c кластСром Π½Π° ΠΊΠ°Π½Π°Π»Π΅ ea ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка, ΠΌΠΎΠΆΠ½ΠΎ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π° stable, ΠΏΠΎΠΊΠ° ΠΈΠ΄Ρ‘Ρ‚ расслСдованиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с этим кластСром. Если кластСр Π²Ρ‹Π²Π΅Π΄Π΅Π½ ΠΈΠ· Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΎΠ½ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π½Π° свой Β«Π·Π°ΡΡ‚Ρ‹Π²ΡˆΠΈΠΉΒ» ΠΊΠ°Π½Π°Π» β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, freeze-2019-03-20.

Помимо ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Ρ…ΡƒΠΊΠΎΠ² ΠΈ Helm-Ρ‡Π°Ρ€Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ сторонний ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. НапримСр, Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² условном node-exporter ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΏΠ°Ρ‚Ρ‡ΠΈΡ‚ΡŒ. Π”Π°Π»Π΅Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈ PR ΠΈ ΠΆΠ΄Ρ‘Ρ‚Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π΅Π»ΠΈΠ·Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ всСм кластСрам ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ ΠΎΠ±Ρ€Π°Π·Π°. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΆΠ΄Π°Ρ‚ΡŒ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ врСмя, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ свой node-exporter ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π½Π΅Π³ΠΎ Π΄ΠΎ принятия PR.

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ-Ρ‚ΠΎ, это ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π±Π΅Π· Addon-operator ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π½ΠΎ с Addon-operator ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для установки node-exporter Π±ΡƒΠ΄Π΅Ρ‚ Π½Π° Π²ΠΈΠ΄Ρƒ Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Dockerfile для сборки своСго ΠΎΠ±Ρ€Π°Π·Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚ΡƒΡ‚ ΠΆΠ΅, всСм участникам процСсса становится ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ происходит… А Ссли кластСров нСсколько, Ρ‚ΠΎ становится ΠΏΡ€ΠΎΡ‰Π΅ ΠΊΠ°ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свой PR, Ρ‚Π°ΠΊ ΠΈ Π½Π°ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ!

Π­Ρ‚Π° организация обновлСния ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Ρƒ нас, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ схСму β€” вСдь Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Addon-operator являСтся простым Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² Addon-operator, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ процСсс создания, тСстирования, установки ΠΈ обновлСния Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Π² кластСрС, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ процСссам Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ДополнСния для Addon-operator Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ (Helm-Ρ‡Π°Ρ€Ρ‚ + Ρ…ΡƒΠΊΠΈ) ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ Π² ΡˆΠΈΡ€ΠΎΠΊΠΈΠΉ доступ. ΠœΡ‹, компания Π€Π»Π°Π½Ρ‚, ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ Π²Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π»Π΅Ρ‚Π° наши Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°ΠΊΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° GitHub (shell-operator, addon-operator), ΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ своё Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° основС ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΆΠ΄ΠΈΡ‚Π΅ новостСй Π½Π° Π₯Π°Π±Ρ€Π΅ ΠΈ Π½Π° нашСм ΠΊΠ°Π½Π°Π»Π΅ Π² YouTube!

P.S.

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Π² нашСм Π±Π»ΠΎΠ³Π΅:

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