ΠΡ 4 Π΄ΠΎ 6 ΡΠ΅ΠΏΡΠ΅ΠΌΠ²ΡΠΈ Π² Π‘Π°Π½ΠΊΡ ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³, Π² ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΎΠ½Π½Π°ΡΠ° Π·Π°Π»Π° Selectel ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅ ΡΡΠΈΠ΄Π½Π΅Π²Π½ΠΎ .

Π‘ΡΠ·Π΄Π°Π²Π°Ρ ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Ρ ΠΌΠΈΡΡΠ»ΡΠ°, ΡΠ΅ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ½ΠΈΡΠ΅ ΡΡΡΠ΄ΠΎΠ²Π΅ ΠΏΠΎ DevOps, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°ΡΠ° Π·Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅, Π²ΡΠ΅ΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎ. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΈ ΡΠ° ΡΠ°ΠΌΠΎ ΠΎΠΏΠΈΡΡΡ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΡΠ°: ΠΎΠ±ΡΡΠ½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΡΡΡΠ±Π²Π° ΠΈ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ, ΠΈ ΡΠ°Π·ΠΊΠ°Π· ΠΊΠ°ΠΊ Π½ΠΈΠ΅ Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠΌ.
ΠΡΠ² Π²ΡΡΠΊΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ, Π²ΡΠ΅ΠΊΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΠΈΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΠΌΠ° ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½ Π½ΠΈΠ²ΠΎ Π½Π° DevOps. ΠΡΠΊΠΎΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Git, Π΄ΠΎΠΊΠ°ΡΠΎ Π΄ΡΡΠ³ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Ρ SRE. ΠΡΡΡΡΡ Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½ ΡΠ°ΠΊΠ°, ΡΠ΅ Π²ΡΠ΅ΠΊΠΈ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈ Π½Π΅ΡΠΎ Π°ΠΊΡΡΠ°Π»Π½ΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²Π½Π΅Π΄ΡΠΈ ΡΡΠΊ ΠΈ ΡΠ΅Π³Π°.
ΠΠ°ΠΏΠΎΡΠ²Π°ΠΌΠ΅ Ρ Git, ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΠΌΠ΅ ΠΏΡΠ΅Π· ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠ΄Π° ΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°, ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° CI/CD, ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΊΠ°ΡΠΎ ΠΊΠΎΠ΄ (IaC), ΡΠ΅ΡΡΠ²Π°ΠΌΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π½Π°ΡΡΡΠΎΠΉΠ²Π°ΠΌΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, ΡΡΠ±ΠΈΡΠ°ΠΌΠ΅ ΠΈ ΠΈΠ·ΡΡΠ°Π²Π°ΠΌΠ΅ Π»ΠΎΠ³ΠΎΠ²Π΅, ΠΈ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΡΡΠΈΠ³Π°ΠΌΠ΅ Π΄ΠΎ SRE: ΠΏΡΠ΅Π²ΡΡΡΠ°ΠΌΠ΅ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡΡΠ° Π² ΠΈΠ·ΠΌΠ΅ΡΠΈΠΌΠ° ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ.
Git
Π‘Π΅Π³Π° Git Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ°ΠΌΠΎ ΠΎΠ½Π·ΠΈ, ΠΊΠΎΠΉΡΠΎ Π²ΡΠ΅ΡΠ° Π΅ ΠΊΡΠΏΠΈΠ» ΠΏΡΡΠ²ΠΈΡ ΡΠΈ Π»Π°ΠΏΡΠΎΠΏ. Π’ΠΎΠ²Π° Π΅ ΡΡΠΈΠ²ΠΈΠ°Π»Π΅Π½ ΠΈ ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠΈΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΈ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠ΅ΡΡΠΎ ΡΡΠ΅ΡΠ°ΠΌΠ΅ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½Π°ΡΠ° ΠΌΡ ΡΠΏΠΎΡΡΠ΅Π±Π°: ΠΎΡ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΡΠ²Π°Π½Π΅ Π² master, Π΄ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ Git Π½Π° ΡΡΡΠ²ΡΡΠ° ΡΡΠ΅Π· Ctrl-C, Ctrl-V.
Π Π°Π·ΠΊΠ°Π·Π²Π°ΠΌΠ΅ ΠΊΠ°ΠΊ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ, ΠΊΠ°ΠΊ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ, ΠΊΠ°ΠΊ Π³ΠΎ ΠΏΡΠ°Π²ΡΡ Π² Southbridge.
ΠΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΠΌΠ΅ ΠΏΡΠ΅Π· ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΡΠ°: ΠΎΡΠ½ΠΎΠ²ΠΈ Π½Π° Git, ΡΠ°Π±ΠΎΡΠ° Π² Π΅ΠΊΠΈΠΏ.
Π’Π΅ΠΌΠ° β1: ΠΡΠ½ΠΎΠ²ΠΈ Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ Git
- ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ git init, commit, add, diff, log, status, pull, push
- Git flow, ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅ ΠΈ ΡΠ°Π³ΠΎΠ²Π΅, ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Π·Π° ΡΠ»ΠΈΠ²Π°Π½Π΅
- Π Π°Π±ΠΎΡΠ° Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ remote repo
Π’Π΅ΠΌΠ° β2: Π Π°Π±ΠΎΡΠ° Π² Π΅ΠΊΠΈΠΏ Ρ Git
- GitHub flow
- Fork, remote, pull request
- ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ, ΡΠ΅Π»ΠΈΠ·ΠΈ, ΠΎΡΠ½ΠΎΠ²ΠΎ Π·Π° Gitflow ΠΈ Π΄ΡΡΠ³ΠΈ flow Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° Π΅ΠΊΠΈΠΏΠΈΡΠ΅
ΠΠ°ΡΠ΅ΡΠΈΠ°Π»ΡΡ Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½ ΡΠ°ΠΊΠ°, ΡΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π΄Π° ΠΌΠΎΠ³Π°Ρ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ Π΄Π° Π²Π½Π΅Π΄ΡΡΡ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΠΈ.
ΠΡ Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° Π½Π° DevOps ΠΏΡΠ°Π²ΠΈΠ»Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° Ρ Git ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠ°Π½Π΅, ΠΈΠ·ΠΊΠ»ΡΡΠ²Π° ΡΠ΅Π΄ΠΈΡΠ° ΠΏΠΎΠ²ΡΠ°ΡΡΡΠΈ ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΏΠΎΠ²ΠΈΡΠ°Π²Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°.
DevOps ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ
ΠΠ»Π΅Π΄Π°ΠΌΠ΅ Π½Π° DevOps ΠΏΡΠ΅Π· ΠΎΡΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°: ΡΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ Π»ΠΎΠΊΠ°Π»Π½ΠΎ ΠΎΠΊΠΎΠ»Π½Π° ΡΡΠ΅Π΄Π°, ΠΏΠΈΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΡΡΡΠΎΠΉΠ²Π°ΠΌΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ Π»ΠΎΠ³Π²Π°Π½Π΅ΡΠΎ, ΡΠ΅ΡΡΠ²Π°ΠΌΠ΅ Π»ΠΎΠΊΠ°Π»Π½ΠΎ, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ/ΡΠ°ΠΉΠ½ΠΈ ΠΈ service discovery, ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΡΡΠ°ΡΠΈΡΠΎΠ²ΠΊΠ°ΡΠ° (opentracing).
Π’Π΅ΠΌΠ° β3: Π Π°Π±ΠΎΡΠ° Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΎΡ Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ°
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΡΡΠ΅Π΄Π°: ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠ²Π΅ΡΠΈ
- ΠΠΈΡΠ΅ΠΌ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡ Π½Π° Python (Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΅ΡΡΠΎΠ²Π΅)
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° docker-compose Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ°
Π’Π΅ΠΌΠ° β4: ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠ΄Π° ΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°
- ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ
Π‘Π»Π΅Π΄ ΠΊΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΡΠ΅ Π²ΠΈΠ΄ΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ΡΡ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠ° Π»ΠΎΠ³ΠΎΠ²Π΅, ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ ΡΠ΅ΡΡΠ²Π°Ρ ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎ-Π½Π°ΡΠ°ΡΡΠΊ Π΄Π° Π³ΠΎ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Ρ. ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ°Ρ Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅: ΠΊΠ°ΠΊΠ²ΠΈ Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΊΠΎΠ΄Π° ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ, ΠΊΠ°ΠΊ Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Ρ ΡΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Π΄Π° ΡΠ΅ΡΡΠ²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΠΌΠΈ.
ΠΠ° ΡΠΎΠ·ΠΈ Π΅ΡΠ°ΠΏ ΡΠ΅ ΡΠ΅ΡΠ°Π²Π° Π³Π»Π°Π²Π½Π°ΡΠ° Π·Π°Π΄Π°ΡΠ° Π½Π° DevOps: ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π° ΡΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΡΡΠ²ΠΌΠ΅ΡΡΠ½Π° ΡΠ°Π±ΠΎΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π΅Π²ΠΎΠ²Π΅ΡΠ΅ ΠΈ ΠΎΠΏΡΠΎΠ²Π΅ΡΠ΅. Π’ΠΎΠ²Π° Π΅ ΠΊΠ»ΡΡΠΎΠ²Π° ΡΡΡΠΏΠΊΠ° ΠΊΡΠΌ ΠΏΡΠ΅Ρ ΠΎΠ΄Π° ΠΎΡ ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΠ½Π΅ Π½Π° Π·Π°Π΄Π°ΡΠΈ ΠΊΡΠΌ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅.
Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π° ΡΠΊΠΎΡΠΎΡΡΡΠ° ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ°.
CI/CD
Π‘ΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°ΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π° CI/CD. Π©Π΅ Π·Π°ΠΏΠΎΡΠ½Π΅ΠΌ Ρ ΡΠΎΠ²Π°, ΡΠ΅ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΡΡΠ½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ: makefiles, git hooks, ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅. Π©Π΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ ΠΊΠΎΠ³Π° ΡΠ΅Π·ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ ΡΠ° Π°ΠΊΡΡΠ°Π»Π½ΠΈ, Π° ΠΊΠΎΠ³Π° Π½Π΅ Π±ΠΈΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ.
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ΠΌ Ρ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π½Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡ CI Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° GitLab.
Π’Π΅ΠΌΠ° β5: CI/CD: ΠΡΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΡΠ°
- ΠΡΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΡΠ°
- ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ (bash, make, gradle)
- ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° git-hooks Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅
- Π€Π°Π±ΡΠΈΡΠ½ΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ½ΠΈ Π»ΠΈΠ½ΠΈΠΈ Π·Π° ΡΠ³Π»ΠΎΠ±ΡΠ²Π°Π½Π΅ ΠΈ ΡΡΡ Π½ΠΎΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΠ’
- ΠΡΠΈΠΌΠ΅Ρ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° "ΠΎΠ±Ρ" ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½
- Π‘ΡΠ²ΡΠ΅ΠΌΠ΅Π½Π΅Π½ ΡΠΎΡΡΡΠ΅Ρ Π·Π° CI/CD: Drone CI, BitBucket Pipelines, Travis ΠΈ Π΄Ρ.
Π’Π΅ΠΌΠ° β6: CI/CD: Π Π°Π±ΠΎΡΠ° Ρ GitLab
- GitLab CI β ΠΎΠ±ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ
- GitLab Runner, ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΡΠΈΠΏΠΎΠ²Π΅ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
- GitLab CI, ΠΎΡΠΎΠ±Π΅Π½ΠΎΡΡΠΈ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ°, Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ
- ΠΡΠ°ΠΏΠΈ Π½Π° GitLab CI
- ΠΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π² GitLab CI
- Π‘Π³Π»ΠΎΠ±ΡΠ²Π°Π½Π΅, ΡΠ΅ΡΡΠ²Π°Π½Π΅, ΡΠ°Π·Π³ΡΡΡΠ°Π½Π΅
- ΠΠΎΠ½ΡΡΠΎΠ» ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ: only, when
- Π Π°Π±ΠΎΡΠ° Ρ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΈ
- Π¨Π°Π±Π»ΠΎΠ½ΠΈ Π² .gitlab-ci.yml, ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΌΠ΅ΡΡΠ° Π² ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π°
- ΠΠΊΠ»ΡΡΠ²Π°Π½Π΅ β ΡΠ΅ΠΊΡΠΈΠΈ
- Π¦Π΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° gitlab-ci.yml (Π΅Π΄ΠΈΠ½ ΡΠ°ΠΉΠ» ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΈ push Π² ΠΎΡΡΠ°Π½Π°Π»ΠΈΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ)
Π‘ΡΠ²ΠΌΠ΅ΡΡΠ½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π΄ΠΎΡΡΠΈΠ³Π° Π½ΠΎΠ²ΠΎ Π½ΠΈΠ²ΠΎ: Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡΡ ΠΏΠΈΡΠ΅ CI ΡΠ°Π±Π»ΠΎΠ½Π°, Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π³ΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΡΡ, ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°ΠΉΠΊΠΈ ΡΠ²ΠΎΡ CI Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°.
Π‘Π½ΠΈΠΆΠ°Π²Π° ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΎΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅, Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΡΠΎ ΡΡΡΠ½Π° ΡΠ°Π±ΠΎΡΠ°, ΠΈΠ·ΡΠ΅Π·Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Ρ "Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΡΡ ΡΠΎΠ²Π΅ΠΊ, ΠΊΠΎΠΉΡΠΎ Π·Π½Π°Π΅ ΠΊΠ°ΠΊ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Ρ make ΡΠ°ΠΉΠ»Π°". Π Π°Π·Π³ΡΡΡΠ°Π½ΠΈΡΡΠ° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π±ΡΡΠ·ΠΎ.
IaC
Π’Π΅ΠΌΠ°ΡΠ° Infrastructure as Code, ΡΠ°Π·Π³Π»Π΅Π΄Π°Π½Π° ΠΎΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π½Π° ΠΎΠ±Π»Π°ΠΊΠ° Selectel ΠΠ»Π΅ΠΊΡΠ΅ΠΉ Π‘ΡΠ΅ΠΏΠ°Π½Π΅Π½ΠΊΠΎ, ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΠΊΠ°ΠΊ Π±ΡΡΠ·ΠΎ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΎ Π΄Π° ΡΠ°Π·Π³ΡΡΡΠ°ΡΠ΅ ΠΈ ΡΠΊΠ°Π»ΠΈΡΠ°ΡΠ΅ ΡΡΡΠ²ΡΡΠΈ, ΠΊΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π΄Π° ΠΎΠΏΠ°ΠΊΠΎΠ²Π°ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°Π±Π»ΠΎΠ½ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½Π° ΠΌΠ°ΡΠΈΠ½ΠΈΡΠ΅ Π²Π΅Π΄Π½Π°Π³Π°.
Π§ΠΎΠ²Π΅ΠΊΡΡ, ΡΡΠ·Π΄Π°Π» Ρ ΠΈΠ»ΡΠ΄ΠΈ IaC ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠ΅ ΡΠ°Π·ΠΊΠ°ΠΆΠ΅ ΠΊΠ°ΠΊ Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΠΈ ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° Π½Π΅ ΡΠ΅ ΠΏΡΠ°Π²ΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΎΠ±Π»Π°ΠΊΠ° Selectel Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈ Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΎ Π·Π° ΠΎΠ±Π»Π°ΡΠΈΡΠ΅ Π½Π° Google ΠΈ Amazon.
Π‘Π»ΡΠΆΠΈΡΠ΅Π»ΡΡ Π½Π° Southbridge ΠΠΈΠΊΠΎΠ»Π°ΠΉ ΠΠ΅ΡΡΠΎΠΏΡΠ½, Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° Ansible ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΠΊΠ°ΠΊ Π±Π΅Π· ΠΏΡΠ΅ΠΊΡΡΠ²Π°Π½Π΅ Π΄Π° ΡΠ°Π·Π³ΡΡΡΠ°ΡΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ.
ΠΠΎΠ³Π°ΡΠΎ ΡΡΡΠ½ΠΎ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΡΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° (Π½Π°ΡΡΡΠΎΠΉΠ²Π°ΡΠ΅ ΡΡΡΠ²ΡΡΠΈ, ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡ), ΠΏΡΠΈ ΠΎΠΏΠΈΡ Π΄Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΏΠΈΡ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ°, ΡΡΡΠ±Π²Π° Π΄Π° ΡΠΈ ΡΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΈ Π²ΡΠ·ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅ΡΠ΅ Π²ΡΠΈΡΠΊΠΈΡΠ΅ ΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. Π’Π°Π·ΠΈ Π·Π°Π΄Π°ΡΠ° Π»Π΅ΡΠ½ΠΎ ΠΎΡΠ½Π΅ΠΌΠ° 3-5 Π΄Π½ΠΈ. Π Π°Π±ΠΎΡΠ°ΡΠ° Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΊΠ°ΡΠΎ Ρ ΠΊΠΎΠ΄ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ Π°ΠΊΡΡΠ°Π»Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ°Π·Π³ΡΡΡΠ°Π½ΠΎ Π·Π° ΠΌΠΈΠ½ΡΡΠΈ.
ΠΠΈΠΊΠΎΠ»Π°ΠΉ ΡΠ΅ ΡΠ°Π·ΠΊΠ°ΠΆΠ΅ ΠΊΠ°ΠΊ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ ΠΏΠ»Π΅ΠΉΠ±ΡΡΠΈ, ΠΊΠ°ΠΊΠ²ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ, Π·Π°ΡΠΎ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΏΠ»Π΅ΠΉΠ±ΡΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ Π±Π°Π²Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ ΠΊΠ°ΠΊΡΠΎ ΡΠ΅ ΠΎΡΠ°ΠΊΠ²Π°. Π’ΠΎΠ²Π° Π΅ ΠΎΠΏΠΈΡ ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ IaC Π² Southbridge.
Π’Π΅ΠΌΠ° β7: Infrastructure as Code
- IaC: ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΊΠ°ΡΠΎ ΠΊΠΎΠ΄
- ΠΠ±Π»Π°ΡΠ½ΠΈ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ ΠΊΠ°ΡΠΎ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°
- ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π·ΠΈ (packer)
- IaC Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° Terraform
- Π‘ΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΡΠ²ΠΌΠ΅ΡΡΠ½Π° ΡΠ°Π±ΠΎΡΠ°, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
- ΠΡΠ°ΠΊΡΠΈΠΊΠ° Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Ansible ΠΏΠ»Π΅ΠΉΠ±ΡΡΠΈ
- ΠΠ΄Π΅ΠΌΠΏΠΎΡΠ΅Π½ΡΠ½ΠΎΡΡ, Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΡΡ
- IaC Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° Ansible
- Database as a Code / ΠΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡ PostgreSQL
ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΏΡΠΈΠ΄ΠΎΠ±ΠΈΠ²Π° Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΡΡ ΠΈ ΠΈΠ΄Π΅ΠΌΠΏΠΎΡΠ΅Π½ΡΠ½ΠΎΡΡ.
ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡΡ ΡΡΠΈ ΠΊΠ°ΠΊ Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π° ΡΠ»ΠΎΠΆΠ½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°: Π±ΡΡΠ·ΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΈ ΡΡΠ΅Π΄ΠΈ, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° Π΅Π΄ΠΈΠ½ΡΡΠ²ΠΎ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΡΠ΅Π΄ΠΈ, Π²ΠΈΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΈΡΡΠΎΡΠΈΡ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΊΡΠΈΡΠΈΡΠ½ΠΎ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°Π±ΠΎΡΡΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΅ΠΊΠΈΠΏΠ°.
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΡΡΠ°Π²Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°, ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎ Π΄Π° ΡΠ°Π·Π³ΡΡΡΠ° ΡΡΠ΅Π΄ΠΈ.
ΠΠΎΠ½ΡΡ Π½Π° ΡΠ°Π·Π΄Π΅Π»Π° β ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ² ΠΊΠ»Π°ΡΡΠ΅Ρ ΠΎΡ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ PostgreSQL. Π©Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠΌ Π³ΠΎΡΠΎΠ² ΠΏΠ»Π΅ΠΉΠ±ΡΠΊ, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π² Southbridge, Π²ΠΈΠ΅ ΡΠ΅ ΡΠ°Π·Π³ΡΡΡΠ°ΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Π½Π° ΡΡΠ΅Π±Π΅Π½ ΡΡΠ΅Π½Π΄ ΠΈ ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠΎΠ²Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ² Π²Π°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ.
Π’Π΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π³ΡΠ΅ΡΠΊΠ°ΡΠ° Π²Π΅Π΄Π½Π°Π³Π° Π½Π° Ρ ΠΈΠ»ΡΠ΄Π° ΡΡΡΠ²ΡΡΠ°. ΠΡΠΈ Π²ΡΡΠΊΠ° ΠΏΡΠΎΠΌΡΠ½Π° Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅. ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, ΡΡΡΠ½ΠΎΡΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ ΠΎΡΠ½Π΅ΠΌΠ° ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΡΠ΅ ΠΎΡΠΌΠ΅Π½Ρ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π°ΡΠ° Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΡΠ°.
ΠΠ° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° ΠΊΠ°ΠΊ Π΄Π° ΠΏΠΈΡΠ΅ΠΌ ΡΠ΅ΡΡΠΎΠ²Π΅ Π½Π° ΡΠΎΠ»ΠΈ. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠ΅ΡΡΠΎΠ²Π΅ Π·Π° Π²Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ. ΠΠ΅ΡΠ΅ Π½Π΅ Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π° Π·Π°ΠΏΠΎΠΌΠ½ΡΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΠΎΠΏΠΈΡΠ²Π°ΡΠ΅ Π³ΠΈ Π² ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°ΡΠ΅, ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡΡΠ° Π·Π° ΠΈΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΡΠ° Π½Π° ΠΌΡΡΡΠΎ.
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ Π½Π°ΡΡΠΈΠΌ ΠΊΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΠΌΠ΅ Π²ΡΠΈΡΠΊΠΈ Π½ΠΎΠ²ΠΈ ΡΡΡΠ²ΡΡΠΈ Π² ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°. Π©Π΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ. Π©Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π»ΠΎΡΠΈ ΠΈ Π΄ΠΎΠ±ΡΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Π’Π΅ΠΌΠ° β8: Π’Π΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°
- Π’Π΅ΡΡΠ²Π°Π½Π΅ ΠΈ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Molecule ΠΈ Gitlab CI
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Vagrant
Π’Π΅ΠΌΠ° β9: ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Ρ Prometheus
- ΠΠ°ΡΠΎ Π΅ Π½ΡΠΆΠ΅Π½ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³
- ΠΠΈΠ΄ΠΎΠ²Π΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³
- Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³
- ΠΠ°ΠΊ Π΄Π° ΠΈΠ·Π³ΡΠ°Π΄ΠΈΠΌ Π·Π΄ΡΠ°Π²Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³
- Π§ΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΈΡΠΈΠΌΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π·Π° Π²ΡΠΈΡΠΊΠΈ
- Health Check: Π½Π° ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΎΠ±ΡΡΠ½Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°
ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΡΠ°Π±ΠΎΡΠ΅ΡΠΈΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π΅ ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³. ΠΠ° Π±ΠΈΠ·Π½Π΅ΡΠ° Π½Π΅ ΠΌΡ ΠΏΡΠΊΠ° Π΄Π°Π»ΠΈ Π³Π»Π°Π²Π½Π°ΡΠ° ΡΡΡΠ°Π½ΠΈΡΠ° Π½Π° ΠΎΠ½Π»Π°ΠΉΠ½ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° Π΅ Π΄ΠΎΡΡΡΠΏΠ½Π°, Π°ΠΊΠΎ ΡΠΎΡΠΌΠ°ΡΠ° Π·Π° ΠΏΠ»Π°ΡΠ°Π½Π΅ ΠΈΠ·Π΄Π°Π²Π° Π³ΡΠ΅ΡΠΊΠ°.
Π Π½Π°ΡΡΡΠΎΠΉΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΡΡΠ°ΡΡΠ²Π°Ρ Π½Π°ΡΠ°Π²Π½ΠΎ. ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ Π·Π°Π΄Π°ΡΠΈΡΠ΅ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π»Π΅ΠΆΠ°Ρ Π½Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅. ΠΠ°ΡΠΈΡΡ ΠΊΡΡΡ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΊΠ°ΠΊΠ²Π° ΡΠΎΠ»Ρ ΠΈΠ³ΡΠ°ΡΡ Π² ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³. ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Ρ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π½Π° Southbridge. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π·Π°Π³ΡΠ±ΠΈ, ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Π½ΠΈ ΠΎΡ ΡΡΠΈΠ²ΠΎΠ²Π΅ ΠΈ Π·Π°Π±Π°Π²ΡΠ½ΠΈΡ Π½Π° ΡΠ°ΠΉΡΠ° ΠΈΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ, Π±ΡΡΠ·ΠΎ ΡΠ΅ Π½Π°ΠΌΠ°Π»Π΅Π΅.
ΠΠΎΠ½ΡΡ ΡΠ°Π·Π΄Π΅Π»Π°: Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ΡΡ ΡΡΠΎΠ±ΡΠ°Π²Π°, ΡΠ΅ Π΅ ΠΏΠΎΡΡΡΠΏΠΈΠ»Π° Π½Π°ΡΠΎΠ²Π°ΡΠ΅Π½ΠΎΡΡ Π½Π° ΡΠ°ΠΉΡΠ°, ΠΈ ΡΠΊΠ°Π»ΠΈΡΡΠ΅ΠΌΠΎΡΡΡΠ° Π½Π° ΡΠ΅Π± ΡΡΡΠ²ΡΡΠΈΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ.
ΠΠΎΠ³ΠΈΡΠ°Π½Π΅
ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π³ΡΠ΅ΡΠΊΠ° Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ Π΅, ΡΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π³ΠΈ Π³Π»Π΅Π΄Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π½Π° ΡΡΡΠ²ΡΡΠΈΡΠ΅. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ Π΅Π΄ΠΈΠ½ ΡΡΡΠ²ΡΡ, ΡΠΎΠ²Π° Π΅ Π±Π°Π²Π½ΠΎ. Π’ΠΎΠ²Π° Π΅ Π½Π΅ΡΠΈΠ³ΡΡΠ½ΠΎ: ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ Π²Π»ΠΈΠ·Π° Π½Π° ΡΡΡΠ²ΡΡ, ΠΊΡΠ΄Π΅ΡΠΎ Π½Π΅ Π±ΠΈΠ²Π° Π΄Π° Π±ΡΠ΄Π΅.
DevOps ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΡΡΠ±ΠΈΡΠ°Π½Π΅, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ Π°Π½Π°Π»ΠΈΡΠΈΠΊΠ° Π½Π° Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅.
Π’Π΅ΠΌΠ° β10: ΠΠΎΠ³ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Ρ ELK
- ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π° elastic (ΡΡΡΡΠ΅Π½Π΅, Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, ΠΎΡΠΎΠ±Π΅Π½ΠΎΡΡΠΈ Π½Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅, Π³ΡΠ²ΠΊΠ°Π²ΠΎΡΡ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅)
- ΠΡΠ΅Π³Π»Π΅Π΄ Π½Π° kibana (ΠΎΡΠ½ΠΎΠ²Π½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π΅Π·ΠΈΠΊ Π½Π° Π·Π°ΠΏΠΈΡΠ²Π°Π½ΠΈΡΡΠ°, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π±Π»Π°ΡΠ°, ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈ)
- ΠΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈ Π½Π° Π±Π°Π·Π° elastic ΠΈ ΡΡΡ Π½ΠΎΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
- Π‘ΡΠ±ΠΈΡΠ°ΠΌΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π² APM (ΡΡΠ°ΡΠΈΡΠΎΠ²ΠΊΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ)
- ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ: ΠΡΠ΅Π³Π»Π΅Π΄ Π½Π° Π½ΠΎΠ²ΠΈΡ ΠΏΡΠΎΠ΄ΡΠΊΡ - SIEM
ΠΠ½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ ΠΏΡΠΎΡΡ ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° Π°Π½Π°Π»ΠΈΠ·, Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°.
SRE
Π ΡΡΠΈΠ³Π°ΠΌΠ΅ Π΄ΠΎ ΡΠ΅ΠΌΠ°ΡΠ°, ΠΊΠΎΡΡΠΎ Southbridge Π΅Π΄Π²Π° ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π° ΠΈ ΠΏΠΎΡΠ°Π΄ΠΈ ΠΊΠΎΡΡΠΎ Π΄ΡΡΠ³ΠΈ Π»Π΅ΠΊΡΠΎΡΠΈ ΠΈΡΠΊΠ°Ρ Π΄Π° ΠΎΡΡΠ°Π½Π°Ρ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π΄Π΅Π½ Π½Π° Π‘Π»ΡΡΠΌΠ°. Π Π°Π΄Π²Π°ΠΌΠ΅ ΡΠ΅, ΡΠ΅ ΠΠ²Π°Π½ ΠΡΡΠ³Π»ΠΎΠ² ΠΎΡ Booking.com ΡΠ΅ ΡΡΠ³Π»Π°ΡΠΈ Π΄Π° Ρ ΠΏΡΠΎΡΠ΅ΡΠ΅.
ΠΡΠΎΠ΅ΠΊΡΡΡ ΠΆΠΈΠ²Π΅Π΅ Π² ΡΠ΅Π°Π»Π½ΠΈΡ ΡΠ²ΡΡ, ΠΊΡΠ΄Π΅ΡΠΎ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡΡΠ° Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ Π΅ Π°Π±ΡΠΎΠ»ΡΡΠ½Π°, Π° Π²ΡΡΠΊΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΡΡΠ²Π° ΠΏΠ°ΡΠΈ.
ΠΠ°ΠΊΠ²ΠΎ Π΅ SLA Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° ΡΠ»ΠΎΠΆΠ΅Π½ ΠΏΡΠΎΠ΅ΠΊΡ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ Π΄Π° ΠΎΡΠ΅Π½ΠΈΠΌ, ΡΠ΅ ΡΠ°ΠΉΡΡΡ Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½, Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡΠ° ΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π°Ρ ΡΡΡ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΠ΅. ΠΠ°ΠΊΠ²ΠΈ ΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠΈΡΠ΅ Π½Π° SLA, ΠΎΡΠΊΡΠ΄Π΅ Π΄Π° Π³ΠΈ Π²Π·Π΅ΠΌΠ΅ΠΌ, ΠΊΠ°ΠΊ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠΈΠΌ?
ΠΠ°ΠΊ Π΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ SLA? ΠΠ°ΠΊ Π΄Π° Π³ΠΈ ΡΠΏΠ°Π·Π²Π°ΠΌΠ΅?
Π’Π΅ΠΌΠ° β11: SRE
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° SLA, SLO, Error Budget ΠΈ Π΄ΡΡΠ³ΠΈ ΡΡΡΠ°ΡΠ½ΠΈ ΡΠ΅ΡΠΌΠΈΠ½ΠΈ ΠΎΡ ΡΠ²Π΅ΡΠ° Π½Π° SRE
SRE: ΠΡΠ°ΠΊΡΠΈΠΊΠ° Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° SLI ΠΈ SLO
SRE: ΠΡΠ°ΠΊΡΠΈΠΊΠ° Π½Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° Error Budget
SRE: Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ΅ΠΊΡΡΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ΅Π½ΠΎΡΡ (apigateway, service mesh, circuit breakers)
ΠΠΈΠ·Π½Π΅ΡΡΡ ΠΈΡΠΊΠ° SRE. ΠΠΎΠ½Π΅ Π½Π° Π½Π°ΠΉ-ΠΏΡΠΎΡΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ: Π΄Π° Π²Π·Π΅ΠΌΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π΅Π½ ΡΡΡΠ²ΡΡ ΠΈΠ»ΠΈ Π΄Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΠΈ ΠΎΡ Π±Π΅ΠΊΡΠΏ? ΠΠ΄Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ ΠΊΠ»ΡΡΡΠ΅Ρ? ΠΠ° Π½Π°ΡΡΡΠΎΠΈ Π·Π°ΡΠΈΡΠ° ΠΎΡ DDoS ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ»ΠΈ ΡΠ°ΠΌΠΎ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° Π°ΡΠ°ΠΊΠ°?
ΠΠΈΡΠ΅ΠΊΡΠΎΡΡΡ Π½ΡΠΌΠ° Π΄Π° ΡΠ΅ Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΠΈ Ρ ΠΎΠ±ΡΡΠ½Π΅Π½ΠΈΠ΅ΡΠΎ, ΡΠ΅ "ΡΠ°ΠΉΡΡΡ ΡΠ°Π±ΠΎΡΠΈ", ΠΊΠΎΠ³Π°ΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΡ ΠΌΡ ΡΠ΅ ΠΎΠ±Π°ΠΆΠ΄Π° ΠΈ ΡΡΠΎΠ±ΡΠ°Π²Π°, ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΠ° Π·Π° ΠΏΠΎΡΡΡΠΊΠ° Π½Π΅ ΡΠ΅ ΠΎΡΠ²Π°ΡΡ.
ΠΠ°ΡΠΎΠ²Π° Π΅ Π²Π°ΠΆΠ½ΠΎ DevOps ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡΡ ΠΏΠΎΠ½Π΅ ΠΏΠΎΠ²ΡΡΡ Π½ΠΎΡΡΠ½ΠΎ Π΄Π° ΡΠ°Π·Π±ΠΈΡΠ° SRE, Π·Π° Π΄Π° ΠΌΠΎΠΆΠ΅ Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎ Π΄Π° ΠΎΠ±ΡΡΠ²Π° Ρ Π±ΠΈΠ·Π½Π΅ΡΠ° Π·Π° Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ Π½ΡΠΆΠ΄ΠΈ.
Π Π΅Π·ΡΠΌΠ΅
ΠΡΠ΅Π· Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΡΠ΅ ΡΠ΅ Π½Π°ΡΡΠ°Ρ:
β ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° ΡΠ°Π±ΠΎΡΡΡ Ρ Git;
β Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Ρ Π»ΠΎΠΊΠ°Π»Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°;
β Π΄Π° Π½Π°ΡΡΡΠΎΡΡ (Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ) ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ (ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ) CI/CD;
β Π΄Π° ΡΠ°Π±ΠΎΡΡΡ Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΊΠ°ΡΠΎ ΠΊΠΎΠ΄;
β Π΄Π° ΡΠ΅ΡΡΠ²Π°Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°;
β Π΄Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ;
β Π΄Π° Π½Π°ΡΡΡΠΎΡΡ Π»ΠΎΠ³Π²Π°Π½Π΅ΡΠΎ;
β Π΄Π° ΡΠ°Π·Π±ΠΈΡΠ°Ρ ΠΈ Π² ΠΈΠ΄Π΅Π°Π»Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉ β Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ SRE.
ΠΠ° Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΈΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ β Ρ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄ habrapost ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅ 15% ΠΎΡΡΡΡΠΏΠΊΠ°.
ΠΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠΎΡΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΡΠΌΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ. Π’Π°ΠΊΠ° ΡΠ΅ Π²ΡΠ΅ΠΊΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊ ΡΠ»Π΅Π΄ Π·Π°Π²ΡΡΡΠ°Π½Π΅ΡΠΎ ΠΎΡ Π‘Π»ΡΡΠΌΠ° ΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π²Π΅Π΄Π΅ ΡΠ²ΠΎΡΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π½Π° ΡΠ»Π΅Π΄Π²Π°ΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ Π½Π° DevOps.
ΠΠ° Π±ΠΈΠ·Π½Π΅ΡΠ° ΡΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π·Ρ ΠΎΠ΄ΠΈΡΠ΅ Π·Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° Π½Π΅ΠΈΠ·ΠΏΡΠ°Π²Π½ΠΎΡΡΠΈ, ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡΡΠ°, ΠΏΠΎ-Π±ΡΡΠ·ΠΎ Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠΈ ΠΈ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π±ΡΠ³ΠΎΠ²Π΅.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
