Keluaran tersedia LinuxBottlerocket 1.1.0, sebuah pengedaran yang dibangunkan dengan Amazon untuk pelancaran kontena terpencil yang cekap dan selamat. Komponen perkakasan dan kawalan pengedaran ditulis dalam Rust dan dilesenkan di bawah lesen MIT dan Apache 2.0. Bottlerocket berjalan pada kluster Amazon ECS dan AWS EKS Kubernetes, serta menyokong binaan dan edisi tersuai yang menyokong penggunaan pelbagai alat orkestrasi kontena dan masa jalan.
Pengedaran ini menyediakan imej sistem yang tidak boleh dibahagikan secara atom dan dikemas kini secara automatik, termasuk kernel Linux dan persekitaran sistem yang minimum, termasuk hanya komponen yang diperlukan untuk menjalankan kontena. Persekitaran ini merangkumi pengurus sistem systemd, pustaka Glibc, rantai alat binaan Buildroot, pemuat but GRUB, konfigurasi rangkaian wicked, masa jalan kontena untuk kontena terpencil, platform orkestrasi kontena Kubernetes, pengesah aws-iam-authenticator dan ejen Amazon ECS.
Alatan orkestrasi kontena dihantar dalam kontena pengurusan berasingan, yang diaktifkan secara lalai dan diuruskan melalui API dan AWS SSM Ejen. Imej asas tidak termasuk shell arahan. pelayan SSH dan bahasa yang ditafsirkan (cth. tiada Python atau Perl) - pentadbir dan alat penyahpepijatan terletak dalam bekas perkhidmatan berasingan, yang dinyahdayakan secara lalai.
Perbezaan utama daripada pengedaran serupa seperti Fedora CoreOS ialah CentOSRed Hat Atomic Host tertumpu terutamanya untuk menyediakan keselamatan maksimum dengan meningkatkan perlindungan sistem terhadap potensi ancaman, merumitkan eksploitasi kerentanan dalam komponen OS dan meningkatkan pengasingan kontena. Kontena dicipta menggunakan mekanisme kernel asli. Linux — cgroup, ruang nama dan seccomp. Untuk pengasingan tambahan, taburan menggunakan SELinux dalam mod "penguatkuasaan".
Pembahagian akar dipasang baca sahaja, dan pembahagian tetapan /etc dilekapkan dalam tmpfs dan dipulihkan kepada keadaan asalnya selepas dimulakan semula. Pengubahsuaian terus fail dalam direktori /etc, seperti /etc/resolv.conf dan /etc/containerd/config.toml, tidak disokong - untuk menyimpan tetapan secara kekal, anda mesti menggunakan API atau mengalihkan fungsi ke dalam bekas yang berasingan. Modul dm-verity digunakan untuk mengesahkan integriti partition akar secara kriptografi, dan jika percubaan untuk mengubah suai data pada tahap peranti blok dikesan, sistem akan but semula.
Kebanyakan komponen sistem ditulis dalam Rust, yang menyediakan ciri selamat memori untuk mengelakkan kelemahan yang disebabkan oleh capaian memori selepas bebas, penolakan penunjuk nol dan overrun penimbal. Apabila membina secara lalai, mod kompilasi "-enable-default-pie" dan "-enable-default-ssp" digunakan untuk mendayakan rawak ruang alamat fail boleh laku (PIE) dan perlindungan terhadap limpahan tindanan melalui penggantian kenari. Untuk pakej yang ditulis dalam C/C++, bendera "-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" dan "-fstack-clash" adalah tambahan diaktifkan -perlindungan".
Dalam keluaran baharu:
- Dua varian pengedaran baharu, aws-k8s-1.20 dan vmware-k8s-1.20, telah dikeluarkan, menyokong Kubernetes 1.20. Varian ini, serta varian aws-ecs-1 yang dikemas kini, menggunakan keluaran kernel baharu. Linux 5.10. Mod penguncian lalai telah ditukar kepada "integriti" (menyekat pengubahsuaian ruang pengguna pada kernel yang sedang berjalan). Sokongan untuk varian aws-k8s-1.15 berdasarkan Kubernetes 1.15 telah dihentikan.
- Amazon ECS kini menyokong mod rangkaian awsvpc, yang membolehkan anda menyediakan antara muka rangkaian individu dan alamat IP untuk setiap tugasan.
- Menambahkan tetapan untuk mengurus pelbagai parameter Kubernetes, termasuk QPS, had kumpulan dan keupayaan untuk menyambung kepada pembekal awan selain AWS.
- Kontena bootstrap menyediakan sekatan akses kepada data pengguna menggunakan SELinux.
- Menambahkan utiliti resize2fs.
Sumber: opennet.ru
