ΠΠΈΠ½Π°Π»Π°ΡΠ° ΡΠ΅Π΄ΠΌΠΈΡΠ° Π€ΠΎΠ½Π΄Π°ΡΠΈΡ Linux ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ²ΠΎΡΡΠ° ΡΡΠ΅ΡΠ° Π½Π° Π²ΠΈΡΠΎΠΊΠΎ ΡΠ°Π²Π½ΠΈΡΠ΅ Π·Π° Π»ΠΈΠ΄Π΅ΡΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄
ΠΠ° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ Π·Π°ΡΠΎ ΡΠ°ΠΊΠΈΠ²Π° ΡΠΎΠ½Π΄Π°ΡΠΈΠΈ ΡΠ° ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΠΏΠΎΠ΄ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΡΠ°-ΠΌΠ°ΠΉΠΊΠ° Linux Foundation, ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ ΠΏΠΎ-ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ - CNCF (Cloud Native Computing Foundation). Π’ΠΎΠ·ΠΈ ΡΠΎΠ½Π΄ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ ΠΏΡΠ΅Π· 2015 Π³. ΠΈ ΠΎΡΡΠΎΠ³Π°Π²Π° ΠΏΡΠΈΠ΅ Π² ΡΠ΅Π΄ΠΈΡΠΈΡΠ΅ ΡΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΠΈΡΠΎ Π½Π°ΠΈΡΡΠΈΠ½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡ ΠΏΠ΅ΠΉΠ·Π°ΠΆ Π½Π° ΠΎΠ±Π»Π°ΡΠ½Π°ΡΠ° ΠΠ’ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°: Kubernetes, containerd, Prometheus ΠΈ Π΄Ρ.
Π‘Π°ΠΌΠ°ΡΠ° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π΄Π΅ΠΉΡΡΠ²Π° ΠΊΠ°ΡΠΎ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°, Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΊΠΎΡΡΠΎ ΡΠ΅Π·ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΈ ΡΠ°Π·Π²ΠΈΠ²Π°Ρ Π² ΠΈΠ½ΡΠ΅ΡΠ΅Ρ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ Π½Π° ΠΏΠ°Π·Π°ΡΠ°. ΠΠ° ΡΠ°Π·ΠΈ ΡΠ΅Π» Π² CNCF ΡΠ° ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈ ΠΈ ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³ΠΎΠ²ΠΈ ΠΊΠΎΠΌΠΈΡΠ΅ΡΠΈ, ΠΏΡΠΈΠ΅ΡΠΈ ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠΈ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° (Π°ΠΊΠΎ ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π°ΡΠ΅ ΠΎΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ, ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π°ΠΌΠ΅ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅, Π½Π°ΠΏΡ.
Π‘Π»Π΅Π΄ ΡΠΎΠ·ΠΈ ΡΡΠΏΠ΅Ρ (Π² ΠΊΡΠ°Ρ Π½Π° ΠΊΡΠ°ΠΈΡΠ°ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Π½Π° CNCF Π²Π΅ΡΠ΅ ΡΠ° ΡΡΠ°Π½Π°Π»ΠΈ ΡΠ°ΡΡ ΠΎΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²ΠΈΠ΅ΡΠΎ Π½Π° ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ Π½Π° DevOps), ΠΎΠ±ΡΠΈ ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΠΈ Π² ΠΠ’ ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ²Π»Π΅Π½ΠΈΡ Π² ΡΠ²Π΅ΡΠ° Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄, The Linux Foundation ΡΠ΅ΡΠΈ Π΄Π° βΠΎΠΊΡΠΏΠΈΡΠ°β (ΠΈΠ»ΠΈ Π±ΠΈ Π±ΠΈΠ»ΠΎ ΠΏΠΎ-ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅ βΠ½Π°ΡΡΡΡΠ°Π²Π°ΠΌβ) Π½ΠΎΠ²Π° Π½ΠΈΡΠ°:
βΠ€ΠΎΠ½Π΄Π°ΡΠΈΡΡΠ° Π·Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠ° Π΄ΠΎΡΡΠ°Π²ΠΊΠ° (CDF) ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π΅ΡΡΡΠ°Π»Π΅Π½ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° Π΄ΠΎΠΌ Π·Π° ΠΊΡΠΈΡΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½ΠΈ Π½Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠ° Π΄ΠΎΡΡΠ°Π²ΠΊΠ° ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΠΊΠΎΡΡΠ²Π°Ρ ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ. CDF ΡΠ΅ ΡΠ»Π΅ΡΠ½ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΡΠΎ Π½Π° Π²ΠΎΠ΄Π΅ΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΠΊΡΠ°ΠΉΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ ΠΎΡ ΠΈΠ½Π΄ΡΡΡΡΠΈΡΡΠ°, ΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠΈΠ·ΠΈΡΠ° CI/CD ΠΈ DevOps ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈΡΠ΅, ΡΠ΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠ° Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ, ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΈ ΠΎΠ±ΡΡΠΈΡΠ΅Π»Π½ΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π½Π° Π΅ΠΊΠΈΠΏΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠΎΡΡΡΠ΅Ρ ΠΎΡ Π²ΡΡΠΊΠ° ΡΠΎΡΠΊΠ° Π½Π° ΡΠ²Π΅ΡΠ° Π΄Π° ΠΏΡΠΈΠ»Π°Π³Π°Ρ CI /CD Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ." .
ΠΠ΄Π΅Ρ
ΠΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΡΠ΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡ CDF Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ°
- ... Π²ΡΡΠ²Π° Π² ΡΠΈΠ»Π°ΡΠ° Π½Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎΡΠΎ Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ ΠΈ ΠΊΠ°ΠΊ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΈ Π΅ΠΊΠΈΠΏΠΈΡΠ΅ Π΄Π° ΠΏΡΡΠΊΠ°Ρ ΠΏΠΎ-ΡΠ΅ΡΡΠΎ Π²ΠΈΡΠΎΠΊΠΎΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½ ΡΠΎΡΡΡΠ΅Ρ;
- β¦ Π²ΡΡΠ²Π° Π² ΡΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π°Π΅Π΄Π½ΠΎ Π² ΡΠ΅Π»ΠΈΡ ΡΠΈΠΊΡΠ» Π½Π° Π΄ΠΎΡΡΠ°Π²ΠΊΠ° Π½Π° ΡΠΎΡΡΡΠ΅Ρ;
- ... ΠΊΡΠ»ΡΠΈΠ²ΠΈΡΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΈ ΠΎΡ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈΡΠ΅ ΡΡΠ΅Π· ΡΡΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ Π²Π·Π°ΠΈΠΌΠ½Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ;
- ... Π½Π°ΡΡΡΡΠ°Π²Π° ΠΈ Π½Π°ΡΡΡΡΠ°Π²Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΡΠ²Π°ΡΠΈΡΠ΅ Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠ° Π΄ΠΎΡΡΠ°Π²ΠΊΠ° Π΄Π° ΡΠΈ ΡΡΡΡΡΠ΄Π½ΠΈΡΠ°Ρ, ΡΠΏΠΎΠ΄Π΅Π»ΡΡ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Ρ ΡΠ²ΠΎΠΈΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ.
Π£ΡΠ°ΡΡΠ½ΠΈΡΠΈ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ
ΠΠΎ ΠΊΡΠ°ΡΠΈΠ²ΠΈΡΠ΅ Π΄ΡΠΌΠΈ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ³ΠΎΠ²ΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ Π²ΠΈΠ½Π°Π³ΠΈ ΡΡΠ²ΠΏΠ°Π΄Π°Ρ Ρ ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎΡΡ. Π Π² ΡΠΎΠ·ΠΈ ΡΠΌΠΈΡΡΠ» ΠΏΡΡΠ²ΠΎΡΠΎ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΠ΅ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ ΠΎΡ ΡΠΎΠ²Π° ΠΊΠΎΡ ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈΡΠ΅ Ρ Π΅ ΡΡΠ·Π΄Π°Π»Π° ΠΈ ΠΊΠΎΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΡΠ° ΡΡΠ°Π½Π°Π»ΠΈ Π½Π΅ΠΈΠ½ βΠΏΡΡΠ²ΠΎΡΠΎΠ΄Π΅Π½β.
ΠΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΡΠ»Π΅Π½ΠΎΠ²Π΅ Π½Π° CDF ΡΠ°
Π£ΡΠ°ΡΡΠ½ΠΈΡΠΈΡΠ΅ Π² CDF Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΈ ΠΊΡΠ°ΠΉΠ½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π½Π° Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈ β CNCF ΠΈΠΌΠ° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ, ΠΊΡΠ΄Π΅ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ eBay, Pinterest, Twitter, Wikimedia ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ. Π ΡΠ»ΡΡΠ°Ρ Ρ Π½ΠΎΠ²ΠΈΡ ΡΠΎΠ½Π΄ Π·Π°ΡΠ΅Π³Π° ΠΈΠΌΠ° ΡΠ°ΠΌΠΎ 15 ΡΠ°ΠΊΠΈΠ²Π° ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ, Π½ΠΎ ΡΡΠ΅Π΄ ΡΡΡ
Π²Π΅ΡΠ΅ ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΈ ΠΈ Π΄ΠΎΠ±ΡΠ΅ ΠΏΠΎΠ·Π½Π°ΡΠΈ ΠΈΠΌΠ΅Π½Π°: Autodesk, GitLab, Puppet, Rancher, Red Hat, SAP ΠΈ Π±ΡΠΊΠ²Π°Π»Π½ΠΎ ΡΠ΅ ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΠΈΡ
Π°
Π‘Π΅Π³Π°, ΠΌΠΎΠΆΠ΅ Π±ΠΈ, Π·Π° Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΎΡΠΎ - Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ΅, Π·Π° ΠΊΠΎΠΈΡΠΎ Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅Π½Π° Π³ΡΠΈΠΆΠ°ΡΠ° Π½Π° CDF. ΠΡΠΌ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΡΠ° ΡΠ΅ Π±ΡΡ Π° ΡΠ΅ΡΠΈΡΠΈ:
ΠΠΆΠ΅Π½ΠΊΠΈΠ½Ρ ΠΈ ΠΠΆΠ΅Π½ΠΊΠΈΠ½Ρ X
ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π° ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΡΡΠ³ΠΎΠ²ΡΠΊΠ° ΡΡΡΡΠΊΡΡΡΠ° Π·Π°Π΄ Jenkins Π΄Π½Π΅Ρ CloudBees, ΡΠΈΠΉΡΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡ Π΅ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΈΡΡ Π°Π²ΡΠΎΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° (Kohsuke Kawaguchi) ΠΈ ΠΊΠΎΠΉΡΠΎ ΡΡΠ°Π½Π° Π΅Π΄ΠΈΠ½ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠΎΠ½Π΄Π°ΡΠΈΡΡΠ°.
Jenkins X ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π³ΠΎΡΠΎΠ²ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° CI/CD Π·Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Kubernetes ΠΊΠ»ΡΡΡΠ΅ΡΠΈ. ΠΠ° Π΄Π° ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΡΠΎΠ²Π°, JX ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ°, Π²Π³ΡΠ°Π΄Π΅Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° GitOps, ΡΡΠ΅Π΄ΠΈ Π·Π° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π΅Π½ ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ ΠΈ Π΄ΡΡΠ³ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π½Π° Jenkins X Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° ΠΏΠΎ ΡΠ»Π΅Π΄Π½ΠΈΡ Π½Π°ΡΠΈΠ½:
ΠΡΠΎΠ΄ΡΠΊΡΠΎΠ² ΡΡΠ΅ΠΊ - Jenkins, Knative Build, Prow, Skaffold ΠΈ Helm. ΠΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½ΠΈΠ΅
ΡΠΏΠΈΠ½Π°ΡΠ΅Ρ
ΠΠ»ΡΡΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ Π² Spinnaker Π·Π° ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΠ»ΡΠ³ΠΈΡΠ΅ ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠ»ΡΡΡΠ΅ΡΠΈ ΠΈ ΡΡΡΠ²ΡΡΠ½ΠΈ Π³ΡΡΠΏΠΈ, Π° ΡΡΡ Π½Π°ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΎΡΡ Π·Π° Π²ΡΠ½ΡΠ½ΠΈΡ ΡΠ²ΡΡ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π° ΠΎΡ Π±Π°Π»Π°Π½ΡΠΈΡΠ°ΡΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ ΠΈ Π·Π°ΡΠΈΡΠ½ΠΈ ΡΡΠ΅Π½ΠΈ:
ΠΠΎΠ²Π΅ΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Spinnaker ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ Π²
ΠΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΡΡΠ΅Π΄ΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Kubernetes, OpenStack ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΠ±Π»Π°ΡΠ½ΠΈ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ (AWS EC2, GCE, GKE, GAE, Azure, Oracle Cloud Infrastructure), ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄Π° ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°ΡΠ΅ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈ ΠΈ ΡΡΠ»ΡΠ³ΠΈ:
- Ρ CI ΡΠΈΡΡΠ΅ΠΌΠΈ (Jenkins, Travis CI) Π² ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ΠΈ;
- Ρ Datadog, Prometheus, Stackdriver ΠΈ SignalFx - Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ±ΠΈΡΠΈΡ;
- ΡΡΡ Slack, HipChat ΠΈ Twilio β Π·Π° ΠΈΠ·Π²Π΅ΡΡΠΈΡ;
- Ρ Packer, Chef ΠΈ Puppet - Π·Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ.
ΠΡΠΎ ΠΊΠ°ΠΊΠ²ΠΎ
βΠ£ΡΠΏΠ΅Ρ ΡΡ Π½Π° Spinnaker ΡΠ΅ Π΄ΡΠ»ΠΆΠΈ Π΄ΠΎ Π³ΠΎΠ»ΡΠΌΠ° ΡΡΠ΅ΠΏΠ΅Π½ Π½Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π°ΡΠ° ΠΎΠ±ΡΠ½ΠΎΡΡ ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ Ρ ΠΎΡΠ°, ΠΊΠΎΠΈΡΠΎ Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈ Π΄ΠΎΠΏΡΠΈΠ½Π°ΡΡΡ Π·Π° Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅. ΠΡΠ΅Ρ Π²ΡΡΠ»ΡΠ½Π΅ΡΠΎ Π½Π° Spinnaker ΠΊΡΠΌ CDF ΡΠ΅ ΡΠΊΡΠ΅ΠΏΠΈ ΡΠ°Π·ΠΈ ΠΎΠ±ΡΠ½ΠΎΡΡ. Π’Π°Π·ΠΈ ΡΡΡΠΏΠΊΠ° ΡΠ΅ Π½Π°ΡΡΡΡΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΈ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΈΠΈ ΠΎΡ Π΄ΡΡΠ³ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Π»ΠΈ ΠΎΡΡΡΡΠ°Π½ΠΈ. ΠΡΠ²Π°ΡΡΠ½Π΅ΡΠΎ Π½Π° Π²ΡΠ°ΡΠ°ΡΠ° Π·Π° Π½ΠΎΠ²ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ΅ Π΄ΠΎΠ½Π΅ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ Π½Π° Spinnaker, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΎΡ ΠΏΠΎΠ»Π·Π° Π·Π° Π²ΡΠΈΡΠΊΠΈ.β
Π Π²
Tekton
Π‘Π°ΠΌΠΈΡΠ΅ ΡΠ΅Π·ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ ΡΠ° ΡΠ΅ΡΡΡΡΠΈ Π² ΡΡΠΈΠ» βKubernetesβ (Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ Π² ΡΠ°ΠΌΠΈΡ K8s ΠΊΠ°ΡΠΎ CRD), ΠΊΠΎΠΈΡΠΎ Π΄Π΅ΠΉΡΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ Π³ΡΠ°Π΄ΠΈΠ²Π½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π·Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ΠΈ. ΠΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° Π΅ ΠΊΡΠ°ΡΠΊΠ° ΠΈΠ»ΡΡΡΡΠ°ΡΠΈΡ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ ΠΈΠΌ Π² ΠΊΠ»ΡΡΡΠ΅ΡΠ° K8s
ΠΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΈΡΡ ΡΡΠ΅ΠΊ, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ ΠΎΡ Tekton, Π²Π΅ΡΠ΅ ΡΠ΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΠΎΠ·Π½Π°Ρ: Jenkins, Jenkins X, Skaffold ΠΈ Knative. Google Cloud Π²ΡΡΠ²Π°, ΡΠ΅ Tekton ΡΠ΅ΡΠ°Π²Π° "ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ ΠΈ Π²ΠΎΠ΄Π΅ΡΠΈΡΠ΅ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Π·Π°Π΅Π΄Π½ΠΎ Π·Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π·Π° CI/CD."
...
ΠΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ CNCF, CDF ΡΡΠ·Π΄Π°Π΄Π΅ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈ ΠΊΠΎΠΌΠΈΡΠ΅Ρ (Technical Oversight Committee, TOC), ΡΠΈΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ½ΠΎΡΡΠΈ Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π²ΡΠΏΡΠΎΡΠΈ (ΠΈ Π²Π·Π΅ΠΌΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ) ΠΎΡΠ½ΠΎΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Π²ΡΠ² ΡΠΎΠ½Π΄Π°. ΠΡΡΠ³Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠ°ΠΌΠ°ΡΠ° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π½Π°
ΠΠ΅ΠΊΠ° Π·Π°Π²ΡΡΡΠΈΠΌ Ρ ΡΠΈΡΠ°Ρ ΠΎΡ
βΠ‘Π΅Π³Π°, ΠΊΠ°ΡΠΎ Π΅Π΄Π½Π° ΠΎΡ Π½ΠΎΠ²ΠΎΡΡΠΎΡΠΌΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π½Π° Continuous Delivery Foundation, Π½ΠΈΠ΅ ΡΠ΅ ΠΈΠ·Π΄ΠΈΠ³Π½Π΅ΠΌ Π½Π°ΡΠΈΡ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½Ρ [Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ, ΠΊΠΎΡΡΠΎ Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π½Π° Π² ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π΄ΡΡΠ³ΠΈ CI/CD ΡΠ΅ΡΠ΅Π½ΠΈΡ] Π½Π° ΡΠ»Π΅Π΄Π²Π°ΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ. Π’Π°Π·ΠΈ Π½ΠΎΠ²Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π° Π±ΡΠ΄Π΅ΡΠΈΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠΈ Π·Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠ° Π΄ΠΎΡΡΠ°Π²ΠΊΠ°, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΡΠΊΠΎΡΡΡ ΡΠΈΠΊΡΠ»Π° Π½Π° ΠΏΡΡΠΊΠ°Π½Π΅ Π½Π° ΡΠΎΡΡΡΠ΅Ρ ΡΡΠ΅Π· ΡΡΠ²ΠΌΠ΅ΡΡΠ΅Π½ ΠΈ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. Π‘ ΠΏΡΠΈΠ΅ΠΌΠ°Π½Π΅ΡΠΎ Π½Π° Jenkins, Jenkins X, Spinnaker ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ»ΠΎΡΠΎ Π½Π° ΡΠ°Π·ΠΈ ΡΠΎΠ½Π΄Π°ΡΠΈΡ, Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ ΡΠ²Π΅ΡΠ»ΠΎ Π±ΡΠ΄Π΅ΡΠ΅ Π·Π° CI/CD!β
PS
ΠΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΡΡΡΠΎ Π² Π½Π°ΡΠΈΡ Π±Π»ΠΎΠ³:
- Β«
Jenkins X Π²ΡΠ²Π΅Π΄Π΅Π½ Π·Π° CI/CD ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Kubernetes Β»; - Β«
CNCF ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈ Π±Π΅Π·ΠΏΠ»Π°ΡΠ΅Π½ ΠΎΠ±Π»Π°ΠΊ Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ Π·Π° DevOps/ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ Β»; - Β«
Linux Foundation ΠΏΡΠ΅Π΄ΡΡΠ°Π²Ρ Π±Π΅Π·ΠΏΠ»Π°ΡΠ΅Π½ Π²ΡΠ²Π΅ΠΆΠ΄Π°Ρ ΠΎΠ½Π»Π°ΠΉΠ½ ΠΊΡΡΡ ΠΏΠΎ Kubernetes Β»; - Β«
ΠΠ°ΠΊΠ²ΠΎ Π΅ ΠΎΠ±ΡΠΎΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ Π³ΠΎΠ»Π΅ΠΌΠΈΡΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄? ".
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com