ืฉื—ืจื•ืจ Bottlerocket 1.2, ื”ืคืฆื” ื”ืžื‘ื•ืกืกืช ืขืœ ืžื›ื•ืœื•ืช ืžื‘ื•ื“ื“ื•ืช

ื”ื”ืคืฆื” ืฉืœ ื”ืคืฆืช ืœื™ื ื•ืงืก Bottlerocket 1.2.0 ื–ืžื™ื ื”, ืฉืคื•ืชื—ื” ื‘ื”ืฉืชืชืคื•ืช ืืžื–ื•ืŸ ืœืฆื•ืจืš ื”ืฉืงื” ื™ืขื™ืœื” ื•ืžืื•ื‘ื˜ื—ืช ืฉืœ ืžื›ื•ืœื•ืช ืžื‘ื•ื“ื“ื•ืช. ื”ื›ืœื™ื ื•ืจื›ื™ื‘ื™ ื”ื‘ืงืจื” ืฉืœ ื”ื”ืคืฆื” ื ื›ืชื‘ื™ื ื‘-Rust ื•ืžื•ืคืฆื™ื ืชื—ืช ืจื™ืฉื™ื•ื ื•ืช MIT ื•-Apache 2.0. ื”ื•ื ืชื•ืžืš ื‘ื”ืคืขืœืช Bottlerocket ื‘ืืฉื›ื•ืœื•ืช Amazon ECS, VMware ื•-AWS EKS Kubernetes, ื›ืžื• ื’ื ื™ืฆื™ืจืช ื‘ื ื™ื™ื” ื•ืžื”ื“ื•ืจื•ืช ืžื•ืชืืžื•ืช ืื™ืฉื™ืช ื”ืžืืคืฉืจื•ืช ืฉื™ืžื•ืฉ ื‘ื›ืœื™ ืชื–ืžื•ืจ ื•ื–ืžืŸ ืจื™ืฆื” ืฉื•ื ื™ื ืขื‘ื•ืจ ืงื•ื ื˜ื™ื™ื ืจื™ื.

ื”ื”ืคืฆื” ืžืกืคืงืช ืชืžื•ื ืช ืžืขืจื›ืช ื‘ืœืชื™ ื ื™ืชื ืช ืœื—ืœื•ืงื” ืžืขื•ื“ื›ื ืช ื‘ืื•ืคืŸ ืื˜ื•ืžื™ ื•ืื•ื˜ื•ืžื˜ื™ ื”ื›ื•ืœืœืช ืืช ืœื™ื‘ืช ืœื™ื ื•ืงืก ื•ืกื‘ื™ื‘ืช ืžืขืจื›ืช ืžื™ื ื™ืžืœื™ืช, ื”ื›ื•ืœืœืช ืจืง ืืช ื”ืจื›ื™ื‘ื™ื ื”ื“ืจื•ืฉื™ื ืœื”ืคืขืœืช ืงื•ื ื˜ื™ื™ื ืจื™ื. ื”ืกื‘ื™ื‘ื” ื›ื•ืœืœืช ืืช ืžื ื”ืœ ื”ืžืขืจื›ืช systemd, ืกืคืจื™ื™ืช Glibc, ื›ืœื™ ื”ื‘ื ื™ื™ื” Buildroot, ื˜ื•ืขืŸ ื”ืืชื—ื•ืœ GRUB, Configurator ื”ืจืฉืช ื”ืžืจื•ืฉืขืช, ื–ืžืŸ ื”ืจื™ืฆื” ืฉืœ containerd ืขื‘ื•ืจ ืงื•ื ื˜ื™ื™ื ืจื™ื ืžื‘ื•ื“ื“ื™ื, ืคืœื˜ืคื•ืจืžืช ืชื–ืžื•ืจ ื”ืงื•ื ื˜ื™ื™ื ืจื™ื Kubernetes, aws-iam-authenticator ื•-Amazon. ืกื•ื›ืŸ ECS.

ื›ืœื™ ืชื–ืžื•ืจ ืžื™ื›ืœ ืžื’ื™ืขื™ื ื‘ืžื™ื›ืœ ื ื™ื”ื•ืœ ื ืคืจื“ ื”ืžื•ืคืขืœ ื›ื‘ืจื™ืจืช ืžื—ื“ืœ ื•ืžื ื•ื”ืœ ื‘ืืžืฆืขื•ืช ื”-API ื•-AWS SSM Agent. ืชืžื•ื ืช ื”ื‘ืกื™ืก ื—ืกืจื” ืžืขื˜ืคืช ืคืงื•ื“ื”, ืฉืจืช 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 ืžืฉืžืฉ ืœืื™ืžื•ืช ืงืจื™ืคื˜ื•ื’ืจืคื™ืช ืฉืœ ืชืงื™ื ื•ืช ืžื—ื™ืฆืช ื”ืฉื•ืจืฉ, ื•ืื ืžื–ื•ื”ื” ื ื™ืกื™ื•ืŸ ืœืฉื ื•ืช ื ืชื•ื ื™ื ื‘ืจืžืช ื”ืชืงืŸ ื”ื‘ืœื•ืง, ื”ืžืขืจื›ืช ืžื•ืคืขืœืช ืžื—ื“ืฉ.

ืจื•ื‘ ืจื›ื™ื‘ื™ ื”ืžืขืจื›ืช ื›ืชื•ื‘ื™ื ื‘-Rust, ื”ืžืกืคืง ืชื›ื•ื ื•ืช ื‘ื˜ื•ื—ื•ืช ืœื–ื™ื›ืจื•ืŸ ื›ื“ื™ ืœืžื ื•ืข ืคื’ื™ืขื•ื™ื•ืช ื”ื ื’ืจืžื•ืช ืขืœ ื™ื“ื™ ื’ื™ืฉื” ื—ื•ืคืฉื™ืช ืœื–ื™ื›ืจื•ืŸ, ื”ืคื ื™ื™ืช ืžืฆื‘ื™ืข null ื•ื—ืจื™ืคื•ืช ืžืื’ืจ. ื‘ืขืช ื‘ื ื™ื™ื” ื›ื‘ืจื™ืจืช ืžื—ื“ืœ, ืžืฆื‘ื™ ื”ืงื•ืžืคื™ืœืฆื™ื” "-enable-default-pie" ื•-"-enable-default-ssp" ืžืฉืžืฉื™ื ื›ื“ื™ ืœืืคืฉืจ ืืงืจืื™ืช ืฉืœ ืžืจื—ื‘ ื”ื›ืชื•ื‘ื•ืช ืฉืœ ืงื•ื‘ืฅ ื”ื”ืคืขืœื” (PIE) ื•ื”ื’ื ื” ืžืคื ื™ ื”ืฆืคืช ืžื—ืกื ื™ืช ื‘ืืžืฆืขื•ืช ื”ื—ืœืคื” ืงื ืจื™ืช. ืขื‘ื•ืจ ื—ื‘ื™ืœื•ืช ืฉื ื›ืชื‘ื• ื‘-C/C++, ื”ื“ื’ืœื™ื "-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" ื•-"-fstack-clash" ื”ื ื‘ื ื•ืกืฃ -ื”ื’ื ื” ืžื•ืคืขืœืช".

ื‘ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื”:

  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžืจืื•ืช ืจื™ืฉื•ื ืฉืœ ืชืžื•ื ืช ืžื™ื›ืœ.
  • ื ื•ืกืคื” ื”ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘ืชืขื•ื“ื•ืช ื‘ื—ืชื™ืžื” ืขืฆืžื™ืช.
  • ื ื•ืกืคื” ืืคืฉืจื•ืช ืœื”ื’ื“ืจืช ืฉื ืžืืจื—.
  • ื’ืจืกืช ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืฉืœ ื”ืžื›ื•ืœื” ื”ื ื™ื”ื•ืœื™ืช ืขื•ื“ื›ื ื”.
  • ื ื•ืกืคื• ื”ื’ื“ืจื•ืช topologyManagerPolicy ื•-topologyManagerScope ืขื‘ื•ืจ kubelet.
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ื“ื—ื™ืกืช ืœื™ื‘ื” ื‘ืืžืฆืขื•ืช ืืœื’ื•ืจื™ืชื zstd.
  • ืžืกื•ืคืงืช ื”ื™ื›ื•ืœืช ืœื˜ืขื•ืŸ ืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ืœืชื•ืš VMware ื‘ืคื•ืจืžื˜ OVA (Open Virtualization Format).
  • ื’ืจืกืช ื”ื”ืคืฆื” aws-k8s-1.21 ืขื•ื“ื›ื ื” ืขื ืชืžื™ื›ื” ื‘-Kubernetes 1.21. ื”ืชืžื™ื›ื” ื‘-aws-k8s-1.16 ื”ื•ืคืกืงื”.
  • ื’ืจืกืื•ืช ื—ื‘ื™ืœื” ื•ืชืœื•ืช ืžืขื•ื“ื›ื ื•ืช ืขื‘ื•ืจ ืฉืคืช Rust.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”