Te tukunga o Bottlerocket 1.7, he tohatoha i runga i nga ipu taratahi

Ko te tukunga o te Linux tohatoha Bottlerocket 1.7.0 kua whakaputaina, i whakawhanakehia me te whai waahi a Amazon mo te whakarewanga pai me te haumaru o nga ipu taratahi. Ko nga taputapu o te tohatoha me nga waahanga whakahaere kua tuhia ki Rust ka tohatohahia i raro i nga raihana MIT me Apache 2.0. Ka tautokohia te whakahaere Bottlerocket i runga i nga roopu Amazon ECS, VMware me AWS EKS Kubernetes, me te hanga hanga ritenga me nga whakaputanga e taea ai te whakamahi i nga momo orchestration me nga taputapu wa whakahaere mo nga ipu.

Ko te tohatoha e whakarato ana i te ahua o te punaha ngota me te whakahou aunoa i te ahua o te punaha kei roto ko te kernel Linux me te taiao punaha iti, tae atu ki nga waahanga e tika ana hei whakahaere ipu. Kei roto i te taiao ko te kaiwhakahaere o te punaha punaha, te whare pukapuka Glibc, te taputapu hanga Buildroot, te GRUB boot loader, te whirihoranga whatunga kino, te wa whakahaere mo nga ipu taratahi, te papaahanga whakahiato ipu Kubernetes, te aws-iam-authenticator, me te Amazon. Kaitohu ECS.

Ko nga taputapu whakahiato ipu ka tae mai ki tetahi ipu whakahaere motuhake ka taea te taunoa me te whakahaere ma te API me te AWS SSM Agent. Ko te ahua o te turanga kaore he anga whakahau, he tūmau SSH me nga reo whakamaori (hei tauira, kaore he Python, Perl ranei) - ka whakauruhia nga taputapu whakahaere me nga taputapu patuiro ki roto i tetahi ipu ratonga motuhake, kua whakakorehia e te taunoa.

Ko te rereketanga nui mai i nga tohatoha rite penei i a Fedora CoreOS, CentOS / Red Hat Atomic Host ko te arotahi tuatahi ki te whakarato i te haumarutanga teitei i roto i te horopaki o te whakapakari i te whakamarumaru o te punaha mai i nga riri ka taea, ka uaua ake te whakamahi i nga whakaraeraetanga i roto i nga waahanga OS me te whakanui ake i te wehenga ipu. . Ka waihangahia nga ipu ma te whakamahi i nga tikanga kernel Linux paerewa - cgroups, ingoa mokowā me te seccomp. Mo etahi atu taapiri, ka whakamahia e te tohatoha SELinux i roto i te aratau "whakauru".

Ko te arai pakiaka ka whakairihia he panui-anake, a ko te wehewehenga tautuhinga /etc ka mau ki tmpfs ka whakahokia ki tona ahuatanga taketake i muri i te tiimatanga. Ko te whakarereketanga tika o nga konae kei roto i te whaiaronga /etc, penei i te /etc/resolv.conf me /etc/containerd/config.toml, kaore i te tautokohia - hei tiaki tuturu i nga tautuhinga, me whakamahi koe i te API, me neke ranei te mahi ki nga ipu motuhake. Ka whakamahia te kōwae dm-verity ki te manatoko i te pono o te wehewehenga pakiaka, a, ki te kitea he ngana ki te whakarereke i nga raraunga i te taumata taputapu poraka, ka whakaara ano te punaha.

Ko te nuinga o nga waahanga o te punaha kua tuhia ki roto i te Rust, e whakarato ana i nga ahuatanga haumaru-mahara hei karo i nga whakaraeraetanga i puta mai i nga urunga mahara kore-kore, nga tohu tohu korekore, me te nui o te aukati. Ina hanga taunoa, ka whakamahia nga tikanga whakahiato "-enable-default-pie" me "-enable-default-ssp" kia taea ai te matapōkeretia o te mokowā wāhitau konae (PIE) me te whakamarumaru i te puhake o te puranga ma te whakakapi i te kanari. Mo nga kohinga kua tuhia ki C/C++, ko nga haki "-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" me "-fstack-clash" he taapiri. whakahohea -protection".

I roto i te tukunga hou:

  • I te wa e whakauru ana i nga kohinga RPM, ka taea te whakaputa i te rarangi o nga papatono ki te whakatakotoranga JSON me te whakairi ki roto i te ipu kaihautu hei konae /var/lib/bottlerocket/inventory/application.json ki te tiki korero mo nga kohinga e waatea ana.
  • Ko nga ipu "kaiwhakahaere" me te "mana" kua whakahoutia.
  • Ko nga putanga mokihi kua whakahōuhia me nga whakawhirinakitanga mo nga reo Haere me te Rust.
  • Ko nga putanga whakahōuhia o nga kohinga me nga kaupapa tuatoru.
  • Kua whakatauhia nga take whirihoranga tmpfilesd mo kmod-5.10-nvidia.
  • I te wa e whakauru ana i te tuftool, ka hono nga putanga whakawhirinaki.

Source: opennet.ru

Tāpiri i te kōrero