Container Storage Interface – безопасный и быстрый способ подружить контейнеры и хранилищаБазы данных и системы хранения
Руководитель отдела разработки плагинов для систем хранения данных Dell EMC и их интеграции в Kubernetes, OpenStack, VMware. До этого принимал активное участие в дизайне, разработке и тестировании OpenStack Kolla, Oracle OpenStack, Oracle Container Services. Большой инженерный опыт в телекоммуникационных, поисковых системах, системах хранения и обработки информации.
Хранение данных в кластере Kubernetes никогда не было простой задачей. Первоначально данные держали вне кластера на отдельностоящих серверах баз данных или в облачных объектных хранилищах типа S3. Но вскоре появилась возможность использовать контейнеры аналогично полноценным серверам, подключая к контейнерам блочные устройства. Код такого подключения находился в дереве проекта Kubernetes, требовал много усилий не только по написанию драйвера, но и согласия апстримных ревьюеров. Также такой драйвер мог легко порушить весь кластер, если что-то шло не так.
Команда Kubernetes реализовала очень удобный интерфейс для быстрой разработки драйверов подключения хранилищ, позволяющий избежать вышеперечисленных проблем. В этом докладе рассматривается архитектура и реализация типичного драйвера.