Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Хранилище контейнеров Azure — это облачная служба, предназначенная для управления томами, их развертывания и оркестрации. Эта служба изначально была создана для контейнеров. Она интегрируется с Kubernetes, позволяя динамически и автоматически подготавливать постоянные тома для хранения данных для приложений с отслеживанием состояния, работающих в кластерах Kubernetes.
Чтобы приступить к работе с хранилищем контейнеров Azure, см. статью "Установка хранилища контейнеров Azure для использования со службой Azure Kubernetes".
Внимание
В этой статье рассматриваются функции и возможности, доступные в службе хранилища контейнеров Azure (версия 2.x.x), которая в настоящее время поддерживает только локальный диск NVMe в качестве резервного хранилища. Дополнительные сведения о более ранних версиях см. в документации по службе хранилища контейнеров Azure (версия 1.x.x).
Почему служба хранилища контейнеров Azure полезна
Хранилище контейнеров Azure предоставляет контейнерным рабочим нагрузкам доступ к высокопроизводительному хранилищу, которое ранее было доступно исключительно виртуальным машинам. Она поддерживает быстрые местные диски NVMe, которые идеально подходят для нагрузок, чувствительных к задержкам, таких как PostgreSQL, а также для вычислительно-интенсивных фреймворков ИИ и машинного обучения, таких как Ray и Kubeflow.
Вы можете создавать тома хранилища и управлять ими с помощью стандартных средств Kubernetes. Вам не нужно переключаться между различными порталами или настраивать драйверы CSI самостоятельно. Эта простота упрощает задачи хранения и помогает командам сосредоточиться на выполнении своих приложений.
Хранилище контейнеров Azure работает со службой Azure Kubernetes и автономными кластерами Kubernetes. Так как он использует компоненты с открытым исходным кодом, он поддерживает развертывания в Azure и других облаках, обеспечивая гибкость для гибридных и многооблачных настроек.
Ключевые преимущества
Бесшовное масштабирование модулей pod с сохранением состояния: Хранилище контейнеров Azure обеспечивает быстрое масштабирование путем монтирования постоянных томов с помощью протоколов сетевого блочного хранилища высокой производительности, таких как NVMe-oF или iSCSI. Этот подход обеспечивает быстрые операции подключения и отсоединения, что позволяет динамически масштабировать ресурсы вверх или вниз без риска нарушения работы приложения. Во время инициализации подов или их переключения при сбоях постоянные тома можно быстро переназначить в кластере, повышая устойчивость приложений и поддерживая высокомасштабируемые рабочие нагрузки с сохранением состояния в Kubernetes.
Оптимизированная производительность для рабочих нагрузок с состоянием: Хранилище контейнеров Azure обеспечивает высокую скорость чтения и скорость записи, близкую к скорости записи на локальный диск, с использованием NVMe-oF через протокол TCP. Эта архитектура обеспечивает экономичную производительность для широкого спектра контейнерных рабочих нагрузок, включая нагрузки 1 уровня с интенсивным вводом-выводом, общего назначения, чувствительные к пропускной способности, а также сценарии разработки и тестирования. Он также ускоряет операции подключения и отсоединения постоянного тома, сокращая время отработки отказа pod и повышая устойчивость приложений.
Простая оркестрация томов в Kubernetes: Без труда создавайте классы хранения и постоянные тома, управляйте полным жизненным циклом томов, включая подготовку, расширение, удаление, а также выполнение операций, таких как запись моментальных снимков, используя привычные команды
kubectl. Этот унифицированный подход устраняет необходимость переключения между различными инструментами или интерфейсами, упрощая управление хранилищем в среде Kubernetes.Открытый исходный код и управляемое сообществом: Хранилище контейнеров Azure разрабатывается как проект с открытым исходным кодом. Его можно установить с помощью расширения AKS, как описано в руководстве, или через Helm с помощью репозитория local-csi-driver . Этот открытый подход позволяет пользователям участвовать, настраивать и интегрировать их с существующими рабочими процессами и шаблонами Kubernetes.
Поддерживаемые типы хранилища
Хранилище контейнеров Azure обеспечивает Kubernetes-нативный уровень оркестрации и управления для постоянных хранилищ на кластерах Kubernetes, работающих на Linux. Он использует существующие предложения службы хранилища Azure в качестве базового хранилища данных. В настоящее время хранилище контейнеров Azure версии 2 поддерживает только локальные диски NVMe для резервного хранилища.
| Тип хранилища | Description | Рабочие нагрузки | Предложения | Модель подготовки |
|---|---|---|---|---|
| Локальный диск NVMe | Использует локальные диски NVMe на узлах AKS | Лучше всего подходит для приложений, требующих низкой задержки и не допускающих устойчивости данных или встроенной репликации (например, PostgreSQL). | Доступно при выборе размеров виртуальных машин Azure, таких как оптимизированные для хранилища размеры виртуальных машин и размеры ускоренных виртуальных машин GPU. | Развернуто в кластере Kubernetes. Автоматически обнаруживает и получает локальные диски NVMe на узлах кластера для развертывания томов. |
Поддержка функций для разных типов хранилища
В следующей таблице перечислены ключевые функции хранилища контейнеров Azure и указываются, поддерживаются ли они на локальных дисках NVMe.
| Компонент | Локальный NVMe |
|---|---|
| Временные тома | Поддерживается |
| перенос постоянных томов; | Поддерживается1 |
| Расширение и изменение размера ПВ | Поддерживается |
| Моментальные снимки | Не поддерживается |
| Репликация | Не поддерживается |
1 По умолчанию хранилище контейнеров Azure использует универсальные временные тома для локальных дисков NVMe, то есть данные не сохраняются после удаления pod. Чтобы включить постоянные тома, которые не связаны с жизненным циклом пода, добавьте соответствующую аннотацию в запрос на постоянный том. Дополнительные сведения см. в статье "Создание постоянных томов с локальными дисками NVMe".
Доступность в регионах
Хранилище контейнеров Azure доступно только для подмножества регионов Azure:
- Северная часть ЮАР (Африка)
- "Восточная Австралия" (Азиатско-Тихоокеанский регион);
- (Азиатско-Тихоокеанский регион) Восточная Азия
- (Азиатско-Тихоокеанский регион) Восточная Япония
- (Азиатско-Тихоокеанский регион) Республика Корея, центральный регион
- Юго-Восточная Азия (Азиатско-Тихоокеанский регион)
- "Центральная Индия" (Азиатско-Тихоокеанский регион);
- (Европа) Центральная Франция
- Центрально-Западная Германия (Европа)
- "Северная Европа" (Европа);
- "Западная Европа" (Европа).
- (Европа) Южная часть Соединенного Королевства
- (Европа) Центральная Швеция;
- Северная Швейцария (Европа)
- Северная часть ОАЭ (Ближний Восток)
- (Северная Америка) Восточная часть США;
- (Северная Америка) Восточная часть США 2;
- (Северная Америка) Западная часть США
- (Северная Америка) Западная часть США 2;
- (Северная Америка) Западная часть США 3;
- (Северная Америка) Центральная часть США;
- (Северная Америка) Северная часть США
- (Северная Америка) Центрально-южная часть США;
- (Северная Америка) Западная часть США
- (Северная Америка) Центральная Канада;
- (Северная Америка) Восточная Канада
- Южная Бразилия (Южная Америка)
Рекомендации по выбору основной версии
Хранилище контейнеров Azure предлагает две основные версии: версии 1 и 2. Выберите соответствующую версию на основе базового параметра хранилища.
- Локальные диски NVMe: выберите службу хранилища контейнеров Azure версии 2.
- Диски Azure. Выбор хранилища контейнеров Azure версии 1. Служба хранилища контейнеров Azure версии 2 пока не поддерживает диски Azure.
- Azure Elastic SAN: выберите службу хранилища контейнеров Azure версии 1. Служба хранилища контейнеров Azure версии 2 еще не поддерживает Azure Elastic SAN.
Глоссарий
Чтобы лучше перейти к понятиям хранилища контейнеров Azure и Kubernetes, ознакомьтесь с этими основными терминами:
Контейнеризация
Упаковка кода приложения только с операционной системой и необходимыми зависимостями для создания одного исполняемого файла.
Kubernetes
Kubernetes — это система с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнерными приложениями.
Служба Azure Kubernetes (AKS)
Служба Azure Kubernetes — это размещенная служба Kubernetes, которая упрощает развертывание управляемого кластера Kubernetes в Azure путем разгрузки операционных расходов в Azure. Azure обрабатывает критически важные задачи, такие как мониторинг работоспособности и обслуживание.
Cluster
Кластер Kubernetes — это набор вычислительных узлов (виртуальных машин), которые запускают контейнерные приложения. Каждый узел управляется плоскостем управления и содержит службы, необходимые для запуска модулей pod.
Pod
Модуль pod — это группа одного или нескольких контейнеров с общими ресурсами хранилища и сети, а также спецификация запуска контейнеров. Модуль pod — это наименьший блок развертывания в кластере Kubernetes.
Storage Class (Класс хранения)
Класс хранилища Kubernetes определяет, как единица хранилища динамически создается с постоянным томом. Дополнительные сведения см. в разделе "Классы хранилища Kubernetes".
Объем
Том Kubernetes — это каталог, содержащий данные, доступные контейнерам в заданном модуле pod. Тома могут быть постоянными или временными. Тома подготавливаются тонко в пуле носителей и совместно используют характеристики производительности (операции ввода-вывода в секунду, пропускную способность и емкость) пула носителей.
Постоянный том
Постоянные тома похожи на диски на виртуальной машине. Они представляют необработанное устройство блока, которое можно использовать для подключения любой файловой системы. Разработчики приложений создают постоянные тома вместе с определениями приложения или pod, а тома часто привязаны к жизненному циклу приложения с отслеживанием состояния. Дополнительные сведения см. в разделе "Постоянные тома".
Утверждение постоянного тома (ПВХ)
Утверждение постоянного тома используется для автоматической подготовки хранилища на основе класса хранилища.