Bottlerocket 1.8 дастрас аст, тақсимот дар асоси контейнерҳои ҷудошуда

Нашри тақсимоти Linux Bottlerocket 1.8.0 нашр шуд, ки бо иштироки Амазонка барои оғози самаранок ва бехатари контейнерҳои ҷудошуда таҳия шудааст. Асбобҳо ва ҷузъҳои назорати тақсимот дар Rust навишта шудаанд ва таҳти иҷозатномаҳои MIT ва Apache 2.0 паҳн карда мешаванд. Он идора кардани Bottlerocket-ро дар кластерҳои Amazon ECS, VMware ва AWS EKS Kubernetes дастгирӣ мекунад, инчунин сохтани биноҳо ва нашрҳои фармоишӣ, ки ба истифодаи асбобҳои гуногуни оркестрсозӣ ва вақти корӣ барои контейнерҳо имкон медиҳанд, дастгирӣ мекунад.

Тақсим тасвири системаи тақсимнашавандаи ба таври атомӣ ва ба таври худкор навшавандаро таъмин мекунад, ки ядрои Linux ва муҳити ҳадди ақали системаро дар бар мегирад, аз ҷумла танҳо ҷузъҳои зарурӣ барои идора кардани контейнерҳо. Муҳит менеҷери системаи системавӣ, китобхонаи Glibc, асбоби сохтани Buildroot, боркунаки пурборкунандаи GRUB, конфигуратори шабакаи бад, вақти кори контейнер барои контейнерҳои ҷудошуда, платформаи оркестри контейнерии Kubernetes, aws-iam-authenticator ва Amazon -ро дар бар мегирад. Агенти ECS.

Воситаҳои оркестрсозии контейнерҳо дар як контейнери идоракунии алоҳида мавҷуданд, ки бо нобаёнӣ фаъол карда мешаванд ва тавассути API ва AWS SSM Agent идора карда мешаванд. Дар тасвири асосӣ қабати фармонӣ, сервери SSH ва забонҳои тафсиршуда мавҷуд нест (масалан, Python ё Perl нест) - абзорҳои маъмурӣ ва абзорҳои ислоҳкунӣ дар як контейнери хидматрасонии алоҳида ҷойгир карда мешаванд, ки бо нобаёнӣ хомӯш карда мешаванд.

Тафовути калидӣ аз тақсимоти шабеҳ ба монанди Fedora CoreOS, CentOS/Red Hat Atomic Host тамаркузи аввалиндараҷа ба таъмини амнияти ҳадди аксар дар заминаи таҳкими ҳифзи система аз таҳдидҳои эҳтимолӣ мебошад, ки истифодаи осебпазириро дар ҷузъҳои ОС ва афзоиши изолятсияи контейнерро душвортар мекунад. . Контейнерҳо бо истифода аз механизмҳои стандартии ядрои Linux - cgroups, namespaces ва seccomp сохта мешаванд. Барои изолятсияи иловагӣ, тақсимот SELinux-ро дар реҷаи "маҷбуркунӣ" истифода мебарад.

Қисмати реша танҳо барои хондан васл карда мешавад ва қисмати танзимоти /etc дар tmpfs насб карда мешавад ва пас аз бозоғозӣ ба ҳолати аслии худ барқарор карда мешавад. Тағироти мустақими файлҳо дар феҳристи /etc, ба монанди /etc/resolv.conf ва /etc/containerd/config.toml дастгирӣ намешавад - барои ба таври доимӣ нигоҳ доштани танзимот, шумо бояд API-ро истифода баред ё функсияро ба контейнерҳои алоҳида интиқол диҳед. Модули dm-verity барои тасдиқи криптографии якпорчагии қисмати реша истифода мешавад ва агар кӯшиши тағир додани маълумот дар сатҳи дастгоҳи блок ошкор карда шавад, система аз нав оғоз мешавад.

Аксари ҷузъҳои система дар Rust навишта шудаанд, ки хусусиятҳои бехатарии хотираро барои пешгирӣ кардани осебпазирӣ дар натиҷаи дастрасии пас аз хотираи хотира, истинодҳои нул нишондиҳанда ва изофаи буфер таъмин мекунад. Ҳангоми сохтан ба таври нобаёнӣ, усулҳои компиляцияи "-enable-default-pie" ва "-enable-default-ssp" барои имкон додани тасодуфии фазои суроғаи файли иҷрошаванда (PIE) ва муҳофизат аз изофабори стек тавассути ивазкунии кана истифода мешаванд. Барои бастаҳое, ки дар C/C++ навишта шудаанд, парчамҳои “-Wall”, “-Werror=format-security”, “-Wp,-D_FORTIFY_SOURCE=2”, “-Wp,-D_GLIBCXX_ASSERTIONS” ва “-fstack-clash” ба таври иловагӣ ҳастанд. фаъол - муҳофизат".

Дар нашри нав:

  • Мундариҷаи контейнерҳои маъмурӣ ва назоратӣ нав карда шуд.
  • Вақти кор барои контейнерҳои ҷудошуда ба филиали containerd 1.6.x нав карда шуд.
  • Кафолат медиҳад, ки равандҳои заминавӣ, ки амалиёти контейнерҳоро ҳамоҳанг мекунанд, пас аз тағирот дар мағозаи сертификатҳо дубора оғоз мешаванд.
  • Параметрҳои пурборкунии ядроро тавассути қисмати конфигуратсияи боркунӣ муқаррар кардан мумкин аст.
  • Нодида гирифтани блокҳои холӣ ҳангоми мониторинги якпорчагии қисмати реша бо истифода аз dm-verity фаъол карда шудааст.
  • Имконияти ба таври статикӣ пайваст кардани номҳои мизбон дар /etc/hosts таъмин карда шудааст.
  • Имконияти тавлиди конфигуратсияи шабака бо истифода аз утилитаи netdog таъмин карда шудааст (фармони gener-net-config илова карда шудааст).
  • Вариантҳои нави тақсимот бо дастгирии Kubernetes 1.23 пешниҳод карда шуданд. Бо хомӯш кардани режими configMapAndSecretChangeDetectionStrategy вақти оғози кор дар Кубернетес кам карда шуд. Танзимоти нави kubelet илова карда шуд: провайдери ID ва podPidsLimit.
  • Версияи нави маҷмӯаи тақсимоти "aws-ecs-1-nvidia" барои Amazon Elastic Container Service (Amazon ECS), ки бо драйверҳои NVIDIA таъмин карда шудааст, пешниҳод карда шуд.
  • Дастгирии иловагӣ барои Microchip Smart Storage ва дастгоҳҳои нигаҳдории MegaRAID SAS. Дастгирии кортҳои Ethernet дар микросхемаҳои Broadcom васеъ карда шуд.
  • Версияҳои навшудаи бастаҳо ва вобастагӣ барои забонҳои Go ва Rust, инчунин версияҳои бастаҳо бо барномаҳои тарафи сеюм. Bottlerocket SDK ба версияи 0.26.0 навсозӣ шудааст.

Манбаъ: opennet.ru

Илова Эзоҳ