Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье представлен обзор Azure Container Linux (ACL), неизменяемой оптимизированной для контейнера операционной системы (ОС) для Azure Kubernetes Service (AKS). ACL создан на базе проекта Flatcar Container Linux и опирается на проверенную, ориентированную на контейнеры неизменяемую архитектуру Flatcar, дополняя её пакетами Azure Linux, обслуживанием и интеграцией с платформой. Это позволяет ACL оставаться тесно согласованной с разработкой Flatcar в upstream, одновременно отвечая эксплуатационным требованиям Azure, а также требованиям безопасности и нормативного соответствия. Дополнительные сведения о Flatcar Container Linux см. в документации по Flatcar.
ACL общедоступен (GA) в качестве параметра ОС в AKS, начиная с AKS версии 1.34. Пулы узлов ACL можно развернуть в новом кластере AKS, добавить пулы узлов ACL в существующие кластеры и перенести существующие пулы узлов Linux в ACL.
Note
ACL — это общедоступный релиз Flatcar Container Linux для AKS, предварительная версия которого стала доступна в ноябре 2025 года. Функции OS Guard (предварительная версия), такие как целостность кода с применением политики целостности (IPE), в настоящее время не поддерживаются. Если вам нужны функции OS Guard сегодня, мы рекомендуем продолжать использовать OS Guard и переносить в ACL после того, как эти функции становятся доступными.
Преимущества использования ACL в AKS
Использование ACL в качестве ОС для пулов узлов AKS обеспечивает несколько преимуществ, которые повышают безопасность, надежность и эффективность работы:
-
Встроенная неизменяемость для более надежной безопасности: неизменяемость
/usrкаталога, применяемая ядром, проверяет целостность образа ОС при загрузке и среде выполнения. Эта конструкция помогает блокировать несанкционированные изменения, прежде чем они могут повлиять на кластер и снизить риск изменения на уровне ОС. - Минимальная область атаки: ACL поставляет только компоненты, необходимые для запуска контейнеров. Уменьшая размер и сложность ОС, ACL сводит к минимуму количество пакетов, служб и потенциальных точек входа, доступных злоумышленникам, и упрощает управление безопасностью.
- Автоматическое обновление образа узла: ACL предоставляет еженедельные обновления на основе образов, которые включают последние исправления системы безопасности и исправления ошибок. Этот подход обеспечивает согласованность и актуальность версий ОС узлов во всем кластере и помогает снизить подверженность известным уязвимостям.
- Доверие к цепочке поставок: основано на подписанных пакетах Azure Linux и процессах цепочки поставок, обеспечивая прозрачное происхождение системных компонентов.
- Интеграция с функциями безопасности Azure: встроенная поддержка доверенного запуска и безопасной загрузки обеспечивает измеряемую защиту загрузки и аттестацию.
- Прозрачность открытого исходного кода: Flatcar, а также многие лежащие в его основе технологии (dm-verity и SELinux), разрабатываются в рамках upstream-проектов или имеют открытый исходный код, а Microsoft предоставляет инструменты и вносит вклад в поддержку этих функций.
Ключевые функции ACL
Следующие ключевые функции отличают ACL как защищенной, оптимизированной для контейнера ОС для AKS:
- Неизменяемость: каталог "/usr" смонтирован как том только для чтения, защищённый dm-verity. Во время выполнения ядро проверяет подписанный корневой хэш для обнаружения и блокировки изменения
- Обязательный контроль доступа с помощью SELinux: ACL включает SELinux для применения обязательных политик контроля доступа, ограничивающих процессы, которые могут получить доступ к конфиденциальным системным ресурсам. Обратите внимание, что SELinux работает в режиме принудительного применения по умолчанию. Политики SELinux могут развиваться со временем.
- Trusted Launch and Secure Boot: ACL требует доверенного запуска с помощью безопасной загрузки и vTPM, чтобы обеспечить целостность цепочки загрузки перед загрузкой ОС. Это достигается с помощью единого образа ядра (UKI), который объединяет ядро, initramfs и командную строку ядра в один подписанный артефакт. Во время загрузки UKI измеряется и записывается в vTPM, обеспечивая целостность с самого раннего этапа.
- Поддержка узлов GPU NVIDIA: ACL поддерживает пулы узлов с поддержкой GPU NVIDIA на архитектурах AMD64, что позволяет выполнять высокопроизводительные вычисления (HPC) и рабочие нагрузки AI/ML в AKS с защищенной, оптимизированной для контейнера ОС. ACL не поддерживает архитектуры ARM64 для пулов узлов с поддержкой GPU.
- Поддержка архитектуры AMD64 и ARM64: ACL доступна для архитектур AMD64 и ARM64 в AKS.
- Суверенная безопасность цепочки поставок: ACL наследует безопасные конвейеры сборки Azure Linux и подписанные унифицированные образы ядра (UKI).
- Автоматическая подготовка узла: ACL поддерживает автоматическую подготовку узлов (NAP).
Important
Если вы используете Azure Container Linux (ACL) в AKS, ознакомьтесь со следующими рекомендациями и ограничениями:
- ACL общедоступен, начиная с AKS версии 1.34.
- Для ACL требуется доверенный запуск с помощью безопасной загрузки и vTPM. Варианты Non-Trusted Launch недоступны.
- Для ACL на Arm64 требуется использование SKU на базе Cobalt (v6) для обеспечения совместимости с Trusted Launch.
-
NodeImageиNoneявляются единственными поддерживаемыми каналами обновления операционной системы (ОС).UnmanagedиSecurityPatchнесовместимы с ACL из-за неизменяемого/usrкаталога. - Потоковая передача артефактов не поддерживается.
- Песочница Pod не поддерживается.
- Конфиденциальные виртуальные машины (CVM) не поддерживаются.
- Виртуальные машины поколения 1 не поддерживаются.
Дорожная карта функций
Дополнительные сведения см. в статье План развития функций Azure Linux.
Миграция и обновление ОС с помощью ACL
AKS поддерживает перенос существующих пулов узлов на ACL с помощью миграции SKU ОС на месте или путем создания новых пулов узлов ACL. Подробные инструкции по миграции, рекомендации и инструкции по откату см. в разделе "Перенос существующих узлов в ACL".
ACL для управления версиями AKS
ACL для AKS еженедельно выпускает образы узлов AKS. Версионирование следует формату AKS, основанному на дате (например, 202506.13.0). В настоящее время ACL поддерживает только полные обновления образа узла. Дополнительные сведения см. в статье Образы узлов Azure Container Linux (ACL).
Вы можете посмотреть доступные образы узлов в примечаниях к выпуску и просмотреть nodeImageVersion для работающего кластера с помощью команды az aks nodepool list. Рассмотрим пример.
az aks nodepool list --resource-group <resource-group-name> --cluster-name <aks-cluster-name> --query '[].{name: name, nodeImageVersion: nodeImageVersion}'
Пример выходных данных:
[
{
"name": "nodes",
"nodeImageVersion": "AKSAzureContainerLinux-202606.01.0"
}
]
Связанный контент
Чтобы приступить к работе с ACL для AKS, ознакомьтесь со следующими ресурсами: