Что такое группы консистентности хранилища?
Может кто-нибудь объяснить мне, что такое "группы консистентности" в контексте решений для хранения? Как я могу использовать их в реальном мире?
Кажется, у каждого поставщика есть своя собственная запатентованная терминология для функций хранения, но вот что я мог бы собрать до сих пор:
Группа консистентности - это (я думаю) группа томов хранения, которые обещают быть всегда согласованными, то есть ни один том никогда не будет в такой момент времени, как его коллеги.
Теперь то, что я не получаю и не могу найти где-либо еще:
1 - Соответствует ли группа консистентности между всеми томами одной и той же группы или только между каждым томом и его соответствующим зеркалом где-нибудь?
2 - Если я управляю группой консистентности, означает ли это, что я управляю зеркалом этой группы в другой, удаленной, согласованной группе?
3 - Если внутреннее хранилище внезапно отключится, будут ли мои тома из группы консистентности по-прежнему согласованы? Достаточно ли быть в группе консистентности, чтобы гарантировать, что тома всегда согласованы, даже в случае сбоев, таких как отключение питания?
4 - Какой минимальный набор функций необходим для того, чтобы называть группу консистентности?
Спасибо
1 ответ
Согласованность хранилища - это то, о чем вы почти всегда слышали в контексте хранилища SAN, то есть SCSI LUNs/ блочное хранилище.
У вас есть большая часть ответа на ваш вопрос. Группы согласованности имеют смысл, когда вы реплицируете набор дисков в другой набор. Что определяет последовательность, так это то, что в момент, когда происходит прерывание репликации, нет никаких шансов, что некоторые диски будут дальше, чем другие.
Например: база данных записывает в два реплицированных LUN - один - журналы, другой - данные. Вы отключаете репликацию и пытаетесь вызвать базу данных на целевых LUN. Если у вас нет согласованности, LUN базы данных, скорее всего, не будет синхронизирован с LUN журнала, и ваша база данных не может быть восстановлена.
Группа консистентности, содержащая оба LUN, гарантирует, что любые записи, которые были зафиксированы на диске после последней полученной записи на самый медленный диск в группе, будут отброшены, что приведет к набору LUN, которые имеют "согласованность при сбое". Это означает, что они были бы в состоянии, если бы локальные диски были в случае сбоя сервера.
Если вы не работаете с какой-либо репликацией, согласованность имеет другое значение и обычно не затрагивает группы. Если у вас есть кэш записи, диск может стать несогласованным, если кэш потерян. Вот почему все серьезные хранилища содержат некоторый метод защиты записей, которые были подтверждены хранилищем, но еще не зафиксированы в реальном постоянном хранилище. Это может быть ИБП, который может поддерживать работу дисков достаточно долго, чтобы отключить кэш-память во время сбоя питания, это может быть кэш-память записи NVRAM, которая может противостоять потере мощности, или это может быть простая батарея в энергозависимой ОЗУ, которая будет работать в течение несколько дней.