Serbestberdana Bottlerocket 1.3, belavkirinek li ser konteynerên veqetandî

Serbestberdana belavkirina Linux Bottlerocket 1.3.0 hate weşandin, ku bi beşdariya Amazon-ê ji bo destpêkirina bikêr û ewledar a konteynerên veqetandî hatî pêşve xistin. Amûrên belavkirinê û hêmanên kontrolê bi Rust têne nivîsandin û di bin lîsansa MIT û Apache 2.0 de têne belav kirin. Ew piştgirî dide xebitandina Bottlerocket-ê li ser komikên Amazon ECS, VMware û AWS EKS Kubernetes, û her weha avahî û çapên xwerû diafirîne ku destûrê dide karanîna cûrbecûr amûrên orkestrasyonê û dema xebitandinê ji bo konteyneran.

Dabeşkirin wêneyek pergalê ya yekbûyî ya atomî û bixweber nûvekirî peyda dike ku tê de kernel Linux û jîngehek pergalê ya hindiktirîn, di nav de tenê hêmanên ku ji bo xebitandina konteyneran hewce ne. Jîngeh birêveberê pergala systemd, pirtûkxaneya Glibc, amûra avakirina Buildroot, barkera bootê GRUB, vesazkera torê ya xerab, dema xebitandina konteyneran ji bo konteynerên veqetandî, platforma orkestrasyona konteyneran Kubernetes, aws-iam-authenticator, û Amazon dihewîne. nûnerê ECS.

Amûrên orkestrasyona konteyner di konteynirek rêveberiyê ya cihêreng de têne ku ji hêla xwerû ve hatî çalak kirin û bi navgîniya API û AWS SSM Agent ve têne rêve kirin. Wêneya bingehîn şêlê fermanê, servera SSH û zimanên şîrovekirî tune ye (mînakî, Python an Perl tune) - Amûrên îdarî û amûrên debugkirinê di konteynirek karûbarê cihêreng de têne danîn, ku ji hêla xwerû ve hatî asteng kirin.

Cûdahiya sereke ji belavkirinên wekhev ên wekî Fedora CoreOS, CentOS / Red Hat Atomic Host di çarçoweya xurtkirina parastina pergalê ji xetereyên muhtemel de, baldariya bingehîn e li ser peydakirina ewlehiya herî zêde di çarçoweya bihêzkirina parastina pergalê ji xetereyên muhtemel de, û dijwartir dike ku xerabûna di hêmanên OS-ê de bikar bîne û îzolasyona konteynerê zêde bike. . Konteyner bi karanîna mekanîzmayên kernel Linux-ê yên standard têne afirandin - cgroup, navên nav û seccomp. Ji bo veqetandina zêde, belavkirin di moda "sepandin" de SELinux bikar tîne.

Dabeşkirina root tenê tenê-xwendewarî tê hilanîn, û dabeşkirina mîhengên /etc di tmpfs de tê danîn û piştî nûve destpêkirinê vedigere rewşa xweya bingehîn. Guhertina rasterast a pelên di pelrêça /etc de, wek /etc/resolv.conf û /etc/containerd/config.toml, nayê piştgirî kirin - ji bo ku hûn mîhengan bi domdarî hilînin, divê hûn API-ê bikar bînin an fonksiyonê bixin nav konteynerên cihê. Modula dm-verity tê bikar anîn da ku bi şîfrekirina yekbûna dabeşa root-ê verast bike, û heke hewlek ji bo guheztina daneyan di asta cîhaza blokê de were dîtin, pergalê ji nû ve dest pê dike.

Piraniya hêmanên pergalê di Rust de têne nivîsandin, ku taybetmendiyên ewledar ên bîranînê peyda dike da ku ji qelsiyên ku ji ber gihîştinên bîranînê yên bêpere, veqetandinên nîşangirên betal, û zêdekirina tamponan dûr bixin. Dema ku ji hêla xwerû ve têne çêkirin, modên berhevokê "-enable-default-pie" û "-enable-default-ssp" têne bikar anîn da ku rasthatîkirina cîhê navnîşana pelê ya darvekirî (PIE) û parastina li dijî dorpêçkirina stakê bi veguheztina kanariyê ve were çalak kirin. Ji bo pakêtên ku bi C/C++ hatine nivîsandin, alayên "-Dîwar", "-Werror=format-ewlehî", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" û "-fstack-clash" zêde ne. çalak -parastin".

Di weşana nû de:

  • Di amûrên doker û dema xebitandinê de qelsiyên rast kirin (CVE-2021-41089, CVE-2021-41091, CVE-2021-41092, CVE-2021-41103) têkildarî mîhengkirina çewt a mafên gihîştinê, ku hişt ku bikarhênerên bêdestûr derbas bibin. pelrêça û bernameyên derveyî bicîh bikin.
  • Piştgiriya IPv6 li kubelet û pluto hate zêdekirin.
  • Mimkun e ku konteynerê piştî guheztina mîhengên wê ji nû ve dest pê bike.
  • Piştgiriya ji bo nimûneyên Amazon EC2 M6i li pakêta eni-max-pods hate zêdekirin.
  • Open-vm-tools ji bo fîlterên cîhazê, li ser bingeha amûra Ciliium piştgirî zêde kiriye.
  • Ji bo platforma x86_64, moda bootê ya hybrid (bi piştgiriya EFI û BIOS) tête bicîh kirin.
  • Guhertoyên pakêtê û girêdanên ji bo zimanê Rust nûve kirin.
  • Piştgiriya ji bo guhertoya belavkirinê aws-k8s-1.17 li ser bingeha Kubernetes 1.17 hate sekinandin. Tête pêşniyar kirin ku guhertoya aws-k8s-1.21 bi piştgirîya Kubernetes 1.21 bikar bînin. Guhertoyên k8s mîhengên cgroup runtime.slice û system.slice bikar tînin.

Source: opennet.ru

Add a comment