DevOps ΠΠ½ΠΆΠ΅Π½Π΅Ρ | Kubernetes, Docker & CI/CD. SRE ΠΡΠ°ΠΊΡΠΈΠΊΠΈ, Linux ΠΈ Cloud. ΠΠ΅Π²ΠΎΠΏΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΈ Python. IT ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.
IT ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Β· 1 Π°Π²Π³ΡΡΡΠ° 2026 Π³.
π‘ ΠΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Helm: ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ
π‘ ΠΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Helm: ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Helm Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π² Kubernetes, ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠ΄Ρ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΡ ΠΏΡΠ°ΠΊΡΠΈΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π²Π°ΡΠΈΡ ΡΠ°ΡΡΠΎΠ². π¦ 1. Π‘ΡΡΡΠΊΡΡΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ ΡΠ°ΡΡΠ° Π‘ΠΎΠ±Π»ΡΠ΄Π°ΠΉΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°ΡΡΠ° Helm: mychart/ charts/ templates/ values.yaml Chart.yaml README.md ΠΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ. ΠΡΠΎ ΡΠ΄Π΅Π»Π°Π΅Ρ ΡΠ°ΡΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΠΌΠΈ ΠΈ ΡΠΈΡΠ°Π΅ΠΌΡΠΌΠΈ. π§© 2. Π Π°Π·Π΄Π΅Π»ΡΠΉΡΠ΅ ΠΎΠ±ΡΠΈΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ _helpers.tpl Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠΈΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΈ, ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΈΠΌΠ΅Π½Π° ΡΠ΅ΡΡΡΡΠΎΠ². ΠΡΠΎ ΡΠ½ΠΈΠΆΠ°Π΅Ρ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅: {{/* ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ */}} {{- define "mychart.fullname" -}} {{- printf "%s-%s" .Release.Name .Chart.Name | trunc 63 | trimSuffix "-" -}} {{- end -}} βοΈ 3. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π² values.yaml ΠΠ΅Π»Π°ΠΉΡΠ΅ ΡΠ°ΡΡΡ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· values.yaml. ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ Π°ΡΠ΄ΠΊΠΎΠ΄ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΡΠ°Π±Π»ΠΎΠ½Π°Ρ . π§ͺ 4. ΠΠ°Π»ΠΈΠ΄Π°ΡΠΈΡ values.yaml ΠΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ required: {{ required "Variable mychart.image.repository is required" .Values.image.repository }} π 5. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ if/else ΡΠ°Π·ΡΠΌΠ½ΠΎ Π‘ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ Π½Π΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ°ΡΡ ΡΠ°Π±Π»ΠΎΠ½Ρ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ. Π Π°Π·Π΄Π΅Π»ΡΠΉΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ², Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ. ποΈ 6. ΠΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ ΡΠ°ΡΡ Π² ΡΠ°Π±Π»ΠΎΠ½ Π½Π°ΠΏΡΡΠΌΡΡ ΠΠΌΠ΅ΡΡΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ charts/, ΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅ ΠΈΡ Π² Chart.yaml ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ helm dependency update. π 7. ΠΠ΅ Ρ Π°ΡΠ΄ΠΊΠΎΠ΄ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΠ΅ΡΠ΅Π΄Π°Π²Π°ΠΉΡΠ΅ Π²Π΅ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π· values.yaml. ΠΡΠΎ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡ CI/CD: image: repository: nginx tag: "1.21.1" π 8. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΠ΅ Ρ ΡΠ°Π½ΠΈΡΠ΅ ΠΏΠ°ΡΠΎΠ»ΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½Ρ Π² values.yaml. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ΅ΠΊΡΠ΅ΡΡ Kubernetes ΠΈΠ»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΈΠΏΠ° Sealed Secrets ΠΈΠ»ΠΈ External Secrets. π 9. Helm hooks Helm ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Ρ ΡΠΊΠΈ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ Π΄ΠΎ/ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΉ ΠΠ. ΠΡΠΈΠΌΠ΅Ρ: annotations: "helm.sh/hook": pre-install π§Ή 10. Π§ΠΈΡΡΠΊΠ° ΡΡΠ°ΡΡΡ ΡΠ΅Π»ΠΈΠ·ΠΎΠ² ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ helm uninstall ΠΈ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΉΡΠ΅ ΡΡΠ°ΡΡΡ ΡΠ΅Π»ΠΈΠ·ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ helm list. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΠΈΠΌΡΠ½ ΠΈ ΠΌΡΡΠΎΡΠ°. π§ͺ 11. Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΡΡΠ° ΠΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ unit-ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ helm unittest ΠΈ Π½Π΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΠΏΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°: helm lint . π 12. ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ΅Π· CI/CD ΠΠ½ΡΠ΅Π³ΡΠΈΡΡΠΉΡΠ΅ Helm Π² ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ CI/CD Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ°ΡΡΠΎΠ² β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ GitLab CI, GitHub Actions, ArgoCD ΠΈΠ»ΠΈ Flux. ΠΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΠΉΡΠ΅ΡΡ ΡΡΠΈΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΉ β ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ Helm ΡΡΠ°Π½Π΅Ρ Π½Π°Π΄ΡΠΆΠ½ΠΎΠΉ, ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠΉ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΠΉ. ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅. ΠΠΎΠ΄ΠΏΠΈΡΠΈΡΡ π @i_DevOps
ΠΠ°Π½Π°Π» Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΠ°ΠΊΡΠΈΠΌΠ΅ΡΠ΅ΡΠ°
3Β 017 ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠΎΠ² Β· IT ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ