4 ΡΠ΅Π½ΡΡΠ±ΡΡ Π² Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³Π΅ Π½Π°ΡΠ°Π»ΡΡ Π‘Π»ΡΡΠΌ DevOps.
Π ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠ°ΠΊΡΠΎΡΡ Π΄Π»Ρ ΡΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π° Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Π² ΡΡΠΈ Π΄Π½Ρ: ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½Ρ-Π·Π°Π» Selectel, ΡΠ΅ΠΌΡ Π΄Π΅ΡΡΡΠΊΠΎΠ² Π»ΡΠ±ΠΎΠΏΡΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² Π·Π°Π»Π΅ ΠΈ 32 ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ° Π² ΠΎΠ½Π»Π°ΠΉΠ½Π΅, ΡΠ΅ΡΠ²Π΅ΡΠ° Selectel Π΄Π»Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ. Π Π·Π΅Π»ΡΠ½ΡΠΉ Π΄ΠΈΠ½ΠΎΠ·Π°Π²Ρ, ΠΏΡΠΈΡΠ°ΠΈΠ²ΡΠΈΠΉΡΡ Π² ΡΠ³Π»Ρ.
Π ΠΏΠ΅ΡΠ²ΡΠΉ Π΄Π΅Π½Ρ Π‘Π»ΡΡΠΌΠ° ΠΏΠ΅ΡΠ΅Π΄ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Π²ΡΡΡΡΠΏΠΈΠ»ΠΈ ΡΡΠΈ ΡΠΏΠΈΠΊΠ΅ΡΠ°.
ΠΠ°Π²Π΅Π» Π‘Π΅Π»ΠΈΠ²Π°Π½ΠΎΠ², Π°ΡΡ ΠΈΡΠ΅ΠΊΡΠΎΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π² Southbridge, Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ 10 Π»Π΅Ρ, ΡΠ²Π»ΡΠ΅ΡΡΡ Certified Kubernetes Administrator. ΠΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΏΠΈΠΊΠ΅Ρ Π‘Π»ΡΡΠΌΠ°. ΠΠ΅Π»Π°Π» Π΄ΠΎΠΊΠ»Π°Π΄Ρ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡ Moscow Kubernetes Meetup ΠΈ UWDC. ΠΠ±Π»Π°Π΄Π°Π΅Ρ Π±ΠΎΠ³Π°ΡΡΠΌ ΠΎΠΏΡΡΠΎΠΌ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Kubernetes: 5 ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² β ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ°, 20+ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π² ΡΠΎΡΡΠ°Π²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΡΡΡΠΌ ΠΠ°Π»ΠΎΠ½ΡΠΊΠΈΠΉ, Π‘Π’Π Β«ΠΡΡΠΎΠΡΡΠΎΒ», ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΈΠ±ΡΠ» Π½Π° Π‘Π»ΡΡΠΌ DevOps ΠΈΠ· ΠΠ°Π»ΠΈΠ½ΠΈΠ½Π³ΡΠ°Π΄Π°. ΠΠΏΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π±ΠΎΠ»Π΅Π΅ 12 Π»Π΅Ρ. ΠΡΡΡΡΠΏΠ°Π» Π² ΡΠΎΠ»ΠΈ ΡΠΈΠΌΠ»ΠΈΠ΄Π°ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΎΡΠ΄Π΅Π»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Ρ 2011 Π³ΠΎΠ΄Π°. Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΎΠΌ ΡΡΠ°Π» Π² 2016 Π³ΠΎΠ΄Ρ. Π‘ΡΠΈΡΠ°Π΅Ρ, ΡΡΠΎ devops-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ β ΡΡΠΎ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ Π΅Π΄ΠΈΠ½ΠΎΡΠΎΠ³Π°. ΠΠ΅ Π² ΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅, ΡΡΠΎ ΠΏΠΎΠΉΠΌΠ°ΡΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π΅Π²ΡΡΠ²Π΅Π½Π½ΠΈΡΠ°. Π Π² ΡΠΎΠΌ, ΡΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅.
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ Π‘ΡΠ΅ΠΏΠ°Π½Π΅Π½ΠΊΠΎ, ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ ΠΎΡΠ΄Π΅Π»Π° ΠΎΠ±Π»Π°ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Selectel, Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΎΠ±Π»Π°ΠΊΠ° OpenStack: ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, CI/CD ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΌΠΈ.
«β¦ Π° ΠΏΠΎΡΠΎΠΌ Ρ ΠΏΠΎΠΉΠΌΠ°Π» Π²ΠΎ-ΠΎ-ΠΎΡ ΡΠ°ΠΊΠΎΠΉ Π²ΠΎΡ Π±Π°Π³.»
ΠΠ΅ΡΠ²ΡΠΌ ΠΎΠ±ΡΡΡΠΈΠ»ΡΡ Π·Π½Π°Π½ΠΈΡΠΌΠΈ Π½Π° ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ² ΠΠ°Π²Π΅Π» Π‘Π΅Π»ΠΈΠ²Π°Π½ΠΎΠ² β ΠΏΡΠΈΡΡΠΌ Ρ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ. ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΠ³ΠΎ Π² Git β Π²ΡΠΎΠ΄Π΅ Π±Ρ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΈ ΠΎΠ±ΡΠ΄Π΅Π½Π½ΠΎΠ΅, Π°Π·Π±ΡΡΠ½ΡΠ΅ ΠΈΡΡΠΈΠ½Ρ. ΠΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΠ°Π»ΠΎ ΠΊΡΠΎ ΡΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Git. ΠΡΠΎΡΠ»ΠΈΡΡ ΠΏΠΎ Π±Π°Π·ΠΎΠ²ΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ git init, commit, add, diff, log, status, pull, push. ΠΡΠΏΠΎΠΌΠ½ΠΈΠ»ΠΈ git flow, Π²Π΅ΡΠΊΠΈ ΠΈ ΡΠ΅Π³ΠΈ, ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ merge.
ΠΠΎΡΠΎΠΌ ΠΠ°Π²Π΅Π» Π‘Π΅Π»ΠΈΠ²Π°Π½ΠΎΠ² ΡΠ΄Π΅Π»ΠΈΠ» Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Ρ Git. ΠΡΠΎΡΠ»ΠΈΡΡ ΠΏΠΎ fork, remote, pull request. Π Π·Π°ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ΄ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ, ΡΠ΅Π»ΠΈΠ·Ρ, ΠΈ Π΅ΡΠ΅ ΡΠ°Π· Π²Π΅ΡΠ½ΡΠ»ΠΈΡΡ ΠΊ Gitflow ΠΈ Π΄ΡΡΠ³ΠΈΠΌ flow ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ.
«ΠΡ
, ΠΊΠ°ΠΊΠΎΠΉ Π°Π΄ΠΌΠΈΠ½!»
ΠΠΎΡΠ»Π΅ ΠΎΠ±Π΅Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°Π±ΡΠ°Π»ΠΈΡΡ ΡΠΈΠ» ΠΈ ΠΏΡΠΈΠ³ΠΎΡΠΎΠ²ΠΈΠ»ΠΈΡΡ Π²Π½ΠΈΠΌΠ°ΡΡ Π΄Π°Π»ΡΡΠ΅, Π½Π°ΡΡΠ°Π»Π° ΠΎΡΠ΅ΡΠ΅Π΄Ρ CI/CD.
ΠΡΡΡΠΌ ΠΠ°Π»ΠΎΠ½ΡΠΊΠΈΠΉ Π½Π°ΡΠ°Π» Ρ ΡΠ΅ΠΌΡ Β«CI/CD: Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΒ». ΠΠ΅ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π» ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ bash, make, gradle, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ git-hooks Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². Π Π°ΡΡΠΊΠ°Π·Π°Π» ΠΎ ΡΠ°Π±ΡΠΈΡΠ½ΡΡ ΠΊΠΎΠ½Π²Π΅Π΅ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² IT. ΠΠΎΠ΄Π΅Π»ΠΈΠ»ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Β«ΠΎΠ±ΡΠ΅Π³ΠΎΒ» ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π°. ΠΠ±ΡΡΠ΄ΠΈΠ» ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΠ Π΄Π»Ρ CI/CD: Drone CI, BitBucket Pipelines, Travis.
ΠΠ»ΠΈΠΆΠ΅ ΠΊ ΡΠ΅ΡΡΠΈ ΡΠ°ΡΠ°ΠΌ Π²Π΅ΡΠ΅ΡΠ° ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ Π½Π°ΡΠ°Π»ΠΈ ΠΏΠΎΡΠΈΡ ΠΎΠ½ΡΠΊΡ Π²ΡΠΌΠ°ΡΡΠ²Π°ΡΡΡΡ. ΠΠΎΡΡΡΠΏΠ°Π»ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π΅Π»Π°ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ²Ρ ΠΏΠΎΡΠ°ΡΠ΅. ΠΡ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Π½Π΅ΠΎΠΊΠΎΡΡΠ΅ΠΊΡΠΎΠ² Π² ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½Ρ-Π·Π°Π»Π΅ ΠΎΡΡΡΠΈΠΌΠΎ ΠΏΠΎΡΠ΅ΠΏΠ»Π΅Π»ΠΎ. Π ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΠ°ΡΠ΅ Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΡΡΡΡΠ°Π΄Π°Π½Π½Π°Ρ ΠΏΡΠΎΡΡΠ±Π°: Β«ΠΠΎΠ»Π»Π΅Π³ΠΈ, Π΄Π°Π²Π°ΠΉΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΡΠΏΠ°ΡΡΠ²Π°ΡΡΡΡ ΠΈ Π΄Π΅Π»Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΡΠ²ΠΎΠ² #supportΒ»
» β ΠΠ°ΡΡΠΠ²Π°Π½Π½Π°, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΉΡΠΈ? β ΠΠ΅Ρ, ΡΠΈΠ΄ΠΈ!»
ΠΡΡΡΠΌ ΠΠ°Π»ΠΎΠ½ΡΠΊΠΈΠΉ Π±Π΅ΡΠΏΠΎΡΠ°Π΄Π½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π» Π·Π°Π³ΡΡΠΆΠ°ΡΡ Π·Π½Π°Π½ΠΈΡ Π² ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ². ΠΠΎΡΠ»Π΅ ΠΊΠΎΡΠ΅Π±ΡΠ΅ΠΉΠΊΠ° ΠΎΡΠΊΡΡΠ» ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠ΅ΠΌΡ Β«CI/CD: Π Π°Π±ΠΎΡΠ° Ρ GitlabΒ».
«Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΊΡΠ΅ΠΏΠΊΠΎ Π΄Π΅ΡΠΆΠΈΡΠ΅ΡΡ Π·Π° Π½ΠΎΡΡΠ±ΡΠΊΠΈ. Π-ΠΈ-ΠΈ, ΠΏΠΎΠ΅Ρ
Π°Π»ΠΈ!»
Π Π°ΡΡΠΊΠ°Π·Π°Π» ΠΎ Gitlab CI, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, Π»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ, Π·Π°ΡΠ΅ΠΌ ΠΎ Gitlab Runner, ΠΈΡ ΡΠΈΠΏΡ ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Π Π°ΡΡΠΌΠΎΡΡΠ΅Π» ΡΡΠ°ΠΏΡ Gitlab CI ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Gitlab CI. ΠΡΠ»Π΅Π΄ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (only, when) ΡΠ°ΡΡΠΊΠ°Π·Π°Π» ΠΎ ΡΠ°Π±ΠΎΡΠ° Ρ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠ°ΠΌΠΈ. ΠΠΎΠΊΠ°Π·Π°Π» ΡΠ°Π±Π»ΠΎΠ½Ρ Π²Π½ΡΡΡΠΈ .gitlab-ci.yml, ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΡΠ°ΡΡΠΊΠ°Ρ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π° Include β ΡΠ΅ΠΊΡΠΈΠΈ. ΠΠ°Π²Π΅ΡΡΠΈΠ» ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ gitlab-ci.yml: ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ» ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ push Π² ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΠΎΡΠ»Π΅ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΡΡ ΠΏΠ΅ΡΠ΅Π½Π΅ΠΊ ΠΈ ΠΊΠΎΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Π²ΡΡΡΡΠΏΠΈΠ» ΠΠ»Π΅ΠΊΡΠ΅ΠΉ Π‘ΡΠ΅ΠΏΠ°Π½Π΅Π½ΠΊΠΎ Ρ ΡΠ΅ΠΌΠΎΠΉ Β«Infrastructure as Code: ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅ ΠΊΠ°ΠΊ ΠΊ ΠΊΠΎΠ΄ΡΒ». Π Π·Π°Π»Π΅ ΠΏΡΠ±Π»ΠΈΠΊΠ° ΠΆΠΈΠ²ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π»Π°ΡΡ ΡΠ΅ΠΌΠΎΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π΄Π½Ρ Β«IaC Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ TerraformΒ», ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΈ Π΄ΡΡΠ΅ΡΠΈΠΏΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΠΈΡΡΠΎΡΠΈΠΉ.
ΠΠΈΠΊΠΈΡΠ° Π‘ΡΠ²ΠΎΡΠΎΠ², [4 ΡΠ΅Π½Ρ. 2019 Π³., 20:27:35]:
@f3exx Π° ΠΏΠΎ ΡΠ΅ΡΡΠ°ΡΠΎΡΠΌΡ Π±ΡΠ΄ΡΡ Π΄ΡΡΠ΅ΡΠΈΠΏΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈΠ»ΠΈ Π²ΡΠ΅ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡΡ Π»Π°Π±Π°ΠΌΠΈ?
Aleksey Stepanenko, [4 ΡΠ΅Π½Ρ. 2019 Π³., 20:28:32]:
ΠΡΠ΄Π΅Ρ ΠΎΠ΄Π½Π° ΡΠΎΡΠ½ΠΎ)
Dmitriy Miroshnichenko, [4 ΡΠ΅Π½Ρ. 2019 Π³., 20:28:38]:
ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠ°ΠΊΠΈΠ΅?
Π΄ΠΆΡΠ½ Π²Π·ΡΠ» ΡΡΠ΅ΠΉΡ ΠΈ Π²ΡΠ΅ ΡΠ±ΠΈΠ»?
ΠΠ° ΠΏΡΡΠΎΠΌ Π‘Π»ΡΡΠΌΠ΅ ΠΌΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π»ΠΈ ΡΡ Π΅ΠΌΡ Β«Π»Π΅ΡΠ΅Π½ΠΊΠΈΒ», ΠΊΠΎΠ³Π΄Π° ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» Π΄Π°ΡΡΡΡ ΠΎΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΊ ΡΠ»ΠΎΠΆΠ½ΠΎΠΌΡ β ΡΠΎ ΡΡΠ°ΡΡΠΎΠΌ ΠΎΡ Git ΠΈ ΡΠΈΠ½ΠΈΡΠ΅ΠΌ Π½Π° SRE. ΠΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ Π½Π΅ ΠΎΡΠ΅Π½Ρ: ΠΊΡΡΡΡΠ΅ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΈ Π·Π°ΡΠΊΡΡΠ°Π»ΠΈ Π½Π° Π»ΡΠ³ΠΊΠΈΡ ΡΠ΅ΠΌΠ°Ρ . ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π² ΠΏΡΡΠ½ΠΈΡΡ ΠΏΠΎΠΉΠ΄ΡΡ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π°.
Π ΡΠ°ΡΠ΅ Π‘Π»ΡΡΠΌΠ° ΠΏΠΈΡΡΡ:
ΠΠΈΠΊΠΎΠ»Π°ΠΉ ΠΠΎΠ½ΠΎΠ½Π΅Π½ΠΊΠΎ, [4 ΡΠ΅Π½Ρ. 2019 Π³., 16:17:28]:
ΠΡΠ΅ Π²ΡΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, Π½ΠΎ ΡΠ΅ΠΌΠΏ ΡΠ°ΠΊΠΎΠΉ ΡΡΠΎ ΡΡ ΠΏΡΠΎΡΡΠΎ ΡΡΠΏΠ΅Π²Π°Π΅ΡΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅ ΠΎΡΠΌΡΡΠ»ΠΈΠ². ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ
ΠΎΠΆΠ΅ Π½Π° ΡΠΎ ΠΊΠ°ΠΊ Π½Π°Ρ
ΠΎΠ΄Ρ ΡΠ°Π½Π΄ΠΎΠΌΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ°ΠΉΡΠΎΠ² ΡΡ ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠΏΠΈΡΡΠ΅ΡΡ ΠΏΠΎ ΡΠ°Π³Π°ΠΌ ΠΈ Π²ΡΡΠ°Π²Π»ΡΠ΅ΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠ΅Π±Ρ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π° Π½ΡΠΆΠ½ΠΎ Π±Π΅ΠΆΠ°ΡΡ ΠΎΡ ΡΠ°Π³Π° ΠΊ ΡΠ°Π³Ρ. Π½Ρ ΠΈΠ»ΠΈ ΡΡ ΡΡΠΎ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΡ ΠΈ ΡΠ΅Π±Π΅ Π½ΠΎΡΠΌ
Alexander B, [4 ΡΠ΅Π½Ρ. 2019 Π³., 16:18:06]:
Π΄Π°, ΡΡΠΏΠ΅Π²Π°Π΅ΡΡ ΡΡΠΎ-ΡΠΎ ΠΎΠ΄Π½ΠΎ - Π»ΠΈΠ±ΠΎ ΡΠ»ΡΡΠ°ΡΡ, Π»ΠΈΠ±ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ
Fedor, [4 ΡΠ΅Π½Ρ. 2019 Π³., 16:18:21]:
+1
ΠΡΠ΅ ΠΈΠ· ΠΌΠΈΠ½ΡΡΠΎΠ², ΠΏΠΎΠΊΠ° ΡΡ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡΡ ΠΊΠΎΠΏΠΈ ΠΏΠ°ΡΡΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΡΡ 80% ΡΠ»ΠΎΠ² ΠΡΡΠ΅ΠΌΠ°
ΠΠΈΡΠΈΠ»Π», [4 ΡΠ΅Π½Ρ. 2019 Π³., 16:19:01]:
Π½ΡΠΆΠ½ΠΎ Π΄Π²Π° runners Π·Π°ΠΏΡΡΠΊΠ°ΡΡ
ΠΎΠ΄ΠΈΠ½ ΡΠ°Π½Π½Π΅Ρ ΡΠ»ΡΡΠ°Π΅Ρ
Π° Π²ΡΠΎΡΠΎΠΉ ΠΊΠΎΠΏΠΈΠΏΠ°ΡΡΠΈΡ )
ΠΡΠ»ΠΈ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡΡ Ρ ΠΎΠ΄ Π‘Π»ΡΡΠΌΠ°, Π² Π½Π΅Π³ΠΎ Π²Π»Π΅Π·Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. Π§Π΅ΠΌ-ΡΠΎ Π½Π°Π΄ΠΎ ΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ β ΠΌΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΠΊΠΎΠΌΡΠΎΡΡΠ½ΡΠΌ ΡΠ΅ΠΌΠΏΠΎΠΌ. Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅ΡΡΠΈΡΡ ΠΈ ΡΡΡΠ°ΠΌΠ±ΠΎΠ²Π°ΡΡ Π²ΡΡ Π² Π³ΠΎΠ»ΠΎΠ²Π΅, Π΅ΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π°.
ΠΠ°Π²Π΅Π» Π‘Π΅Π»ΠΈΠ²Π°Π½ΠΎΠ² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΡΠΏΡΠ°ΡΠΈΠ²Π°Π» Ρ Π·Π°Π»Π°, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π³ΠΎΡΠΎΠ²Ρ ΠΎΠ½ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ Π΄Π°Π»ΡΡΠ΅ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ ΡΡΠ΄ ΠΏΠΎΠ΄ΡΠ΅ΠΌ IaC Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π΄Π΅Π½Ρ. ΠΠΎΠ»Π³ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π² Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΠ±Π΅ΠΆΠ΄Π°Π»Π° Π΄ΡΡΠΆΠ±Π° ΠΈ Π½Π΅ΠΉΡΡΠ°Π»ΠΈΡΠ΅Ρ. Π ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ Π΄Π΅Π²ΡΡΠΎΠ³ΠΎ Π²Π΅ΡΠ΅ΡΠ° ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»ΠΈ ΡΠ΅, ΠΊΡΠΎ Π΅ΡΡ ΠΏΠΎΠΌΠ½ΠΈΠ», ΡΡΠΎ Π½ΠΎΡΡΡ ΠΏΠΎ ΠΈΠ΄Π΅Π΅ Π½Π°Π΄ΠΎ ΡΠΏΠ°ΡΡ.
ΠΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π·Π°ΡΠ²Π»ΡΠ΅ΠΌ, Π·Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π΄Π΅Π½Ρ Π‘Π»ΡΡΠΌΠ° ΠΎΡ DevOps-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ² Π½ΠΈ ΠΎΠ΄ΠΈΠ½ Π΄ΠΈΠ½ΠΎΠ·Π°Π²Ρ Π½Π΅ ΠΏΠΎΡΡΡΠ°Π΄Π°Π». ΠΠΏΠ΅ΡΠ΅Π΄ΠΈ Π΅ΡΡ Π΄Π²Π° Π΄Π½Ρ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π°. Π‘Π°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅, ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΈ Π²ΠΊΡΡΠ½ΠΎΠ΅: IaC ΠΈ SRE.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com