Рекомендации для построения отказоустойчивых конфигураций#
Отказоустойчивые конфигурации могут быть реализованы несколькими способами, начиная с самых простых и заканчивая более сложными и дорогими. Выбор конкретного способа зависит от уровня критичности вашей системы.
В данном разделе приведены рекомендации для построения систем, которые допускают остановку своей работы на несколько часов или суток. В системах подобного класса основным средством защиты от сбоев является применение бэкапов и репликации данных, а также холодного резервирования сервисов или компонент системы.
Далее будут описаны рекомендации по каждому компоненту, входящих в типовую конфигурацию решения на базе CedrusData. Материал носит рекомендательный характер.
Общие соображения#
При выборе подхода к бекапированию следует учитывать следующие аспекты:
Бекап осуществляется на внешний отказоустойчивый носитель (или в облако). При этом предыдущая версия бекапа не должна удаляться сразу, количество хранимых резервных копий должно быть как минимум 2-3. Мы рекомендуем хранить порядка 10 для бекапов данных (для БД каталога данных, рекомендуется делать полный бекап) и порядка 100 бекапов конфигураций
Бекап данных снимается регулярно (как правило, 1 раз в сутки)
Бекап конфигурации/окружения снимается после изменения конфигурации/окружения (и до изменения - в случае если такой бекап отсутствует)
Возможен вариант, когда вся конфигурация (на всех узлах) хранится на отказоустойчивом носителе Данный подход не требует настройки процесса снятия бекапа, но рекомендуется настроить хранение его резервных копий при изменениях
Если бекап снимается с БД, обеспечьте возможность выполнения online-backup, чтобы не останавливать работу БД на время снятия бекапа
В типовой минимальной конфигурации, как правило, присутствуют следующие компоненты:
CedrusData Coordinator(s)
CedrusData Worker(s)
CedrusData Coordinator#
Компонент CedrusData Coordinator является единой точкой отказа, поэтому рекомендуется выполнять:
Бекап конфигурации (обычно каталог
/etc/trino/
или./etc
в каталоге установки, при старте задаётся опцией--conf-dir
).Бекап кастомных plugins (в случае если у вас имеются дополнительные plugins, обычно в
/usr/lib/cedrusdata-server-458-2/plugin
).Бекап сервиса. Рекомендуется иметь холодную копию сервиса с актуальной конфигурацией на резервном узле для возможности оперативного восстановления работоспособности.
CedrusData Coordinator не хранит данные, поэтому дополнительной конфигурации не требуется.
CedrusData Worker#
Компонент CedrusData Worker обычно работает в нескольких экземплярах (каждый на отдельном узле), поэтому не является единой точкой отказа. Рекомендуется придерживаться следующих правил:
Бекап конфигурации (если не выполнено для Coordinator, см. выше).
Бекап кастомных plugins (если не выполнено для Coordinator, см. выше)
Бекап сервиса: если вы не хотите потерять в общей производительности после выхода из строя одного из узлов, рекомендуется иметь возможность запустить новый узел CedrusData Worker на резервном оборудовании.
CedrusData Worker не хранит данные (только кеш), поэтому дополнительной конфигурации не требуется.