Резервное копирование и восстановление Cassandra на определенный момент времени

Я прочитал о резервном копировании и восстановлении Cassandra здесь, и у меня есть несколько вопросов:

  1. Достаточно ли собственных команд CLI Cassandra? Я вижу много людей, пишущих сценарии и создающих собственные решения.
  2. Какие еще инструменты вы бы порекомендовали для резервного копирования и восстановления Cassandra? Я ищу что-то, что может помочь мне управлять резервными образами (например, с определенным моментом времени)
  3. Нужно ли мне значительно больше инвестировать в хранилище, если я решу сделать резервную копию своих таблиц Cassandra?

Любые идеи будут оценены.

2 ответа

Пожалуйста, постарайтесь ограничить ваши вопросы одним реальным вопросом.

Достаточно ли собственных команд CLI Cassandra?

Я предполагаю, что вы имеете в виду nodetool snapshotтак что по большей части "да". Кроме того, многие пользователи также выбирают инкрементное резервное копирование. Сочетание использования моментальных снимков и инкрементных резервных копий (из связанного документа) "обеспечивает надежный, современный механизм резервного копирования".

Я вижу много людей, пишущих сценарии и создающих собственные решения.

У меня есть резервный скрипт, который запускается на моих узлах по ночам. Для этого есть две причины.

  1. Я не хочу делать снимок для каждого пространства клавиш каждую неделю вручную, поэтому у меня есть скрипт, который делает это.

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

Какие еще инструменты вы бы порекомендовали для резервного копирования и восстановления Cassandra?

DataStax OpsCenter позволяет планировать резервное копирование, но я считаю, что это только допустимый вариант в редакции Enterprise. Вы также можете посмотреть на инструмент резервного копирования / восстановления Netflix Cassandra под названием Priam. Есть также компания под названием Talena, которая утверждает, что предоставляет обширное решение для резервного копирования корпоративного уровня для Cassandra (я не знаю никого, кто их использует, но они недавно отправили мне маркетинговое электронное письмо, поэтому я решил упомянуть об этом).

Нужно ли мне значительно больше инвестировать в хранилище, если я решу сделать резервную копию своих таблиц Cassandra?

Инкрементные резервные копии и снимки могут занимать много места, если вы не остаетесь поверх них (удаляя и / или архивируя их). Я бы попробовал их оба и следил за тем, как вы используете диск. Если в ваших бизнес-требованиях есть заявление об условиях обслуживания (насколько далеко вам нужно было бы вернуться к восстановлению), вы должны быть в состоянии выяснить, сколько резервных копий на несколько дней имеет смысл для вас хранить. Это должно сказать вам, нужно ли вам больше диска для выполнения этих обязательств.

Что касается резервного копирования и восстановления Cassandra на определенный момент времени, есть несколько аспектов, которые необходимо учитывать в зависимости от ваших потребностей и ограничений:

  1. Занимаемая площадь
    • Все решения, доступные сегодня, создадут большую нагрузку на вашу инфраструктуру, поскольку они потребуют от вас хранить в 3 раза больше данных, которые вам абсолютно необходимы, при условии, что у вас коэффициент репликации 3.
    • Я согласен с @Aaron, вам нужно самим управлять снимками, потому что инструменты не сделают "сборку мусора" за вас:)
  2. Отказоустойчивость
    • Все решения, opscenter и другие, обеспечивают ограниченную отказоустойчивость. Вы потеряете данные, если узел Cassandra выйдет из строя во время резервного копирования.
    • Эта ситуация раздражает, когда у вас есть инкрементные резервные копии и сбой узла происходит во время инкрементной
  3. Время восстановления / скорость
    • Обратите внимание, что вам может потребоваться пройти процесс "ремонта" во время восстановления. Это необходимо, потому что моментальные снимки уровня узла, которые предоставляют нативные инструменты, не согласованы по всему кластеру.
    • В зависимости от ваших потребностей RTO/RPO, это может быть недостаточно. Я предлагаю вам протестировать время резервного копирования и восстановления для ваших операций, прежде чем вы найдете какое-либо решение.

Если вы ищете решение корпоративного уровня для резервного копирования и восстановления Cassandra, вы можете попробовать решение, предлагаемое " Datos IO ". Это сокращает объем занимаемой памяти в 3 раза, а также обеспечивает отказоустойчивость и согласованность кластеров.

Другие вопросы по тегам