Истории успеха наших клиентов — лучшие проекты
Вход/ Регистрация
На главную
25eb9e0a-a5a8-472a-ace7-940b8bd2adf0
Облачные сервисы

DBaaS Operator

TWC DBaaS Operator — это дополнение для Kubernetes, которое позволяет создавать и управлять облачными базами данных напрямую из кластера.

Поддерживаемые базы данных:

Установка

Для установки дополнения перейдите в раздел «Дополнения» в панели управления кластером и выберите «TWC DBaaS Operator».

Scr 20250806 Njjd

В открывшемся окне нажмите кнопку «Установить» и дождитесь завершения установки.

Scr 20250806 Njnp

После завершения установки, убедитесь, что все работает корректно. Для этого выполните команду:

    

В выводе должен быть под со статусом Running:

    

Оператор создает три ресурса CustomResourceDefinition (CRD):

  • instances.dbaas.timeweb.cloud — управление инстансами DBaaS.
  • databases.dbaas.timeweb.cloud — управление базами данных внутри инстансов.
  • users.dbaas.timeweb.cloud — управление пользователями баз данных.

Использование

Работу с DBaaS через оператор можно разделить на три шага:

  1. Создание инстанса базы данных.
  2. Создание базы данных внутри инстанса.
  3. Создание пользователей.

Создание инстанса

Сперва необходимо создать инстанс — это сама облачная база данных, с заданным типом, версией, конфигурацией и параметрами резервного копирования.

Пример манифеста:

    

Параметры в блоке config уникальны для каждого типа базы данных. Список доступных параметров можно найти в отдельных статьях:

Подходящий preset_id можно получить при помощи запроса к API:

    

Для удобства можно использовать команду с фильтрацией и форматированием:

    

ID пресета будет указан в первом столбце. При необходимости измените type=="mysql" на нужный тип базы данных.

Создание базы данных

После создания инстанса можно описать базы данных, которые будут в нем размещены.

Пример манифеста:

    

Поле dbaas_instance должно указывать на соответствующий инстанс.

Создание пользователя

После того как базы данных созданы, можно добавить пользователей и выдать им права доступа. Пользователь привязывается к конкретному инстансу и может иметь разные права для разных баз внутри него.

Пример манифеста:

    

Пароль для пользователя хранится в Kubernetes Secret в поле password, закодированном в base64. Создать его можно так:

echo -n 'пароль' | base64

В разделе permissions указываются права пользователя на конкретные базы данных. Права задаются в виде списка SQL-грантов для каждой базы. Список доступных привилегий можно найти в статьях:

Была ли статья полезна?
Ваша оценка очень важна