ИздавањС Π½Π° Bottlerocket 1.1, Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° Π±Π°Π·ΠΈΡ€Π°Π½Π° Π½Π° ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ

ДоступСн выпуск Linux-дистрибутива Bottlerocket 1.1.0, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΈ участии ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Amazon для эффСктивного ΠΈ бСзопасного запуска ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ дистрибутива написаны Π½Π° языкС Rust ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ лицСнзиями MIT ΠΈ Apache 2.0. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ запуск Bottlerocket Π² кластСрах Amazon ECS ΠΈ AWS EKS Kubernetes, Π° Ρ‚Π°ΠΊΠΆΠ΅ созданиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… сборок ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… инструмСнтов оркСстровки ΠΈ runtime для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ².

Π”ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π°Ρ‚Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° атомски ΠΈ автоматски Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½Π° Π½Π΅Π΄Π΅Π»ΠΈΠ²Π° систСмска слика која Π³ΠΎ Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° Линукс ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° систСмска ΠΎΠΊΠΎΠ»ΠΈΠ½Π°, Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°Ρ˜ΡœΠΈ Π³ΠΈ само ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π΅ΠΎΠΏΡ…ΠΎΠ΄Π½ΠΈ Π·Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅. ΠžΠΊΠΎΠ»ΠΈΠ½Π°Ρ‚Π° Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° систСмски ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Glibc, Π°Π»Π°Ρ‚ΠΊΠ° Π·Π° Π³Ρ€Π°Π΄Π΅ΡšΠ΅ Buildroot, ΠΏΠΎΠ΄ΠΈΠ³Π½ΡƒΠ²Π°Ρ‡ GRUB, Π·Π»ΠΈ ΠΌΡ€Π΅ΠΆΠ΅Π½ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€, Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ‚Ρ€Π°Π΅ΡšΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π·Π° ΠΎΡ€ΠΊΠ΅ΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ Kubernetes, aws-iam-authenticator ΠΈ Amazon ECS Π°Π³Π΅Π½Ρ‚.

АлаткитС Π·Π° ΠΎΡ€ΠΊΠ΅ΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ Π΄ΠΎΠ°Ρ“Π°Π°Ρ‚ Π²ΠΎ посСбСн ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ Π·Π° ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°ΡšΠ΅ ΡˆΡ‚ΠΎ Π΅ стандардно ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΈ ΡƒΠΏΡ€Π°Π²ΡƒΠ²Π°Π½ ΠΏΡ€Π΅ΠΊΡƒ API ΠΈ AWS SSM Π°Π³Π΅Π½Ρ‚. ΠžΡΠ½ΠΎΠ²Π½Π°Ρ‚Π° слика Π½Π΅ΠΌΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½Π° школка, SSH сСрвСр ΠΈ Ρ‚ΠΎΠ»ΠΊΡƒΠ²Π°Π½ΠΈ Ρ˜Π°Π·ΠΈΡ†ΠΈ (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Π΅Π· Python ΠΈΠ»ΠΈ Perl) - административнитС Π°Π»Π°Ρ‚ΠΊΠΈ ΠΈ Π°Π»Π°Ρ‚ΠΊΠΈΡ‚Π΅ Π·Π° Π΄Π΅Π±Π°Π³ΠΈΡ€Π°ΡšΠ΅ сС смСстСни Π²ΠΎ посСбСн ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ Π·Π° услуги, кој стандардно Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½.

ΠšΠ»ΡƒΡ‡Π½Π°Ρ‚Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ сличнитС дистрибуции ΠΊΠ°ΠΊΠΎ Fedora CoreOS, CentOS/Red Hat Atomic Host Π΅ ΠΏΡ€ΠΈΠΌΠ°Ρ€Π½ΠΈΠΎΡ‚ фокус Π½Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ максимална бСзбСдност Π²ΠΎ контСкст Π½Π° Π·Π°Ρ˜Π°ΠΊΠ½ΡƒΠ²Π°ΡšΠ΅ Π½Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π°Ρ‚Π° Π½Π° систСмот ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΈ Π·Π°ΠΊΠ°Π½ΠΈ, ΡˆΡ‚ΠΎ Π³ΠΎ ΠΎΡ‚Π΅ΠΆΠ½ΡƒΠ²Π° ΠΈΡΠΊΠΎΡ€ΠΈΡΡ‚ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ранливоститС Π²ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈΠΎΡ‚ систСм ΠΈ Π·Π³ΠΎΠ»Π΅ΠΌΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ΠΈΠ·ΠΎΠ»Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅. . ΠšΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈΡ‚Π΅ сС ΠΊΡ€Π΅ΠΈΡ€Π°Π°Ρ‚ со ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° стандардни ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ Π½Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° Линукс - cgroups, имСнски простори ΠΈ seccomp. Π—Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° ΠΈΠ·ΠΎΠ»Π°Ρ†ΠΈΡ˜Π°, Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π°Ρ‚Π° користи SELinux Π²ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠΎΡ‚ β€žΡΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅β€œ.

ΠšΠΎΡ€Π΅Π½ΡΠΊΠ°Ρ‚Π° ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ˜Π° Π΅ ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½Π° само Π·Π° Ρ‡ΠΈΡ‚Π°ΡšΠ΅, Π° ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° поставки /etc сС ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π° Π²ΠΎ tmpfs ΠΈ сС Π²Ρ€Π°ΡœΠ° Π²ΠΎ ΠΏΡ€Π²ΠΎΠ±ΠΈΡ‚Π½Π°Ρ‚Π° ΡΠΎΡΡ‚ΠΎΡ˜Π±Π° ΠΏΠΎ Ρ€Π΅ΡΡ‚Π°Ρ€Ρ‚ΠΈΡ€Π°ΡšΠ΅. Π”ΠΈΡ€Π΅ΠΊΡ‚Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π° Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ Π²ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΎΡ‚ /etc, ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ сС /etc/resolv.conf ΠΈ /etc/containerd/config.toml, Π½Π΅ Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½Π° - Π·Π° Ρ‚Ρ€Π°Ρ˜Π½ΠΎ Π΄Π° Π³ΠΈ Π·Π°Ρ‡ΡƒΠ²Π°Ρ‚Π΅ поставкитС, ΠΌΠΎΡ€Π° Π΄Π° Π³ΠΎ користитС API ΠΈΠ»ΠΈ Π΄Π° ја прСмСститС функционалноста Π²ΠΎ посСбни ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€ΠΈ. ΠœΠΎΠ΄ΡƒΠ»ΠΎΡ‚ dm-verity сС користи Π·Π° криптографска ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ‚Π΅Ρ‚ΠΎΡ‚ Π½Π° root ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° ΠΈ Π°ΠΊΠΎ сС ΠΎΡ‚ΠΊΡ€ΠΈΠ΅ ΠΎΠ±ΠΈΠ΄ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π° Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈΡ‚Π΅ Π½Π° Π½ΠΈΠ²ΠΎ Π½Π° Π±Π»ΠΎΠΊ ΡƒΡ€Π΅Π΄, систСмот сС рСстартира.

ΠŸΠΎΠ²Π΅ΡœΠ΅Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° систСмот сС напишани Π²ΠΎ 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β€œ сС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ -Π·Π°ΡˆΡ‚ΠΈΡ‚Π°β€œ.

Π’ΠΎ Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅:

  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π΄Π²Π° Π½ΠΎΠ²Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° дистрибутива aws-k8s-1.20 ΠΈ vmware-k8s-1.20 c ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Kubernetes 1.20. Π’ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½Π½ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ aws-ecs-1, задСйствован Π½ΠΎΠ²Ρ‹ΠΉ выпуск ядра Linux 5.10. Π Π΅ΠΆΠΈΠΌ lockdown ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«integrityΒ» (Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ΡΡ возмоТности, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π΅ ядро ΠΈΠ· пространства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ). ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° aws-k8s-1.15 Π½Π° Π±Π°Π·Π΅ Kubernetes 1.15.
  • Для Amazon ECS Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сСтСвого Ρ€Π΅ΠΆΠΈΠΌΠ° awsvpc, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ сСтСвых интСрфСйсы ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ IP-адрСса для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ настройки для управлСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Kubernetes, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ QPS, Π»ΠΈΠΌΠΈΡ‚Ρ‹ Π½Π° ΠΏΡƒΠ»Ρ‹ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°ΠΌ, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΡ‚ AWS.
  • Π’ bootstrap-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ обСспСчСно ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ SELinux.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° resize2fs.

Π˜Π·Π²ΠΎΡ€: opennet.ru

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