ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡ‚ΠΈΡ‡ΠΊΠ° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π½Π° Линукс, Bottlerocket, Π΅ ΠΏΡƒΡˆΡ‚Π΅Π½Π° Π²ΠΎ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ. ΠΠ°Ρ˜Π²Π°ΠΆΠ½ΠΎΡ‚ΠΎ Π½Π΅ΡˆΡ‚ΠΎ Π·Π° Π½Π΅Π³ΠΎ

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡ‚ΠΈΡ‡ΠΊΠ° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π½Π° Линукс, Bottlerocket, Π΅ ΠΏΡƒΡˆΡ‚Π΅Π½Π° Π²ΠΎ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ. ΠΠ°Ρ˜Π²Π°ΠΆΠ½ΠΎΡ‚ΠΎ Π½Π΅ΡˆΡ‚ΠΎ Π·Π° Π½Π΅Π³ΠΎ

ΠšΠΎΠΌΠΏΠ°Π½ΠΈΡ˜Π°Ρ‚Π° Амазон објави Π·Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠšΠΎΡˆΠ½ΠΈΡ†Π° β€” ΡΠΏΠ΅Ρ†ΠΈΡ˜Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π·Π° водСњС ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ ΠΈ Сфикасно ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°ΡšΠ΅ со Π½ΠΈΠ².

Bottlerocket (ΠΏΠ°Ρ‚Π΅ΠΌ, ΠΈΠΌΠ΅Ρ‚ΠΎ Π΄Π°Π΄Π΅Π½ΠΎ Π½Π° ΠΌΠ°Π»ΠΈΡ‚Π΅ домашни Ρ€Π°ΠΊΠ΅Ρ‚ΠΈ со Ρ†Ρ€Π½ ΠΏΡ€Π°Π²) Π½Π΅ Π΅ ΠΏΡ€Π²ΠΈΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ систСм Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ, Π½ΠΎ Π²Π΅Ρ€ΠΎΡ˜Π°Ρ‚Π½ΠΎ Π΅ Π΄Π΅ΠΊΠ° ќС станС ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСт Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° стандардната ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ˜Π° со услугитС AWS. Иако систСмот Π΅ фокусиран Π½Π° ΠΎΠ±Π»Π°ΠΊΠΎΡ‚ Амазон, ΠΊΠΎΠ΄ΠΎΡ‚ со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° сС ΠΈΠ·Π³Ρ€Π°Π΄ΠΈ насСкадС: Π»ΠΎΠΊΠ°Π»Π½ΠΎ Π½Π° сСрвСр, Π½Π° Raspberry Pi, Π²ΠΎ кој Π±ΠΈΠ»ΠΎ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π΅Π½ ΠΎΠ±Π»Π°ΠΊ, ΠΏΠ° Π΄ΡƒΡ€ΠΈ ΠΈ Π²ΠΎ срСдина Π±Π΅Π· ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ.

Ова Π΅ цСлосно Π΄ΠΎΡΡ‚ΠΎΡ˜Π½Π° Π·Π°ΠΌΠ΅Π½Π° Π·Π° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π°Ρ‚Π° CoreOS ΡˆΡ‚ΠΎ ја Π·Π°ΠΊΠΎΠΏΠ° Red Hat.

Π’ΡΡƒΡˆΠ½ΠΎΡΡ‚, ΠΎΠ΄Π΄Π΅Π»ΠΎΡ‚ Π·Π° Π²Π΅Π±-услуги Π½Π° Amazon вСќС Π³ΠΎ ΠΈΠΌΠ° Amazon Linux, кој Π½Π΅ΠΎΠ΄Π°ΠΌΠ½Π° ΠΈΠ·Π»Π΅Π·Π΅ Π²ΠΎ ΡΠ²ΠΎΡ˜Π°Ρ‚Π° Π²Ρ‚ΠΎΡ€Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°: Ρ‚ΠΎΠ° Π΅ Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π·Π° ΠΎΠΏΡˆΡ‚Π° Π½Π°ΠΌΠ΅Π½Π° ΡˆΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π°Π±ΠΎΡ‚ΠΈ Π²ΠΎ ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ Docker ΠΈΠ»ΠΈ со Linux KVM, Microsoft Hyper-V ΠΈ VMware. ESXi Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ΠΈ. Вој бСшС ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° ΠΎΠ±Π»Π°ΠΊΠΎΡ‚ AWS, Π½ΠΎ со ΠΎΠ±Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Bottlerocket, ситС сС ΠΎΡ…Ρ€Π°Π±Ρ€ΡƒΠ²Π°Π°Ρ‚ Π΄Π° сС Π½Π°Π΄ΠΎΠΏΠΎΠ»Π½Π°Ρ‚ Π½Π° Π½ΠΎΠ² систСм кој Π΅ ΠΏΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½, ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ ΠΈ користи ΠΏΠΎΠΌΠ°Π»ΠΊΡƒ рСсурси.

AWS Π³ΠΎ објави Bottlerocket Π²ΠΎ ΠΌΠ°Ρ€Ρ‚ 2020 Π³ΠΎΠ΄ΠΈΠ½Π°. Π’Π°Π° вСднаш ΠΏΡ€ΠΈΠ·Π½Π° Π΄Π΅ΠΊΠ° ΠΎΠ²Π° Π½Π΅ Π΅ ΠΏΡ€Π²ΠΈΠΎΡ‚ β€žLinux Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈβ€œ, Π½Π°Π²Π΅Π΄ΡƒΠ²Π°Ρ˜ΡœΠΈ Π³ΠΈ CoreOS, Rancher OS ΠΈ Project Atomic ΠΊΠ°ΠΊΠΎ ΠΈΠ·Π²ΠΎΡ€ΠΈ Π½Π° ΠΈΠ½ΡΠΏΠΈΡ€Π°Ρ†ΠΈΡ˜Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ напишаа Π΄Π΅ΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈΠΎΡ‚ систСм Π΅ β€žΡ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Π»Π΅ΠΊΡ†ΠΈΠΈΡ‚Π΅ ΡˆΡ‚ΠΎ Π³ΠΈ Π½Π°ΡƒΡ‡ΠΈΠ²ΠΌΠ΅ ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π΅ΡšΠ΅Ρ‚ΠΎ Π½Π° производствСнитС услуги Π½Π° скалата Π½Π° Амазон Π΄ΠΎΠ»Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅, ΠΈ искуството ΡˆΡ‚ΠΎ Π³ΠΎ стСкнавмС Π²ΠΎ послСднитС ΡˆΠ΅ΡΡ‚ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π·Π° Ρ‚ΠΎΠ° ΠΊΠ°ΠΊΠΎ Π΄Π° ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°ΠΌΠ΅ со ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅β€œ.

ЕкстрСмСн ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΠ·Π°ΠΌ

Линукс Π΅ лишСн ΠΎΠ΄ сè ΡˆΡ‚ΠΎ Π½Π΅ Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ Π·Π° Π΄Π° сС стартуваат ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅. Овој дизајн, спорСд ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ˜Π°Ρ‚Π°, ја Π½Π°ΠΌΠ°Π»ΡƒΠ²Π° ΠΏΠΎΠ²Ρ€ΡˆΠΈΠ½Π°Ρ‚Π° Π½Π° Π½Π°ΠΏΠ°Π΄ΠΎΡ‚.

Ова Π·Π½Π°Ρ‡ΠΈ Π΄Π΅ΠΊΠ° Π½Π° основниот систСм сС инсталирани ΠΏΠΎΠΌΠ°Π»ΠΊΡƒ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, ΡˆΡ‚ΠΎ Π³ΠΎ олСснува ΠΎΠ΄Ρ€ΠΆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ ΠΈ Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ОБ, Π° исто Ρ‚Π°ΠΊΠ° ја Π½Π°ΠΌΠ°Π»ΡƒΠ²Π° Π²Π΅Ρ€ΠΎΡ˜Π°Ρ‚Π½ΠΎΡΡ‚Π° Π·Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ зависности, Π½Π°ΠΌΠ°Π»ΡƒΠ²Π°Ρ˜ΡœΠΈ ја ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° рСсурситС. Π’ΠΎ основа, сè ΠΎΠ²Π΄Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π° Π²ΠΎ посСбни ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ, Π° основниот систСм Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½ΠΎ Π³ΠΎΠ».

Амазон, исто Ρ‚Π°ΠΊΠ°, Π³ΠΈ отстрани ситС школки ΠΈ ΠΏΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΈ, Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π°Ρ˜ΡœΠΈ Π³ΠΎ Ρ€ΠΈΠ·ΠΈΠΊΠΎΡ‚ Π΄Π° Π±ΠΈΠ΄Π°Ρ‚ искористСни ΠΈΠ»ΠΈ корисницитС ΡΠ»ΡƒΡ‡Π°Ρ˜Π½ΠΎ Π΄Π° Π³ΠΈ Π·Π³ΠΎΠ»Π΅ΠΌΠ°Ρ‚ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡ‚Π΅. Π—Π°Ρ€Π°Π΄ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΠ·ΠΌΠΎΡ‚ ΠΈ бСзбСдноста, основната слика Π½Π΅ Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½Π° школка, SSH сСрвСр ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€Π°Π½ΠΈ Ρ˜Π°Π·ΠΈΡ†ΠΈ ΠΊΠ°ΠΊΠΎ Python. АдминистраторскитС Π°Π»Π°Ρ‚ΠΊΠΈ сС смСстСни Π²ΠΎ посСбСн ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ Π·Π° услуги, кој стандардно Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½.

БистСмот сС ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π° Π½Π° Π΄Π²Π° Π½Π°Ρ‡ΠΈΠ½Π°: ΠΏΡ€Π΅ΠΊΡƒ API ΠΈ ΠΎΡ€ΠΊΠ΅ΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π°.

НамСсто ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ кој Π°ΠΆΡƒΡ€ΠΈΡ€Π° ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅Ρ‡Π½ΠΈ ΠΏΠ°Ρ€Ρ‡ΠΈΡšΠ° софтвСр, Bottlerocket ΠΏΡ€Π΅Π·Π΅ΠΌΠ° цСлосна слика ΠΎΠ΄ Π΄Π°Ρ‚ΠΎΡ‚Π΅Ρ‡Π΅Π½ систСм ΠΈ сС рСстартира Π²ΠΎ Π½Π΅Π°. Ако ΠΎΠΏΡ‚ΠΎΠ²Π°Ρ€ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π΅ успСС, Ρ‚ΠΎΡ˜ автоматски сС Π²Ρ€Π°ΡœΠ° Π½Π°Π·Π°Π΄, Π° нСуспСхот Π½Π° ΠΎΠ±Π΅ΠΌΠΎΡ‚ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ° Ρ€Π°Ρ‡Π½ΠΎ Π²Ρ€Π°ΡœΠ°ΡšΠ΅ (Π½Π°Ρ€Π΅Π΄Π±Π° ΠΏΡ€Π΅ΠΊΡƒ API).

Π Π°ΠΌΠΊΠ° TUF (Π Π°ΠΌΠΊΠ°Ρ‚Π° Π·Π° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ΅) ΠΏΡ€Π΅Π·Π΅ΠΌΠ° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ° засновани Π½Π° слики Π½Π° Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΈ ΠΈΠ»ΠΈ β€žΠ½Π΅ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ΠΈβ€œ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ. Π—Π° систСмот сС распрСдСлСни Π΄Π²Π΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ Π½Π° дискот, ΠΎΠ΄ ΠΊΠΎΠΈ Π΅Π΄Π½Π°Ρ‚Π° Π³ΠΎ содрТи Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈΠΎΡ‚ систСм, Π° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ΅Ρ‚ΠΎ сС ΠΊΠΎΠΏΠΈΡ€Π° Π½Π° Π²Ρ‚ΠΎΡ€Π°Ρ‚Π°. Π’ΠΎ овој ΡΠ»ΡƒΡ‡Π°Ρ˜, root ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° Π΅ ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½Π° Π²ΠΎ Ρ€Π΅ΠΆΠΈΠΌ само Π·Π° Ρ‡ΠΈΡ‚Π°ΡšΠ΅, Π° ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° /etc ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ со Π΄Π°Ρ‚ΠΎΡ‚Π΅Ρ‡Π΅Π½ систСм Π²ΠΎ RAM ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° tmpfs ΠΈ ја Π²Ρ€Π°ΡœΠ° ΠΏΡ€Π²ΠΎΠ±ΠΈΡ‚Π½Π°Ρ‚Π° ΡΠΎΡΡ‚ΠΎΡ˜Π±Π° ΠΏΠΎ Ρ€Π΅ΡΡ‚Π°Ρ€Ρ‚ΠΈΡ€Π°ΡšΠ΅. Π”ΠΈΡ€Π΅ΠΊΡ‚Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π° Π½Π° конфигурацискитС Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π²ΠΎ /etc Π½Π΅ Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½ΠΎ: Π·Π° Π΄Π° Π³ΠΈ Π·Π°Ρ‡ΡƒΠ²Π°Ρ‚Π΅ поставкитС Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π³ΠΎ користитС API ΠΈΠ»ΠΈ Π΄Π° ја прСмСститС функционалноста Π²ΠΎ посСбни ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ.

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡ‚ΠΈΡ‡ΠΊΠ° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π½Π° Линукс, Bottlerocket, Π΅ ΠΏΡƒΡˆΡ‚Π΅Π½Π° Π²ΠΎ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ. ΠΠ°Ρ˜Π²Π°ΠΆΠ½ΠΎΡ‚ΠΎ Π½Π΅ΡˆΡ‚ΠΎ Π·Π° Π½Π΅Π³ΠΎ
Π¨Π΅ΠΌΠ° Π·Π° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° API

бСзбСдност

ΠšΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅ сС ΠΊΡ€Π΅ΠΈΡ€Π°Π½ΠΈ со стандардни ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ Π½Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° Linux - cgroups, namespaces ΠΈ seccomp ΠΈ сС користат ΠΊΠ°ΠΊΠΎ систСм Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π° Π½Π° ΠΏΡ€ΠΈΠ½ΡƒΠ΄Π΅Π½ пристап, односно Π·Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° ΠΈΠ·ΠΎΠ»Π°Ρ†ΠΈΡ˜Π° SELinux Π²ΠΎ Ρ€Π΅ΠΆΠΈΠΌ Π½Π° β€žΡΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅β€œ.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Π΄Π½ΠΎ, ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈΡ‚Π΅ сС ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΈ Π·Π° ΡΠΏΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅ рСсурси ΠΏΠΎΠΌΠ΅Ρ“Ρƒ ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅ ΠΈ ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚. Π‘ΠΈΠ½Π°Ρ€ΠΈΡ‚Π΅ сС Π·Π°ΡˆΡ‚ΠΈΡ‚Π΅Π½ΠΈ со Π·Π½Π°ΠΌΠ΅Π½Ρ†Π° Π·Π° Π΄Π° сС спрСчат корисницитС ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅ Π΄Π° Π³ΠΈ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°Π°Ρ‚. И Π°ΠΊΠΎ нСкој стигнС Π΄ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅Ρ‡Π½ΠΈΠΎΡ‚ систСм, Bottlerocket Π½ΡƒΠ΄ΠΈ Π°Π»Π°Ρ‚ΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈ слСдСњС Π½Π° Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ.

Π Π΅ΠΆΠΈΠΌΠΎΡ‚ β€žΠΏΠΎΡ‚Π²Ρ€Π΄Π΅Π½ΠΎ ΠΏΠΎΠ΄ΠΈΠ³Π°ΡšΠ΅β€œ сС ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° ΠΏΡ€Π΅ΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° ΡƒΡ€Π΅Π΄-ΠΌΠ°ΠΏΠ΅Ρ€-вСрност (dm-вСрност), кој Π³ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡƒΠ²Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ‚Π΅Ρ‚ΠΎΡ‚ Π½Π° root ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΏΠΎΠ΄ΠΈΠ³Π°ΡšΠ΅Ρ‚ΠΎ. AWS Π³ΠΎ ΠΎΠΏΠΈΡˆΡƒΠ²Π° dm-verity ΠΊΠ°ΠΊΠΎ β€žΠΊΠ°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠ° Π½Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° Linux ΡˆΡ‚ΠΎ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ‚Π΅Ρ‚ Π·Π° Π΄Π° сС спрСчи ΠΌΠ°Π»ΠΈΡ†ΠΈΠΎΠ·Π΅Π½ софтвСр Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° ОБ, ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ Π΅ ΠΏΡ€Π΅ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° основниот систСмски ΡΠΎΡ„Ρ‚Π²Π΅Ρ€β€œ.

Π’ΠΎ систСмот ΠΈΠΌΠ° ΠΈ Ρ„ΠΈΠ»Ρ‚Π΅Ρ€ eGMP (ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ BPF, Ρ€Π°Π·Π²ΠΈΠ΅Π½ ΠΎΠ΄ АлСксСј Π‘Ρ‚Π°Ρ€ΠΎΠ²ΠΎΠΈΡ‚ΠΎΠ²), ΡˆΡ‚ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° сС Π·Π°ΠΌΠ΅Π½Π°Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΠΈΡ‚Π΅ Π½Π° Ρ˜Π°Π΄Ρ€ΠΎΡ‚ΠΎ со посигурни BPF ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π·Π° систСмски ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° ниско Π½ΠΈΠ²ΠΎ.

МодСл Π½Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅
ΠšΠΎΡ€ΠΈΡΠ½ΠΈΡ‡ΠΊΠΈ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΎ
ΠšΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°
бСзбСдност
Π Π΅ΠΆΠΈΠΌ Π½Π° нСуспСх
ΠŸΡ€ΠΈΡΡ‚Π°ΠΏ Π΄ΠΎ рСсурси

ΠšΠΎΡ€ΠΈΡΠ½ΠΈΠΊ
ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊ
Π”Π°
Π±ΠΈΠ»ΠΎ
кориснички ΠΏΡ€Π°Π²Π°
ΠΏΡ€Π΅ΠΊΠΈΠ½Π΅Ρ‚Π΅ Π³ΠΎ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ
систСмски ΠΏΠΎΠ²ΠΈΠΊ, Π΄Π΅Ρ„Π΅ΠΊΡ‚

ΠˆΠ°Π΄Ρ€ΠΎΡ‚ΠΎ
ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊ
НСма
статични
НСма
ΠΏΠ°Π½ΠΈΠΊΠ° Π½Π° Ρ˜Π°Π΄Ρ€ΠΎΡ‚ΠΎ
прямой

BPF
настан
Π”Π°
JIT, CO-RE
Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°, JIT
Π³Ρ€Π΅ΡˆΠΊΠ° ΠΏΠΎΡ€Π°ΠΊΠ°
ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ ΠΏΠΎΠΌΠΎΡˆΠ½ΠΈΡ†ΠΈ

Како BPF сС Ρ€Π°Π·Π»ΠΈΠΊΡƒΠ²Π° ΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΡ‚ Π½Π° Ρ€Π΅Π΄ΠΎΠ²Π½ΠΈΠΎΡ‚ корисник ΠΈΠ»ΠΈ Π½ΠΈΠ²ΠΎΡ‚ΠΎ Π½Π° Ρ˜Π°Π΄Ρ€ΠΎΡ‚ΠΎ ΠΈΠ·Π²ΠΎΡ€

AWS Ρ€Π΅Ρ‡Π΅ Π΄Π΅ΠΊΠ° Bottlerocket β€žΠ²Ρ€Π°Π±ΠΎΡ‚ΡƒΠ²Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ ΠΌΠΎΠ΄Π΅Π» кој Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ја ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΡƒΠ²Π° бСзбСдноста со ΡΠΏΡ€Π΅Ρ‡ΡƒΠ²Π°ΡšΠ΅ Π½Π° врски со производствСни сСрвСри со административни ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈβ€œ ΠΈ Π΅ β€žΠΏΠΎΠ³ΠΎΠ΄Π΅Π½ Π·Π° Π³ΠΎΠ»Π΅ΠΌΠΈ дистрибуирани систСми ΠΊΠ°Π΄Π΅ ΡˆΡ‚ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π°Ρ‚Π° Π²Ρ€Π· сСкој ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅Ρ‡Π΅Π½ домаќин Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π°β€œ.

ОбСзбСдСн Π΅ администраторски ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ Π·Π° систСмскитС администратори. Но, AWS Π½Π΅ мисли Π΄Π΅ΠΊΠ° администраторот чСстопати ќС Ρ‚Ρ€Π΅Π±Π° Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π²ΠΎ Bottlerocket: β€žΠΠΊΡ‚ΠΎΡ‚ Π½Π° Π½Π°Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅ Π²ΠΎ посСбна инстанца Π½Π° Bottlerocket Π΅ Π½Π°ΠΌΠ΅Π½Π΅Ρ‚ Π·Π° Ρ€Π΅Ρ‚ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: Π½Π°ΠΏΡ€Π΅Π΄Π½ΠΎ Π΄Π΅Π±Π°Π³ΠΈΡ€Π°ΡšΠ΅ ΠΈ смСна Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈβ€œ. ΠΏΠΈΡˆΡƒΠ²Π°Ρ˜ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈ.

Јазик Π½Π° 'Ρ€Ρ“Π°

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° ОБ Π½Π° Π²Ρ€Π²ΠΎΡ‚ Π½Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π΅ ΠΏΡ€Π΅Ρ‚Π΅ΠΆΠ½ΠΎ напишана Π²ΠΎ Rust. Овој јазик Π΅ ΠΏΠΎ ΡΠ²ΠΎΡ˜Π°Ρ‚Π° ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π° ја Π½Π°ΠΌΠ°Π»ΡƒΠ²Π° Π²Π΅Ρ€ΠΎΡ˜Π°Ρ‚Π½ΠΎΡΡ‚Π° Π·Π° Π½Π΅Π±Π΅Π·Π±Π΅Π΄Π΅Π½ пристап Π΄ΠΎ ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π°Π˜ Π³ΠΈ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π° условитС Π·Π° Ρ‚Ρ€ΠΊΠ° ΠΏΠΎΠΌΠ΅Ρ“Ρƒ Π½ΠΈΡˆΠΊΠΈΡ‚Π΅.

Π—Π½Π°ΠΌΠΈΡšΠ°Ρ‚Π° стандардно сС ΠΏΡ€ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π°Ρ‚ ΠΏΡ€ΠΈ Π³Ρ€Π°Π΄Π΅ΡšΠ΅ --enable-default-pie ΠΈ --enable-default-ssp Π·Π° Π΄Π° сС ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ Ρ€Π°Π½Π΄ΠΎΠΌΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° адрСсниот простор Π½Π° ΠΈΠ·Π²Ρ€ΡˆΠ½ΠΈΡ‚Π΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ (ΠΈΠ·Π²Ρ€ΡˆΠ½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° нСзависна ΠΎΠ΄ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡ˜Π°, PIE) ΠΈ Π·Π°ΡˆΡ‚ΠΈΡ‚Π° ΠΎΠ΄ ΠΏΡ€Π΅Π»Π΅Π²Π°ΡšΠ΅ Π½Π° ΠΎΡŸΠ°ΠΊΠΎΡ‚.

Π—Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ C/C++, Π²ΠΊΠ»ΡƒΡ‡Π΅Π½ΠΈ сС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π·Π½Π°ΠΌΠ΅Π½Ρ†Π° -Wall, -Werror=format-security, -Wp,-D_FORTIFY_SOURCE=2, -Wp,-D_GLIBCXX_ASSERTIONS ΠΈ -fstack-clash-protection.

ΠŸΠΎΠΊΡ€Π°Ρ˜ Rust ΠΈ C/C++, Π½Π΅ΠΊΠΎΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ сС напишани Π²ΠΎ Go.

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ˜Π° со AWS услуги

Π Π°Π·Π»ΠΈΠΊΠ°Ρ‚Π° ΠΎΠ΄ сличнитС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈ систСми Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ Π΅ Π²ΠΎ Ρ‚ΠΎΠ° ΡˆΡ‚ΠΎ Amazon Π³ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΡˆΠ΅ Bottlerocket Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° AWS ΠΈ Π΄Π° сС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π° со Π΄Ρ€ΡƒΠ³ΠΈ услуги AWS.

ΠΠ°Ρ˜ΠΏΠΎΠΏΡƒΠ»Π°Ρ€Π½ΠΈΠΎΡ‚ оркСстратор Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ Π΅ Kubernetes, Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ AWS Π²ΠΎΠ²Π΅Π΄Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ˜Π° со сопствСната Enterprise Kubernetes Service (EKS). АлаткитС Π·Π° ΠΎΡ€ΠΊΠ΅ΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° Π΄ΠΎΠ°Ρ“Π°Π°Ρ‚ Π²ΠΎ посСбСн ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Π½ ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ шишС-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π°-ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€, ΡˆΡ‚ΠΎ Π΅ стандардно ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ ΠΈ ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°Π½ΠΎ ΠΏΡ€Π΅ΠΊΡƒ API ΠΈ AWS SSM Π°Π³Π΅Π½Ρ‚.

ЌС Π±ΠΈΠ΄Π΅ интСрСсно Π΄Π° сС Π²ΠΈΠ΄ΠΈ Π΄Π°Π»ΠΈ Bottlerocket ќС Π·Π°ΠΏΠΎΡ‡Π½Π΅, со ΠΎΠ³Π»Π΅Π΄ Π½Π° нСуспСхот Π½Π° Π½Π΅ΠΊΠΎΠΈ слични ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Ρ‚ΠΈΠ²ΠΈ Π²ΠΎ ΠΌΠΈΠ½Π°Ρ‚ΠΎΡ‚ΠΎ. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, PhotonOS ΠΎΠ΄ Vmware сС ΠΏΠΎΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊΠΎ Π½Π΅ΠΏΠΎΠ΄ΠΈΠ³Π½Π°Ρ‚, Π° RedHat Π³ΠΎ ΠΊΡƒΠΏΠΈ CoreOS ΠΈ Π³ΠΎ Π·Π°Ρ‚Π²ΠΎΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚, кој ваТСшС Π·Π° ΠΏΠΈΠΎΠ½Π΅Ρ€ Π²ΠΎ ΠΎΠ²Π°Π° област.

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Bottlerocket Π²ΠΎ услугитС AWS Π³ΠΎ ΠΏΡ€Π°Π²ΠΈ овој систСм СдинствСн Π½Π° свој Π½Π°Ρ‡ΠΈΠ½. Ова Π΅ ΠΌΠΎΠΆΠ΅Π±ΠΈ Π³Π»Π°Π²Π½Π°Ρ‚Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π·ΠΎΡˆΡ‚ΠΎ Π½Π΅ΠΊΠΎΠΈ корисници ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΎ ΠΏΡ€Π΅Ρ‚ΠΏΠΎΡ‡ΠΈΡ‚Π°Π°Ρ‚ Bottlerocket ΠΏΡ€Π΅Π΄ Π΄Ρ€ΡƒΠ³ΠΈ дистрибуции ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ сС CoreOS ΠΈΠ»ΠΈ Alpine. БистСмот ΠΏΡ€Π²ΠΈΡ‡Π½ΠΎ Π΅ Π΄ΠΈΠ·Π°Ρ˜Π½ΠΈΡ€Π°Π½ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ со EKS ΠΈ ECS, Π½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡƒΠ²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° Ρ‚ΠΎΠ° Π½Π΅ Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ. ΠŸΡ€Π²ΠΎ, Bottlerocket ΠΌΠΎΠΆΠ΅ склопСтС сами ΠΈ користСтС Π³ΠΎ, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊΠΎ хостирано Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π’Ρ‚ΠΎΡ€ΠΎ, корисницитС Π½Π° EKS ΠΈ ECS сè ΡƒΡˆΡ‚Π΅ ќС ΠΈΠΌΠ°Π°Ρ‚ моТност Π΄Π° Π³ΠΎ ΠΈΠ·Π±Π΅Ρ€Π°Ρ‚ ΡΠ²ΠΎΡ˜ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ систСм.

Π˜Π·Π²ΠΎΡ€Π½ΠΈΠΎΡ‚ ΠΊΠΎΠ΄ Π½Π° Bottlerocket Π΅ објавСн Π½Π° GitHub ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Ρ†Π°Ρ‚Π° Apache 2.0. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ вСќС ΠΈΠΌΠ°Π°Ρ‚ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ€ΠΈ Π½Π° ΠΈΠ·Π²Π΅ΡˆΡ‚Π°ΠΈ Π·Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ Π±Π°Ρ€Π°ΡšΠ° Π·Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π—Π° ΠΏΡ€Π°Π²Π°Ρ‚Π° Π½Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€Π°ΡšΠ΅

Π’Π”Π‘ΠΈΠ½Π° ΠΏΠΎΠ½ΡƒΠ΄ΠΈ VDS со Π΄Π½Π΅Π²Π½ΠΎ плаќањС. МоТно Π΅ Π΄Π° инсталиратС кој Π±ΠΈΠ»ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ систСм, Π²ΠΊΠ»ΡƒΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ ΠΎΠ΄ Π²Π°ΡˆΠ°Ρ‚Π° сопствСна слика. БСкој сСрвСр Π΅ ΠΏΠΎΠ²Ρ€Π·Π°Π½ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ ΠΊΠ°Π½Π°Π» ΠΎΠ΄ 500 ΠΌΠ΅Π³Π°Π±ΠΈΡ‚ΠΈ ΠΈ Π΅ Π·Π°ΡˆΡ‚ΠΈΡ‚Π΅Π½ ΠΎΠ΄ DDoS Π½Π°ΠΏΠ°Π΄ΠΈ бСсплатно!

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡ‚ΠΈΡ‡ΠΊΠ° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π½Π° Линукс, Bottlerocket, Π΅ ΠΏΡƒΡˆΡ‚Π΅Π½Π° Π²ΠΎ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π·Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ. ΠΠ°Ρ˜Π²Π°ΠΆΠ½ΠΎΡ‚ΠΎ Π½Π΅ΡˆΡ‚ΠΎ Π·Π° Π½Π΅Π³ΠΎ

Π˜Π·Π²ΠΎΡ€: www.habr.com

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€