Π‘ΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes

Има няколко Π½Π°Ρ‡ΠΈΠ½Π° Π·Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π·Π° прилоТСния, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π½Π° Kubernetes ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€. Някои ΠΎΡ‚ тях Π²Π΅Ρ‡Π΅ са остарСли, Π΄Ρ€ΡƒΠ³ΠΈ сС появиха съвсСм наскоро. Π’ Ρ‚Π°Π·ΠΈ статия Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ концСпцията Π·Π° Ρ‚Ρ€ΠΈ ΠΎΠΏΡ†ΠΈΠΈ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° систСми Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π°ΠΉ-Π½ΠΎΠ²Π°Ρ‚Π° - ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Ρ‡Ρ€Π΅Π· интСрфСйса Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ.

Π‘ΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes

ΠœΠ΅Ρ‚ΠΎΠ΄ 1: ΠŸΠΎΡΠΎΡ‡Π΅Ρ‚Π΅ PV Π² манифСста Π½Π° pod

Π’ΠΈΠΏΠΈΡ‡Π΅Π½ манифСст, описващ ΠΏΠΎΠ΄ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes:

Π‘ΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes

ЧаститС ΠΎΡ‚ манифСста, ΠΊΠΎΠΈΡ‚ΠΎ описват ΠΊΠΎΠΉ Ρ‚ΠΎΠΌ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ ΠΈ къдС, са ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ с цвят.

Π’ Ρ€Π°Π·Π΄Π΅Π» volumeMounts посочСтС Ρ‚ΠΎΡ‡ΠΊΠΈΡ‚Π΅ Π½Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½Π΅ (mountPath) - Π² коя дирСктория Π²ΡŠΡ‚Ρ€Π΅ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Ρ‰Π΅ бъдС ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ постоянният Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΎΠΌΠ°.

Π’ Ρ€Π°Π·Π΄Π΅Π» x изброява всички Ρ‚ΠΎΠΌΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² ΠΏΠΎΠ΄. ΠŸΠΎΡΠΎΡ‡Π΅Ρ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° всСки Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Ρ‚ΠΈΠΏΠ° (Π² нашия случай: awsElasticBlockStore) ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π°. Кои ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ са ΠΈΠ·Π±Ρ€ΠΎΠ΅Π½ΠΈ Π² манифСста зависи ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° Ρ‚ΠΎΠΌ.

Π•Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ ΠΎΠ±Π΅ΠΌ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π° Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π² мноТСство ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ Π·Π° капсули. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ процСси Π½Π° прилоТСния ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠΌΠ°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π΅Π΄Π½ΠΈ ΠΈ ΡΡŠΡ‰ΠΈ Π΄Π°Π½Π½ΠΈ.

Π’ΠΎΠ·ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ Π² самото Π½Π°Ρ‡Π°Π»ΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Kubernetes бСшС само Π² Π½Π°Ρ‡Π°Π»Π΅Π½ стадий, Π° днСс ΠΌΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π΅ остарял.

Има няколко ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ ΠΌΡƒ:

  1. всички Ρ‚ΠΎΠΌΠΎΠ²Π΅ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ създадСни Ρ€ΡŠΡ‡Π½ΠΎ; Kubernetes Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° създадС Π½ΠΈΡ‰ΠΎ Π·Π° нас;
  2. ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π·Π° всСки Ρ‚ΠΎΠΌ са ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΈ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ посочСни Π² манифСститС Π½Π° всички ΠΏΠΎΠ΄ΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ‚ΠΎΠΌΠ°;
  3. Π·Π° Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ систСмата Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅Ρ‚Π΅ ΠΎΡ‚ AWS към Google Cloud), трябва Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ настройкитС ΠΈ Ρ‚ΠΈΠΏΠ° Π½Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Ρ‚ΠΎΠΌΠΎΠ²Π΅ във всички манифСсти.

Всичко Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π² дСйствитСлност Ρ‚ΠΎΠ·ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ само Π½Π° някои спСциални Ρ‚ΠΈΠΏΠΎΠ²Π΅ Ρ‚ΠΎΠΌΠΎΠ²Π΅: configMap, secret, emptyDir, hostPath:

  • configMap ΠΈ secret са сСрвизни Ρ‚ΠΎΠΌΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ позволяват Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ Ρ‚ΠΎΠΌ с Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ манифСститС Π½Π° Kubernetes Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

  • emptyDir Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅Π½ Ρ‚ΠΎΠΌ, създадСн само Π·Π° ΠΆΠΈΠ²ΠΎΡ‚Π° Π½Π° Π³Ρ€ΡƒΠΏΠ°Ρ‚Π°. Π£Π΄ΠΎΠ±Π΅Π½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π·Π° тСстванС ΠΈΠ»ΠΈ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ Π΄Π°Π½Π½ΠΈ. ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΏΠΎΠ΄ сС ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅, Ρ‚ΠΎΠΌΡŠΡ‚ ΠΏΡ€Π°Π·Π΅Π½Π”ΠΈΡ€ ΡΡŠΡ‰ΠΎ сС ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π° ΠΈ всички Π΄Π°Π½Π½ΠΈ сС губят.

  • hostPath - позволява Π²ΠΈ Π΄Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½Π° дирСктория Π½Π° локалния диск Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°, Π½Π° ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π²ΡŠΡ‚Ρ€Π΅ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ /etc/kubernetes. Π’ΠΎΠ²Π° Π½Π΅ Π΅ бСзопасна функция, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈΡ‚Π΅ Π·Π° сигурност ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ забраняват ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΎΠΌΠΎΠ²Π΅ ΠΎΡ‚ Ρ‚ΠΎΠ·ΠΈ Ρ‚ΠΈΠΏ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π΅Π½ случай ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° атакуващия Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π° дирСкторията Π½Π° HTC Kubernetes Π² нСйния ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈ Π΄Π° ΠΎΡ‚ΠΊΡ€Π°Π΄Π½Π΅ всички ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π½ΠΈ сСртификати. ОбикновСно ΠΎΠ±Π΅ΠΌΠΈΡ‚Π΅ Π½Π° hostPath ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ само ΠΎΡ‚ систСмни прилоТСния, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π² пространството Π½Π° ΠΈΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° kube-system.

БистСми Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, с ΠΊΠΎΠΈΡ‚ΠΎ Kubernetes Ρ€Π°Π±ΠΎΡ‚ΠΈ Π²Π΅Π΄Π½Π°Π³Π° са Π΄Π°Π΄Π΅Π½ΠΈ Π² докумСнтацията.

ΠœΠ΅Ρ‚ΠΎΠ΄ 2. Π‘Π²ΡŠΡ€Π·Π²Π°Π½Π΅ към SC/PVC/PV ΠΎΠ³Π½ΠΈΡ‰Π°

АлтСрнативСн ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π΅ концСпцията Π·Π° клас ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, PersistentVolumeClaim, PersistentVolume.

Клас Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° към систСмата Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ.

PersistentVolumeClaim описва изискванията Π·Π° Ρ‚ΠΎΠ²Π°, ΠΎΡ‚ ΠΊΠΎΠ΅Ρ‚ΠΎ сС Π½ΡƒΠΆΠ΄Π°Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.
ΠŸΠΎΡΡ‚ΠΎΡΠ½Π΅Π½ ΠΎΠ±Π΅ΠΌ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ ΠΈ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° Ρ‚ΠΎΠΌΠ°.

Π‘ΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° идСята: Π² манифСста Π½Π° pod Ρ‚Π΅ посочват ΠΎΠ±Π΅ΠΌ ΠΎΡ‚ Ρ‚ΠΈΠΏ PersistentVolumeClaim ΠΈ посочват ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΎΠ·ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€Π° Π½Π° claimName.

Π‘ΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes

ΠœΠ°Π½ΠΈΡ„Π΅ΡΡ‚ΡŠΡ‚ PersistentVolumeClaim описва изискванията Π·Π° ΠΎΠ±Π΅ΠΌΠ° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ изисква. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ:

  • Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° диска;
  • ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ: ReadWriteOnce ΠΈΠ»ΠΈ ReadWriteMany;
  • Π²Ρ€ΡŠΠ·ΠΊΠ° към Storage class - Π² коя систСма Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ искамС Π΄Π° създадСм Ρ‚ΠΎΠΌΠ°.

ΠœΠ°Π½ΠΈΡ„Π΅ΡΡ‚ΡŠΡ‚ Π½Π° класа Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Ρ‚ΠΈΠΏΠ° ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° към систСмата Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. Cubelet сС Π½ΡƒΠΆΠ΄Π°Π΅ ΠΎΡ‚ тях, Π·Π° Π΄Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π° ΠΎΠ±Π΅ΠΌΠ° Π½Π° своя възСл.

ΠœΠ°Π½ΠΈΡ„Π΅ΡΡ‚ΠΈΡ‚Π΅ Π½Π° PersistentVolume ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ класа Storage ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π·Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π΅Π½ Ρ‚ΠΎΠΌ (Π˜Π” Π½Π° Ρ‚ΠΎΠΌ, ΠΏΡŠΡ‚ ΠΈ Ρ‚.Π½.).

ΠšΠΎΠ³Π°Ρ‚ΠΎ създава PVC, Kubernetes Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π° ΠΎΠ±Π΅ΠΌΠ° с какъв Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ какъв клас Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ сС изисква ΠΈ ΠΈΠ·Π±ΠΈΡ€Π° Π±Π΅Π·ΠΏΠ»Π°Ρ‚Π΅Π½ PersistentVolume.

Ако Ρ‚Π°ΠΊΠΈΠ²Π° PV Π½Π΅ са Π½Π°Π»ΠΈΡ‡Π½ΠΈ, Kubernetes ΠΌΠΎΠΆΠ΅ Π΄Π° стартира спСциална ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° - Provisioner (ΠΈΠΌΠ΅Ρ‚ΠΎ ΠΉ Π΅ посочСно Π² класа Storage). Π’Π°Π·ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° сС ΡΠ²ΡŠΡ€Π·Π²Π° със систСмата Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, създава ΠΎΠ±Π΅ΠΌ с нСобходимия Ρ€Π°Π·ΠΌΠ΅Ρ€, ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈ създава манифСст Π½Π° PersistentVolume Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π° Kubernetes, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ с PersistentVolumeClaim.

Цялото Ρ‚ΠΎΠ²Π° мноТСство абстракции Π²ΠΈ позволява Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅Ρ‚Π΅ информация Π·Π° Ρ‚ΠΎΠ²Π° с коя систСма Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΎΡ‚ Π½ΠΈΠ²ΠΎ манифСст Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π΄ΠΎ Π½ΠΈΠ²ΠΎ администрация.

Всички ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ към систСмата Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ сС Π½Π°ΠΌΠΈΡ€Π°Ρ‚ Π² клас Storage, Π·Π° ΠΊΠΎΠΉΡ‚ΠΎ отговарят администраторитС Π½Π° ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°. Всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Ρ‚Π΅ ΠΎΡ‚ AWS към Google Cloud, Π΅ Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° класа Storage Π½Π° PVC Π² манифСститС Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½ΠΈΡΡ‚ Ρ‚ΠΎΠΌ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ Ρ‰Π΅ бъдС създадСн Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° Provisioner.

ΠœΠ΅Ρ‚ΠΎΠ΄ 3: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

ЦСлият ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡ‚ΠΎ взаимодСйства с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСми Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, Π΅ част ΠΎΡ‚ ядрото Π½Π° Kubernetes. ΠŸΡƒΡΠΊΠ°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΡ€Π΅ΠΊΡ†ΠΈΠΈ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈΠ»ΠΈ Π½ΠΎΠ²Π° функционалност Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΎ с Π½ΠΎΠ²ΠΈΡ‚Π΅ вСрсии; ΠΊΠΎΠ΄ΡŠΡ‚ трябва Π΄Π° бъдС ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½ Π·Π° всички ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ΠΈ вСрсии Π½Π° Kubernetes. Всичко Ρ‚ΠΎΠ²Π° Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° ΠΈ добавянС Π½Π° Π½ΠΎΠ²ΠΈ функционалности.

Π—Π° Π΄Π° Ρ€Π΅ΡˆΠ°Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΎΡ‚ Cloud Foundry, Kubernetes, Mesos ΠΈ Docker ΡΡŠΠ·Π΄Π°Π΄ΠΎΡ…Π° Container Storage Interface (CSI) - прост ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ интСрфСйс, ΠΊΠΎΠΉΡ‚ΠΎ описва взаимодСйствиСто Π½Π° систСмата Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΈ спСциалСн Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ (CSI Driver), ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ със спСцифичСн систСма Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. ЦСлият ΠΊΠΎΠ΄ Π·Π° взаимодСйствиС със систСмитС Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ бСшС прСмСстСн ΠΎΡ‚ ядрото Π½Π° Kubernetes Π² ΠΎΡ‚Π΄Π΅Π»Π½Π° систСма.

ДокумСнтация Π½Π° интСрфСйса Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ.

ОбикновСно CSI Driver сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ Π΄Π²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°: Node Plugin ΠΈ Controller plugin.

Node Plugin Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° всСки възСл ΠΈ отговаря Π·Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΎΠΌΠΎΠ²Π΅ ΠΈ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²ΡŠΡ€Ρ…Ρƒ тях. ΠŸΡ€ΠΈΡΡ‚Π°Π²ΠΊΠ°Ρ‚Π° Controller взаимодСйства със систСмата Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅: създава ΠΈΠ»ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π° Ρ‚ΠΎΠΌΠΎΠ²Π΅, присвоява ΠΏΡ€Π°Π²Π° Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ ΠΈ Ρ‚.Π½.

ЗасСга старитС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ остават Π² ядрото Π½Π° Kubernetes, Π½ΠΎ Π²Π΅Ρ‡Π΅ Π½Π΅ сС ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π° Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΈ сС ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π° всСки Π΄Π° инсталира CSI Driver спСциално Π·Π° систСмата, с която Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ.

Π˜Π½ΠΎΠ²Π°Ρ†ΠΈΡΡ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° изплаши ΠΎΠ½Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²Π΅Ρ‡Π΅ са свикнали Π΄Π° настройват ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Ρ‡Ρ€Π΅Π· класа Storage, Π½ΠΎ Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π½ΠΈΡ‰ΠΎ уТасно Π½Π΅ сС Π΅ случило. Π—Π° програмиститС Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π½ΠΈΡ‰ΠΎ Π½Π΅ сС промСня - Ρ‚Π΅ са Ρ€Π°Π±ΠΎΡ‚ΠΈΠ»ΠΈ само с ΠΈΠΌΠ΅Ρ‚ΠΎ Storage class ΠΈ Ρ‰Π΅ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Ρ‚ Π΄Π° Π³ΠΎ правят. Π—Π° администраторитС Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° инсталация Π½Π° helm chart ΠΈ Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½Π° структурата Π½Π° настройкитС. Ако ΠΏΡ€Π΅Π΄ΠΈ Ρ‚ΠΎΠ²Π° настройкитС бяха въвСдСни Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π² класа Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, сСга Ρ‚Π΅ трябва ΠΏΡŠΡ€Π²ΠΎ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ Π² Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠ°Ρ‚Π° Π½Π° ΠΊΠΎΡ€ΠΌΠΈΠ»ΠΎΡ‚ΠΎ, Π° слСд Ρ‚ΠΎΠ²Π° Π² класа Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. Ако Π³ΠΎ Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ‚Π΅, Π½ΠΈΡ‰ΠΎ лошо Π½Π΅ сС Π΅ случило.

НСка Π²Π·Π΅ΠΌΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΏΠΎΠ»Π·ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅, ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅Ρ‚Π΅ към ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° Ceph систСми Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° CSI Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

ΠšΠΎΠ³Π°Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ с Ceph, ΠΏΠ»ΡŠΠ³ΠΈΠ½ΡŠΡ‚ CSI прСдоставя ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° със систСми Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈΡ‚Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ.

  1. БъздаванС Π½Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅Π½ диск. ОбикновСно RBD дисковСтС сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ само Π² Ρ€Π΅ΠΆΠΈΠΌ RWO, Π½ΠΎ CSI Π·Π° Ceph ΠΈΠΌ позволява Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌ RWX. Няколко ΠΏΠΎΠ΄ΠΎΠ²Π΅ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ възли ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Ρ‚ Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ RDB диск Π½Π° своитС възли ΠΈ Π΄Π° работят с тях ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ. ЧСстно ΠΊΠ°Π·Π°Π½ΠΎ, Π½Π΅ всичко Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ярко - Ρ‚ΠΎΠ·ΠΈ диск ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΡΠ²ΡŠΡ€Π·Π°Π½ само ΠΊΠ°Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΎΠ²ΠΎ устройство, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Ρ‰Π΅ трябва Π΄Π° Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Ρ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, Π·Π° Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π½Π΅Π³ΠΎ Π² Ρ€Π΅ΠΆΠΈΠΌ Π½Π° мноТСствСн Π΄ΠΎΡΡ‚ΡŠΠΏ.
  2. БъздаванС Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚Π½ΠΈ снимки. Π’ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ манифСст с изискванС Π·Π° създаванС Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚Π½Π° снимка. CSI ΠΏΠ»ΡŠΠ³ΠΈΠ½ΡŠΡ‚ Ρ‰Π΅ Π³ΠΎ Π²ΠΈΠ΄ΠΈ ΠΈ Ρ‰Π΅ Π½Π°ΠΏΡ€Π°Π²ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π½Π° снимка ΠΎΡ‚ диска. Π’ΡŠΠ· основа Π½Π° Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΠ΅ Π½Π° PersistentVolume.
  3. Π£Π²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° диска Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ PersistentVolume Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes.
  4. ΠšΠ²ΠΎΡ‚ΠΈ. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈΡ‚Π΅ CephFS, Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ Π² Kubernetes, Π½Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΊΠ²ΠΎΡ‚ΠΈ, Π½ΠΎ Π½ΠΎΠ²ΠΈΡ‚Π΅ CSI плъгини с Π½Π°ΠΉ-новия Ceph Nautilus ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚ ΠΊΠ²ΠΎΡ‚ΠΈ Π½Π° CephFS дяловС.
  5. ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠ°. CSI ΠΏΠ»ΡŠΠ³ΠΈΠ½ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° прСдостави Π½Π° Prometheus Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠΎΠΈ Ρ‚ΠΎΠΌΠΎΠ²Π΅ са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ, ΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ ΠΈ Ρ‚.Π½.
  6. ПознаванС Π½Π° топологията. Позволява Π²ΠΈ Π΄Π° посочитС Π² манифСститС ΠΊΠ°ΠΊ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΡŠΡ‚ Π΅ гСографски Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΈ Π΄Π° избягватС ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° систСма Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Π² АмстСрдам, с ΠΏΠΎΠ΄ΠΎΠ²Π΅, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π² Π›ΠΎΠ½Π΄ΠΎΠ½.

Как Π΄Π° ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ Ceph към ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes Ρ‡Ρ€Π΅Π· CSI, Π²ΠΈΠΆΡ‚Π΅ Π² практичСската част Π½Π° лСкцията Π½Π° Π²Π΅Ρ‡Π΅Ρ€Π½ΠΎΡ‚ΠΎ ΡƒΡ‡ΠΈΠ»ΠΈΡ‰Π΅ Slurm. ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΡΡŠΡ‰ΠΎ Π΄Π° сС Π°Π±ΠΎΠ½ΠΈΡ€Π°Ρ‚Π΅ Π·Π° Ceph Π²ΠΈΠ΄Π΅ΠΎ курс, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ стартира Π½Π° 15 ΠΎΠΊΡ‚ΠΎΠΌΠ²Ρ€ΠΈ.

Автор Π½Π° статията: Π‘Π΅Ρ€Π³Π΅ΠΉ Π‘ΠΎΠ½Π΄Π°Ρ€Π΅Π², ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠ²Π°Ρ‰ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ Π² Southbridge, сСртифициран администратор Π½Π° Kubernetes, Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° kubespray.

Малък Post Scriptum Π½Π΅ Π·Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΠ°, Π° Π·Π° ΠΏΠΎΠ»Π·Π°...

PS Π‘Π΅Ρ€Π³Π΅ΠΉ Π‘ΠΎΠ½Π΄Π°Ρ€Π΅Π² Π²ΠΎΠ΄ΠΈ Π΄Π²Π° ΠΈΠ½Ρ‚Π΅Π½Π·ΠΈΠ²Π½ΠΈ курса: Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π‘Π°Π·Π° Kubernetes 28-30 сСптСмври ΠΈ Π½Π°ΠΏΡ€Π΅Π΄Π½Π°Π»ΠΈ Kubernetes Mega 14–16 ΠΎΠΊΡ‚ΠΎΠΌΠ²Ρ€ΠΈ.

Π‘ΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π½Π° Kubernetes

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

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