Kompanya sa Amazon первый значительный выпуск специализированного Linux-pag-apod-apod , gidisenyo aron episyente ug luwas nga modagan ang mga isolated container. Ang mga tooling ug control component sa distribution gisulat sa Rust ug Lisensyado ubos sa mga lisensya sa MIT ug Apache 2.0. Ang proyekto gipalambo sa GitHub ug bukas sa mga kontribusyon sa komunidad. Ang imahe sa pag-deploy sa sistema gihimo alang sa mga arkitektura nga x86_64 ug Aarch64. Ang OS gipahaum alang sa pagdagan sa mga cluster sa Amazon ECS ug AWS EKS Kubernetes. mga himan para sa paghimo og mga custom builds ug editions nga makagamit og ubang orchestration tools, kernels, ug runtimes para sa mga containers.
Дистрибутив предоставляет ядро Linux и минимальное системное окружение, включающие только компоненты, необходимые для запуска контейнеров. Среди задействованных в проекте пакетов отмечаются системный менеджер systemd, библиотека Glibc, сборочный инструментарий
Buildroot, GRUB bootloader, network configurator , oras sa pagdagan para sa nahimulag nga mga sudlanan , ang Kubernetes container orchestration platform, ang aws-iam-authenticator authenticator, ug ang Amazon ECS agent.
Ang distribusyon gi-update sa atomiko nga paagi ug gihatud isip usa ka dili mabahin nga imahe sa sistema. Duha ka disk partition ang gi-assign para sa sistema, ang usa niini naglangkob sa aktibo nga sistema, ug ang ikaduha gigamit para sa pagkopya sa update. Human ma-deploy ang update, ang ikaduhang partition mahimong aktibo, samtang ang unang partition nagtipig sa miaging bersyon sa sistema hangtod nga moabot ang sunod nga update, nga nagtugot sa mga tiggamit sa pagbalik niini kung adunay mga problema nga motumaw. Ang mga update awtomatikong gi-install, nga walay interbensyon sa administrador.
Ang pangunang kalainan gikan sa susamang mga distribusyon sama sa Fedora CoreOS mao CentOS/Red Hat Atomic Host является первичная ориентация на обеспечение в контексте усиления защиты системы от возможных угроз, усложнения эксплуатации уязвимостей в компонентах ОС и повышения изоляции контейнеров. Контейнеры создаются при помощи штатных механизмов ядра Linux — mga cgroup, mga namespace, ug seccomp. Alang sa dugang nga pag-inusara, ang distribusyon naggamit sa SELinux в режиме «enforcing», а для криптографической верификации целостности корневого раздела задействован модуль Kon adunay mamatikdan nga pagsulay sa pag-usab sa datos sa lebel sa block device, ang sistema mo-reboot.
Ang root partition gi-mount nga read-only, ug ang /etc configuration partition gi-mount sa usa ka tmpfs partition ug gipahiuli ang orihinal nga estado niini pagkahuman sa pag-reboot. Ang direktang pag-usab sa mga file sa /etc directory, sama sa /etc/resolv.conf ug /etc/containerd/config.toml, dili gisuportahan. Aron mapadayon ang mga setting, gamita ang API o ibalhin kini nga functionality ngadto sa managlahing container.
Kadaghanan sa mga component sa sistema gisulat sa Rust, nga naghatag og mga feature nga luwas sa memorya aron malikayan ang mga kahuyangan nga gipahinabo sa use-after-free, null pointer dereference, ug buffer overrun. Ang default build naggamit sa "--enable-default-pie" ug "--enable-default-ssp" compilation modes aron ma-enable ang address space randomization para sa mga executable () ug proteksyon sa stack overflow pinaagi sa canary substitution.
Para sa mga pakete nga gisulat sa C/C++, dugang nga mga flag ang gilakip.
"-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" ug "-fstack-clash-protection".
Ang mga himan sa orkestrasyon sa sudlanan gihatag nga gilain , nga gi-enable pinaagi sa default ug gikontrol pinaagi sa ug AWS SSM Agent. Ang base image walay command shell, SSH server, ug mga interpreted languages (pananglitan, walay Python o Perl)—ang mga administrador tool ug debugging tool nahimutang sa , nga gi-disable pinaagi sa default.
Source: opennet.ru
